This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
Re: Kernel hang with latest snapshot
- From: David Boreham <david_list at boreham dot org>
- To: Li Guanglei <guanglei at cn dot ibm dot com>
- Cc: systemtap at sourceware dot org
- Date: Tue, 10 Oct 2006 08:02:59 -0600
- Subject: Re: Kernel hang with latest snapshot
- References: <452B9E0C.4010008@boreham.org> <452BA708.8070303@cn.ibm.com>
Thanks v. much.
btw the compilation error I see is in the sync system call stp code :
gcc -m32 -Wp,-MD,/tmp/stapGTgvfK/.stap_2801.o.d -nostdinc -isystem
/usr/lib/gcc/i386-redhat-linux/4.1.1/include -D__KERNEL__ -Iinclude
-include include/linux/autoconf.h -Wall -Wundef -Wstrict-prototypes
-Wno-trigraphs -fno-strict-aliasing -fno-common -Wstrict-prototypes
-Wundef -Werror-implicit-function-declaration -Os -fomit-frame-pointer
-fasynchronous-unwind-tables -g -pipe -msoft-float -fno-builtin-sprintf
-fno-builtin-log2 -fno-builtin-puts -mpreferred-stack-boundary=2
-march=i686 -mtune=generic -mtune=generic -mregparm=3 -ffreestanding
-Iinclude/asm-i386/mach-default -Wdeclaration-after-statement
-Wno-pointer-sign -freorder-blocks -Wno-unused -Werror
-I"/usr/local/share/systemtap/runtime" -DMODULE -D"KBUILD_STR(s)=#s"
-D"KBUILD_BASENAME=KBUILD_STR(stap_2801)"
-D"KBUILD_MODNAME=KBUILD_STR(stap_2801)" -c -o
/tmp/stapGTgvfK/.tmp_stap_2801.o /tmp/stapGTgvfK/stap_2801.c
/tmp/stapGTgvfK/stap_2801.c: In function 'function_log_iosyscall_sync':
/tmp/stapGTgvfK/stap_2801.c:10126: error: 'GroupID' undeclared (first
use in this function)
/tmp/stapGTgvfK/stap_2801.c:10126: error: (Each undeclared identifier is
reported only once
/tmp/stapGTgvfK/stap_2801.c:10126: error: for each function it appears in.)
/tmp/stapGTgvfK/stap_2801.c:10126: error: 'hookID' undeclared (first use
in this function)
make[1]: *** [/tmp/stapGTgvfK/stap_2801.o] Error 1
Which comes from here :
function log_iosyscall_sync(hookid:long)
%{
struct timeval tv;
do_gettimeofday(&tv);
#if defined(ASCII_TRACE)
_stp_printf("%d%d%d%d%d%d%d%d", _GROUP_IOSYSCALL,
THIS->hookid, tv.tv_sec, tv.tv_usec,
current->tgid, current->parent->pid, current->pid,
current->thread_info->cpu);
#else
if(timing_method == TIMING_GETCYCLES) {
_stp_printf("%2b%2n%8b%8b", (_FMT_)0,
(_FMT_)get_cycles(),
(_FMT_)((int64_t)current->pid << 32 |
(int32_t)GroupID << 24 | (int32_t)hookID
<< 16 |
(int16_t)current->thread_info->cpu << 8));
}
else if(timing_method == TIMING_GETTIMEOFDAY) {
struct timeval tv;
do_gettimeofday (&tv);
_stp_printf("%2b%2n%8b%8b", (_FMT_)0,
(_FMT_)(tv.tv_sec*1000000LL + tv.tv_usec),
(_FMT_)((int64_t)current->pid << 32 |
(int32_t)GroupID << 24 | (int32_t)hookID
<< 16 |
(int16_t)current->thread_info->cpu << 8));
}
else {
_stp_printf("%2b%2n%8b%8b", (_FMT_)0,
(_FMT_)pfn_schedclock(),
(_FMT_)((int64_t)current->pid << 32 |
(int32_t)GroupID << 24 | (int32_t)hookID
<< 16 |
(int16_t)current->thread_info->cpu << 8));
}
#endif
%}