[Bug 1908307] Re: Please ship a glibc build for profiling in libc6-prof

Ɓukasz Zemczak 1908307 at bugs.launchpad.net
Wed Dec 16 20:56:09 UTC 2020


Hello Balint, or anyone else affected,

Accepted glibc into focal-proposed. The package will build now and be
available at https://launchpad.net/ubuntu/+source/glibc/2.31-0ubuntu9.2
in a few hours, and then in the -proposed repository.

Please help us by testing this new package.  See
https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how
to enable and use -proposed.  Your feedback will aid us getting this
update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug,
mentioning the version of the package you tested, what testing has been
performed on the package and change the tag from verification-needed-
focal to verification-done-focal. If it does not fix the bug for you,
please add a comment stating that, and change the tag to verification-
failed-focal. In either case, without details of your testing we will
not be able to proceed.

Further information regarding the verification process can be found at
https://wiki.ubuntu.com/QATeam/PerformingSRUVerification .  Thank you in
advance for helping!

N.B. The updated package will be released to -updates after the bug(s)
fixed by this package have been verified and the package has been in
-proposed for a minimum of 7 days.

** Changed in: glibc (Ubuntu Focal)
       Status: New => Fix Committed

** Tags added: verification-needed-focal

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to glibc in Ubuntu.
https://bugs.launchpad.net/bugs/1908307

Title:
  Please ship a glibc build for profiling in libc6-prof

Status in glibc package in Ubuntu:
  Fix Committed
Status in glibc source package in Focal:
  Fix Committed
Status in glibc source package in Groovy:
  Fix Committed

Bug description:
  [Impact]

  * The C library shipped in libc6 is built with GCC's default behavior
  of omitting the frame pointer that makes tracing and profiling harder.
  Building GLibc with -fno-omit-frame-pointer and shipping it in an
  optional libc6-prof binary package would help tracing and profiling
  efforts.

  [Test Case]

  * Install libc6-prof and start tracing in one shell:

    sudo bpftrace -e 't:syscalls:sys_enter_clock_nanosleep /comm == "sleep"/ {printf("%s\n", ustack);}'
    Attaching 1 probe...

          clock_nanosleep+94
          __nanosleep+23
          0x5652a2e6b827

  * Run the traced program in a different shell
   env LD_LIBRARY_PATH=/lib/libc6-prof/x86_64-linux-gnu sleep 1

  
  * Repeat it without using the libc6-prof library:


   ubuntu at ff-glibc:~$ sleep 1

   ubuntu at ff-glibc:~$ sudo bpftrace -e 't:syscalls:sys_enter_clock_nanosleep /comm == "sleep"/ {printf("%s\n", ustack); }'
   Attaching 1 probe...

          clock_nanosleep+84

  [ Where problems could occur ]

  * Glibc does not build for some architectures with the additional -fno-omit-frame-pointer option which is tracked in LP: #1898049.
  * The -fno-omit-frame-pointer option may sneak in to the regular build, this is convered in the test case.
  * Libc6-prof may be slower thanks to the -fno-omit-frame-pointer option, this is expected and this is the reason for shipping it in a separate package.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/glibc/+bug/1908307/+subscriptions



More information about the foundations-bugs mailing list