[Bug translator/16914] probe syscall.* fails with compilation error
dsmith at redhat dot com
sourceware-bugzilla@sourceware.org
Tue May 6 20:05:00 GMT 2014
https://sourceware.org/bugzilla/show_bug.cgi?id=16914
--- Comment #7 from David Smith <dsmith at redhat dot com> ---
I found an aarch64 machine I could access
(running3.13.0-0.rc7.31.sa2.k32v1.aarch64.debug), built, installed, and got the
following:
====
# stap -p4 -e 'probe syscall.* { log("hey!"); exit() }'
In file included from
/usr/src/kernels/3.13.0-0.rc7.31.sa2.k32v1.aarch64.debug/arch/arm64/include/asm/dma-mapping.h:27:0,
from include/linux/dma-mapping.h:76,
from include/linux/skbuff.h:33,
from include/linux/netlink.h:6,
from
/tmp/stapSX3Lm0/stap_a9d73a0f48c94b332f8efe28f9c0739d_104773_src.c:127:
/usr/src/kernels/3.13.0-0.rc7.31.sa2.k32v1.aarch64.debug/arch/arm64/include/asm/xen/hypervisor.h:1:50:
fatal error: ../../arm/include/asm/xen/hypervisor.h: No such file or directory
#include <../../arm/include/asm/xen/hypervisor.h>
^
compilation terminated.
make[1]: ***
[/tmp/stapSX3Lm0/stap_a9d73a0f48c94b332f8efe28f9c0739d_104773_src.o] Error 1
make: *** [_module_/tmp/stapSX3Lm0] Error 2
WARNING: kbuild exited with status: 2
Pass 4: compilation failed. [man error::pass4]
====
So that looks like a kernel problem, not a systemtap problem.
On your kernel, something odd is going on if things like __NR_open aren't
defined. Can you try the following patch and see if that fixes things?
====
diff --git a/runtime/linux/compat_unistd.h b/runtime/linux/compat_unistd.h
index 25ca1bd..11abc26 100644
--- a/runtime/linux/compat_unistd.h
+++ b/runtime/linux/compat_unistd.h
@@ -11,6 +11,8 @@
#ifndef _COMPAT_UNISTD_H_
#define _COMPAT_UNISTD_H_
+#include <linux/unistd.h>
+
#if defined(__x86_64__)
// On older kernels (like RHEL5), we have to define our own 32-bit
====
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the Systemtap
mailing list