Bug 1386412

Summary: reactivate sys/sdt.h integration
Product: [Fedora] Fedora Reporter: Frank Ch. Eigler <fche>
Component: lttng-ustAssignee: Yannick Brosseau <yannick.brosseau>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 32CC: ktdreyer, mjeanson, omajid, ramkrsna, suchakra, wcohen, yannick.brosseau
Target Milestone: ---Keywords: Reopened
Target Release: ---Flags: fche: needinfo? (yannick.brosseau)
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of:
: 1584865 (view as bug list) Environment:
Last Closed: 2020-02-11 20:53:09 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Frank Ch. Eigler 2016-10-18 21:12:39 UTC
Back in 2015, lttng-ust's fedora .spec file stopped building with systemtap's sys/sdt.h enablement.  If there was no technical problem with it, please consider turning that back on.

Comment 1 Fedora End Of Life 2017-02-28 10:28:08 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 26 development cycle.
Changing version to '26'.

Comment 2 Fedora End Of Life 2018-05-03 08:24:40 UTC
This message is a reminder that Fedora 26 is nearing its end of life.
Approximately 4 (four) weeks from now Fedora will stop maintaining
and issuing updates for Fedora 26. It is Fedora's policy to close all
bug reports from releases that are no longer maintained. At that time
this bug will be closed as EOL if it remains open with a Fedora  'version'
of '26'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version'
to a later Fedora version.

Thank you for reporting this issue and we are sorry that we were not
able to fix it before Fedora 26 is end of life. If you would still like
to see this bug fixed and are able to reproduce it against a later version
of Fedora, you are encouraged  change the 'version' to a later Fedora
version prior this bug is closed as described in the policy above.

Although we aim to fix as many bugs as possible during every release's
lifetime, sometimes those efforts are overtaken by events. Often a
more recent Fedora release includes newer upstream software that fixes
bugs or makes them obsolete.

Comment 3 Fedora End Of Life 2018-05-29 11:37:32 UTC
Fedora 26 changed to end-of-life (EOL) status on 2018-05-29. Fedora 26
is no longer maintained, which means that it will not receive any
further security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
bug.

Thank you for reporting this bug and we are sorry it could not be fixed.

Comment 4 Frank Ch. Eigler 2018-05-29 13:04:51 UTC
lttng-ust-2.10.0 works fine on x86-64 f27 with --with-sdt on %configure.  Please advise if you know of some reason not to turn this on.

Comment 5 Michael Jeanson 2018-05-29 17:49:45 UTC
Hi,

This feature was turned-off on a recommendation from the upstream developer. It's rarely used and adds a small performance hit to other more common use-cases.

I'm open to re-enabling it if some users have a need for it.

Regards,

Michael

Comment 6 Frank Ch. Eigler 2018-05-29 19:24:32 UTC
Can you advise how the performance hit was or could be measured?  sys/sdt.h stuff costs only a single NOP in the lightweight use cases.  A growing number of tools like perf, gdb, and a bunch of bpf-based ones, can be consumers of this data, so if the cost is negligible, even small benefits could justify turning this back on.

Comment 7 Jan Kurik 2018-08-14 10:21:35 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 29 development cycle.
Changing version to '29'.

Comment 8 Ben Cotton 2019-10-31 20:51:48 UTC
This message is a reminder that Fedora 29 is nearing its end of life.
Fedora will stop maintaining and issuing updates for Fedora 29 on 2019-11-26.
It is Fedora's policy to close all bug reports from releases that are no longer
maintained. At that time this bug will be closed as EOL if it remains open with a
Fedora 'version' of '29'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version.

Thank you for reporting this issue and we are sorry that we were not 
able to fix it before Fedora 29 is end of life. If you would still like 
to see this bug fixed and are able to reproduce it against a later version 
of Fedora, you are encouraged  change the 'version' to a later Fedora 
version prior this bug is closed as described in the policy above.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events. Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

Comment 9 Frank Ch. Eigler 2019-10-31 22:01:19 UTC
In the absence of data to justify disabling, and the presence of systemtap users, please let's turn this back on.  All that's needed in the .spec file is

BuildRequires: systemtap-sdt-devel
and 
%configure .... --with-sdt

Comment 10 Frank Ch. Eigler 2020-01-22 23:51:48 UTC
Michael et al., I'm hearing user interest w.r.t. packages that use lttng-ust with systemtap.  Is there anything holding back turning it back on with that configure option from comment #9?

Comment 11 Michael Jeanson 2020-01-23 21:00:14 UTC
I have just pushed lttng-ust-2.11.0-3.fc32 to rawhide with SDT support enabled.

Cheers,

Michael

Comment 12 Frank Ch. Eigler 2020-01-23 21:13:51 UTC
Thank you very much!

Comment 13 Ben Cotton 2020-02-11 15:40:36 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 32 development cycle.
Changing version to 32.

Comment 14 Omair Majid 2020-02-24 19:33:33 UTC
I think this fix is incomplete. Right now, in rawhide, lttng-ust has an includes on sys/sdt.h:

/usr/include/lttng/tracepoint.h: #include <sys/sdt.h>

But there's no `Requires: systemtap-sdt-devel` in `lttng-ust-devel`. So if I build a custom package that BuildRequires's lttng-ust-devel (and I dont know/care about systemtap), that build fails because I don't have lttng-ust-devel's transitive dependencies. This is what I see in a Fedora 33 VM, for example:

In file included from /home/omajid/rpmbuild/BUILD/dotnet-v3.1.101-SDK/src/coreclr.5558d18aafc84ecac3630ca6a31f52699cde0b66/bin/obj/Linux.x64.Release/CMakeFiles/CMakeTmp/src.cxx:2:
/usr/include/lttng/tracepoint.h:39:10: fatal error: 'sys/sdt.h' file not found
#include <sys/sdt.h>
         ^~~~~~~~~~~

I can work around this problem for now, but it really seems like a bug in lttn-ust.

The fix should be as simple as adding this Requires line to lttng-ust-devel subpackage:

Requires:       systemtap-sdt-devel

Comment 15 Michael Jeanson 2020-03-06 20:29:53 UTC
(In reply to Omair Majid from comment #14)
> I think this fix is incomplete. Right now, in rawhide, lttng-ust has an
> includes on sys/sdt.h:
> 
> /usr/include/lttng/tracepoint.h: #include <sys/sdt.h>
> 
> But there's no `Requires: systemtap-sdt-devel` in `lttng-ust-devel`. So if I
> build a custom package that BuildRequires's lttng-ust-devel (and I dont
> know/care about systemtap), that build fails because I don't have
> lttng-ust-devel's transitive dependencies. This is what I see in a Fedora 33
> VM, for example:
> 
> In file included from
> /home/omajid/rpmbuild/BUILD/dotnet-v3.1.101-SDK/src/coreclr.
> 5558d18aafc84ecac3630ca6a31f52699cde0b66/bin/obj/Linux.x64.Release/
> CMakeFiles/CMakeTmp/src.cxx:2:
> /usr/include/lttng/tracepoint.h:39:10: fatal error: 'sys/sdt.h' file not
> found
> #include <sys/sdt.h>
>          ^~~~~~~~~~~
> 
> I can work around this problem for now, but it really seems like a bug in
> lttn-ust.
> 
> The fix should be as simple as adding this Requires line to lttng-ust-devel
> subpackage:
> 
> Requires:       systemtap-sdt-devel

I uploaded lttng-ust-2.11.1-1.fc33  with the fixed requires.