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) |
|
|