Activity log for bug #669641

Date Who What changed Old value New value Message
2010-11-01 20:34:38 Peter Petrakis bug added bug
2010-11-01 20:34:38 Peter Petrakis attachment added failing strace output https://bugs.launchpad.net/bugs/669641/+attachment/1719924/+files/tapprobe.out
2010-11-01 20:36:31 Peter Petrakis attachment added build id fixup script https://bugs.launchpad.net/ubuntu/+source/systemtap/+bug/669641/+attachment/1719925/+files/fixup-buildid.sh
2010-11-01 21:01:43 Jeremy Foshee bug task added linux (Ubuntu)
2010-11-01 21:01:57 Jeremy Foshee linux (Ubuntu): status New Triaged
2010-11-01 21:02:58 Jeremy Foshee tags kernel-core
2010-11-02 19:39:22 Frank Ch. Eigler bug added subscriber Frank Ch. Eigler
2010-11-02 20:24:28 Ritesh Raj Sarraf bug watch added http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=555549
2011-03-01 12:31:54 Tais P. Hansen bug task added linux-2.6 (Debian)
2011-03-01 12:46:30 Tais P. Hansen bug watch added http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=555549
2011-03-01 12:47:01 Tais P. Hansen bug added subscriber Tais Plougmann Hansen
2011-05-03 12:15:24 Taylor Braun-Jones bug added subscriber Taylor Braun-Jones
2011-08-11 12:24:24 Bug Watch Updater linux-2.6 (Debian): status Unknown Fix Released
2011-09-27 13:30:05 Ricardo Salveti bug task added linaro-ubuntu
2011-09-27 13:30:22 Ricardo Salveti linaro-ubuntu: status New In Progress
2011-09-27 13:30:27 Ricardo Salveti linaro-ubuntu: importance Undecided High
2011-09-27 13:30:37 Ricardo Salveti linaro-ubuntu: assignee John Rigby (jcrigby)
2011-09-27 13:30:41 Ricardo Salveti linaro-ubuntu: milestone 11.09
2011-09-28 04:15:35 Ricardo Salveti linaro-ubuntu: status In Progress Fix Released
2012-03-28 13:35:21 Rex Tsai bug added subscriber Rex Tsai
2012-05-11 19:29:19 Chris J Arges linux (Ubuntu): assignee Chris J Arges (christopherarges)
2012-05-11 19:38:17 Tim Gardner linux (Ubuntu): assignee Chris J Arges (christopherarges) Tim Gardner (timg-tpi)
2012-05-24 20:39:04 Chris J Arges linux (Ubuntu): assignee Tim Gardner (timg-tpi) Chris J Arges (christopherarges)
2012-05-24 20:58:12 Joseph Salisbury linux (Ubuntu): importance Undecided Medium
2012-05-24 22:11:46 Chris J Arges attachment added 0001-UBUNTU-PACKAGING-add-.gnu_debuglink-sections-to-.ko-.patch https://bugs.launchpad.net/ubuntu/+source/systemtap/+bug/669641/+attachment/3161846/+files/0001-UBUNTU-PACKAGING-add-.gnu_debuglink-sections-to-.ko-.patch
2012-05-25 00:15:43 Ubuntu Foundations Team Bug Bot tags kernel-core kernel-core patch
2012-05-25 00:15:52 Ubuntu Foundations Team Bug Bot bug added subscriber Ubuntu Review Team
2012-06-21 18:42:01 Peter Petrakis attachment added 0001-UBUNTU-PACKAGING-v2-add-.gnu_debuglink-sections-to-..patch https://bugs.launchpad.net/ubuntu/+source/systemtap/+bug/669641/+attachment/3199263/+files/0001-UBUNTU-PACKAGING-v2-add-.gnu_debuglink-sections-to-..patch
2012-06-21 18:43:01 Peter Petrakis attachment added test-gnu_debuglink.sh https://bugs.launchpad.net/ubuntu/+source/systemtap/+bug/669641/+attachment/3199264/+files/test-gnu_debuglink.sh
2012-06-22 21:01:24 Chris J Arges bug task deleted systemtap (Ubuntu)
2012-06-22 21:01:38 Chris J Arges nominated for series Ubuntu Lucid
2012-06-22 21:01:38 Chris J Arges bug task added linux (Ubuntu Lucid)
2012-06-22 21:01:38 Chris J Arges nominated for series Ubuntu Precise
2012-06-22 21:01:38 Chris J Arges bug task added linux (Ubuntu Precise)
2012-06-22 21:01:38 Chris J Arges nominated for series Ubuntu Quantal
2012-06-22 21:01:38 Chris J Arges bug task added linux (Ubuntu Quantal)
2012-06-22 21:02:34 Chris J Arges linux (Ubuntu Precise): assignee Chris J Arges (christopherarges)
2012-06-22 21:02:38 Chris J Arges linux (Ubuntu Lucid): assignee Chris J Arges (christopherarges)
2012-06-22 21:02:40 Chris J Arges linux (Ubuntu Precise): status New In Progress
2012-06-22 21:02:43 Chris J Arges linux (Ubuntu Quantal): status Triaged In Progress
2012-06-22 21:02:48 Chris J Arges linux (Ubuntu Lucid): status New Confirmed
2012-06-22 21:02:50 Chris J Arges linux (Ubuntu Precise): importance Undecided Medium
2012-06-22 21:02:58 Chris J Arges linux (Ubuntu Lucid): importance Undecided Low
2012-06-22 21:03:02 Chris J Arges linux (Ubuntu Lucid): importance Low Medium
2012-06-22 21:03:06 Chris J Arges linux (Ubuntu Precise): milestone ubuntu-12.04.1
2012-06-22 21:25:07 Chris J Arges description Binary package hint: systemtap Even if the proper debug symbols are installed: # stap -l 'kernel.function("acpi_*")' | sort will succeed and this will fail. # stap -l 'module("ohci1394").function("*")' | sort Now there's no shortage of blogs and wikis on how to work around this but no one has seemingly ever investigated the root cause. If one were to run this through strace you would find the following. open("/usr/lib/debug/.build-id/3b/6eb5a0f22ba2bc92c3c3f1fcb14fe7f31f3807.debug", O_RDONLY) = -1 ENOENT (No such file or directory) open("/lib/modules/2.6.32-25-generic/kernel/drivers/ieee1394/ohci1394.ko.debug", O_RDONLY) = -1 ENOENT (No such file or directory) open("/lib/modules/2.6.32-25-generic/kernel/drivers/ieee1394/.debug/ohci1394.ko.debug", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/lib/debug/lib/modules/2.6.32-25-generic/kernel/drivers/ieee1394/ohci1394.ko.debug", O_RDONLY) = -1 ENOENT (No such file or directory) open("/lib/modules/2.6.32-25-generic/kernel/drivers/ieee1394/build/ohci1394.ko.debug", O_RDONLY) = -1 ENOENT (No such file or directory) Note that the path is correct, it's the name of the KO that stap is expecting that is wrong, Kernel debug symbols provided by Ubuntu are unstripped yet maintain the .ko extension, systemtap (actually libelf/elfutils) is expecting the filename to be module.ko.debug. After discussing this on #systemtap on Freenode, the following script was proposed to generate a symlink tree, by build id, in /usr/lib/debug, with the proper extension. This completely solves the issue, and is also of benefit to things like gdb and oprofile. #!/bin/sh for file in `find /usr/lib/debug -name '*.ko' -print` do buildid=`eu-readelf -n $file| grep Build.ID: | awk '{print $3}'` dir=`echo $buildid | cut -c1-2` fn=`echo $buildid | cut -c3-` mkdir -p /usr/lib/debug/.build-id/$dir ln -s $file /usr/lib/debug/.build-id/$dir/$fn ln -s $file /usr/lib/debug/.build-id/$dir/${fn}.debug done If we could integrate this into the ddeb postinstall script, the problem would be solved. == Precise SRU Justification == Impact: When using systemtap with Ubuntu kernels, the proper debug modules cannot be automatically discovered. == Fix == This fix allows for the build system to insert the .gnu_debuglink sections in the .ko files pointing to the full unstripped .ko in /usr/lib/debug/.. in the dbgsym ddebs. In addition there are checks to ensure the debug symbol actually exists before creating the .gnu_debuglink section. == Testcase == 1) Install systemtap. 2) Run "stap -l 'module("serio_raw").function("*")'" 3) This should show list all the probe points for that module. -- Binary package hint: systemtap Even if the proper debug symbols are installed: # stap -l 'kernel.function("acpi_*")' | sort will succeed and this will fail. # stap -l 'module("ohci1394").function("*")' | sort Now there's no shortage of blogs and wikis on how to work around this but no one has seemingly ever investigated the root cause. If one were to run this through strace you would find the following. open("/usr/lib/debug/.build-id/3b/6eb5a0f22ba2bc92c3c3f1fcb14fe7f31f3807.debug", O_RDONLY) = -1 ENOENT (No such file or directory) open("/lib/modules/2.6.32-25-generic/kernel/drivers/ieee1394/ohci1394.ko.debug", O_RDONLY) = -1 ENOENT (No such file or directory) open("/lib/modules/2.6.32-25-generic/kernel/drivers/ieee1394/.debug/ohci1394.ko.debug", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/lib/debug/lib/modules/2.6.32-25-generic/kernel/drivers/ieee1394/ohci1394.ko.debug", O_RDONLY) = -1 ENOENT (No such file or directory) open("/lib/modules/2.6.32-25-generic/kernel/drivers/ieee1394/build/ohci1394.ko.debug", O_RDONLY) = -1 ENOENT (No such file or directory) Note that the path is correct, it's the name of the KO that stap is expecting that is wrong, Kernel debug symbols provided by Ubuntu are unstripped yet maintain the .ko extension, systemtap (actually libelf/elfutils) is expecting the filename to be module.ko.debug. After discussing this on #systemtap on Freenode, the following script was proposed to generate a symlink tree, by build id, in /usr/lib/debug, with the proper extension. This completely solves the issue, and is also of benefit to things like gdb and oprofile. #!/bin/sh for file in `find /usr/lib/debug -name '*.ko' -print` do         buildid=`eu-readelf -n $file| grep Build.ID: | awk '{print $3}'`         dir=`echo $buildid | cut -c1-2`         fn=`echo $buildid | cut -c3-`         mkdir -p /usr/lib/debug/.build-id/$dir         ln -s $file /usr/lib/debug/.build-id/$dir/$fn         ln -s $file /usr/lib/debug/.build-id/$dir/${fn}.debug done If we could integrate this into the ddeb postinstall script, the problem would be solved.
2012-06-22 21:30:45 Chris J Arges attachment added 0001-UBUNTU-PACKAGING-add-.gnu_debuglink-sections-to-.ko-.patch https://bugs.launchpad.net/ubuntu/+source/linux/+bug/669641/+attachment/3201017/+files/0001-UBUNTU-PACKAGING-add-.gnu_debuglink-sections-to-.ko-.patch
2012-06-25 16:12:34 Tim Gardner linux (Ubuntu Precise): status In Progress Fix Committed
2012-06-25 16:12:41 Tim Gardner linux (Ubuntu Quantal): status In Progress Fix Committed
2012-06-27 00:21:12 Launchpad Janitor linux (Ubuntu Quantal): status Fix Committed Fix Released
2012-06-29 10:14:53 Launchpad Janitor branch linked lp:ubuntu/linux-lowlatency
2012-07-10 09:50:38 Luis Henriques tags kernel-core patch kernel-core patch verification-needed-precise
2012-07-13 09:06:24 Luis Henriques tags kernel-core patch verification-needed-precise kernel-core patch verification-done-precise
2012-07-17 21:57:19 Launchpad Janitor branch linked lp:ubuntu/precise-proposed/linux-armadaxp
2012-07-23 08:16:09 Launchpad Janitor linux (Ubuntu Precise): status Fix Committed Fix Released
2012-11-14 21:30:44 Launchpad Janitor branch linked lp:ubuntu/precise-proposed/linux-lowlatency
2014-09-02 16:03:16 Chris J Arges bug task deleted linux (Ubuntu Lucid)