Skip to contentSkip to conversation

systemtap-uprobes: inhibit package strip

PATCH In review Wade Farnsworth 3 participants 4 messages Aug 2, 2012 – Aug 15, 2012

lore
Share & tools
lore
#0 lore raw

cover systemtap-uprobes: inhibit package strip

The following changes since commit 56d3bc38bc89b11e5a32908cad0cd6efa4fab08c:
Wade Farnsworth (1):
systemtap-uprobes: inhibit package strip

are available in the git repository at:

https://github.com/wfarnsworth/oe-core.git stap-uprobes

Wade Farnsworth (1):
systemtap-uprobes: inhibit package strip

 .../systemtap/systemtap-uprobes_git.bb             |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)
#1 lore raw

PATCH 1/1 systemtap-uprobes: inhibit package strip

uprobes.ko is not located in /lib/modules, so it fails the check in runstrip that ensures that only the debug section is stripped, leaving the symbols untouched. This prevents the module from being inserted at run time. Inhibiting package stripping fixes the problem.

---
 .../systemtap/systemtap-uprobes_git.bb             |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)
meta/recipes-kernel/systemtap/systemtap-uprobes_git.bb +2 -0
index b328e6b..f135a54 100644
@@ -9,6 +9,8 @@ PR = "r0"
 # On systems without CONFIG_UTRACE, this package is empty.
 ALLOW_EMPTY_${PN} = "1"
 
+INHIBIT_PACKAGE_STRIP = "1"
+
 inherit module-base gettext
 
 FILES_${PN} += "${datadir}/systemtap/runtime/uprobes"
Signature · 1 line
1.7.0.4
#2 lore raw
Quoted 15 lines · Wade Farnsworth

uprobes.ko is not located in /lib/modules, so it fails the check in runstrip that ensures that only the debug section is stripped, leaving the symbols untouched. This prevents the module from being inserted at run time. Inhibiting package stripping fixes the problem.

---
 .../systemtap/systemtap-uprobes_git.bb             |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)
meta/recipes-kernel/systemtap/systemtap-uprobes_git.bb +0 -0
index b328e6b..f135a54 100644

meta/recipes-kernel/systemtap/systemtap-uprobes_git.bb PR = "r0" · line 16

Quoted 8 lines
meta/recipes-kernel/systemtap/systemtap-uprobes_git.bb +2 -0
@@ -9,6 +9,8 @@ PR = "r0"
 # On systems without CONFIG_UTRACE, this package is empty.
 ALLOW_EMPTY_${PN} = "1"
 
+INHIBIT_PACKAGE_STRIP = "1"
+
 inherit module-base gettext
 
 FILES_${PN} += "${datadir}/systemtap/runtime/uprobes"

I think we need to teach package.bbclass to identify kernel modules better (.ko extension?) rather than hack around this for each external module...

Cheers,

Richard

#3 lore raw
Quoted 23 lines · Richard Purdie
Quoted 22 lines · Wade Farnsworth

uprobes.ko is not located in /lib/modules, so it fails the check in runstrip that ensures that only the debug section is stripped, leaving the symbols untouched. This prevents the module from being inserted at run time. Inhibiting package stripping fixes the problem.

---
 .../systemtap/systemtap-uprobes_git.bb             |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)
meta/recipes-kernel/systemtap/systemtap-uprobes_git.bb +2 -0
index b328e6b..f135a54 100644
@@ -9,6 +9,8 @@ PR = "r0"
 # On systems without CONFIG_UTRACE, this package is empty.
 ALLOW_EMPTY_${PN} = "1"
 
+INHIBIT_PACKAGE_STRIP = "1"
+
 inherit module-base gettext
 
Quoted 5 lines

meta/recipes-kernel/systemtap/systemtap-uprobes_git.bb PR = "r0" · line 16

Quoted 1 line
meta/recipes-kernel/systemtap/systemtap-uprobes_git.bb +0 -0
 FILES_${PN} += "${datadir}/systemtap/runtime/uprobes"

I think we need to teach package.bbclass to identify kernel modules better (.ko extension?) rather than hack around this for each external module...

and sometimes it tries to strip foo.ko which is not binary file at all (e.g. /usr/share/emacs/23.4/etc/tutorials/TUTORIAL.ko from emacs).

http://git.openembedded.org/meta-openembedded/commit/?id=d213bfac739163eb932e31181e0bfecc84507f30

Cheers,

Signature · 1 line
Martin 'JaMa' Jansa     jabber: [email protected]