Package: systemtap
Version: 3.0-6
Severity: normal
Hi! I've been writing some very simple systemtap scripts, and printing the
values of arguments to user-defined probe marks always shows zeroes.
Here's an minimal failing example:
$ cat >events.d <<\EOF
provider test
{
probe f(int a1, int a2);
};
EOF
$ cat >test.c <<\EOF
#include <stdio.h>
#include "events.h"
int f(int a1, int a2)
{
TEST_F(a1, a2);
printf("a1=%d a2=%d\n", a1, a2);
}
int main(int argc, char *argv[])
{
f(1, 1);
f(2, 2);
return 0;
}
EOF
$ dtrace -s events.d -G
$ dtrace -s events.d -h
$ gcc -o test -O0 -g test.c events.o
$ sudo stap test.stp -c './test'
a1=1 a2=1
a1=2 a2=2
hello
0 0
0 0
While the printf's show correct values for a1 and a2, the stap script always
shows zeroes. Executing as a regular use (on the stapdev and stapusr groups)
shows the same errors.
Bug #691167 should no longer be applicable, since I'm running a stock debian
kernel (4.7) with UPROBES enabled:
$ grep UPROBES /boot/config-*
/boot/config-3.16.0-4-amd64:CONFIG_ARCH_SUPPORTS_UPROBES=y
/boot/config-3.16.0-4-amd64:CONFIG_UPROBES=y
/boot/config-4.6.0-1-amd64:CONFIG_ARCH_SUPPORTS_UPROBES=y
/boot/config-4.6.0-1-amd64:CONFIG_UPROBES=y
/boot/config-4.7.0-1-amd64:CONFIG_ARCH_SUPPORTS_UPROBES=y
/boot/config-4.7.0-1-amd64:CONFIG_UPROBES=y
/boot/config-4.8.0-rc5:CONFIG_ARCH_SUPPORTS_UPROBES=y
/boot/config-4.8.0-rc5:CONFIG_UPROBES=y
I've also tried to compile the latest linux kernel version (4.8.0-rc5, vanilla
upstream) and the failure is still the same.
Thanks,
Lluis
-- System Information:
Debian Release: stretch/sid
APT prefers testing
APT policy: (990, 'testing'), (500, 'stable-updates'), (500, 'unstable'),
(500, 'stable'), (250, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 4.8.0-rc5 (SMP w/4 CPU cores)
Locale: LANG=ca_ES.UTF-8, LC_CTYPE=ca_ES.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
Versions of packages systemtap depends on:
ii libavahi-client3 0.6.32-1
ii libavahi-common3 0.6.32-1
ii libc6 2.23-5
ii libdw1 0.166-2
ii libelf1 0.166-2
ii libgcc1 1:6.1.1-11
ii libnspr4 2:4.12-2
ii libnss3 2:3.25-1
ii libsqlite3-0 3.14.1-1
ii libstdc++6 6.1.1-11
ii make 4.1-9
ii systemtap-common 3.0-6
ii systemtap-runtime 3.0-6
systemtap recommends no packages.
Versions of packages systemtap suggests:
pn systemtap-doc <none>
pn vim-addon-manager <none>
-- no debconf information