On Tue, Jul 21, 2009 at 3:25 AM, CAI Qian<[email protected]> wrote: > Hi, > > I have seen those failures, > > # uname -a > Linux foo.bar.redhat.com 2.6.18-158.el5 #1 SMP Mon Jul 13 16:23:20 EDT > 2009 s390x s390x s390x GNU/Linux > > make[5]: Entering directory > `/root/20090721/ltp-intermediate-20090721/testcases/kernel/syscalls/eventfd2' > gcc -g -O2 -I../../include -g -Wall -I../../../../include -Wall > eventfd2_01.c -L../../../../lib -lltp -o eventfd2_01 > gcc -g -O2 -I../../include -g -Wall -I../../../../include -Wall > eventfd2_02.c -L../../../../lib -lltp -o eventfd2_02 > gcc -g -O2 -I../../include -g -Wall -I../../../../include -Wall > eventfd2_03.c -L../../../../lib -lltp -o eventfd2_03 > eventfd2_03.c: In function ‘xsem_wait’: > eventfd2_03.c:60: warning: format ‘%llu’ expects type ‘long long unsigned > int’, but argument 5 has type ‘u_int64_t’ > eventfd2_03.c: In function ‘main’: > eventfd2_03.c:129: warning: implicit declaration of function ‘waitpid’ > eventfd2_03.c: At top level: > ../../include/linux_syscall_numbers.h:19: warning: ‘cleanup’ used but never > defined > /tmp/ccODR9Wd.o: In function `eventfd2': > /root/20090721/ltp-intermediate-20090721/testcases/kernel/syscalls/eventfd2/eventfd2_03.c:49: > undefined reference to `cleanup' > collect2: ld returned 1 exit status > make[5]: *** [eventfd2_03] Error 1 > make[5]: Leaving directory > `/root/20090721/ltp-intermediate-20090721/testcases/kernel/syscalls/eventfd2' > make[4]: *** [all] Error 2 > make[4]: Leaving directory > `/root/20090721/ltp-intermediate-20090721/testcases/kernel/syscalls' > make[3]: *** [all] Error 2 > make[3]: Leaving directory > `/root/20090721/ltp-intermediate-20090721/testcases/kernel' > make[2]: *** [all] Error 2 > make[2]: Leaving directory > `/root/20090721/ltp-intermediate-20090721/testcases' > make[1]: *** [all] Error 2 > make[1]: Leaving directory `/root/20090721/ltp-intermediate-20090721' > make: *** [build] Error 2
The patch provided below fixes the majority of the compile errors/warnings. I'm unable to get it to run though by itself, so I must be missing some critical piece of info. I was tempted to fix the format string error, but I don't know what the potential implications are of switching the data type from u_int64_t to unsigned long long... > # uname -a > Linux foo.bar.redhat.com 2.6.18-158.el5 #1 SMP Mon Jul 13 > 16:27:25 EDT 2009 ppc64 ppc64 ppc64 GNU/Linux > > make[5]: Entering directory > `/root/20090721/ltp-intermediate-20090721/testcases/kernel/syscalls/fstatat' > gcc -g -O2 -I../../include -g -Wall -I../../../../include -Wall > -DTST_USE_NEWER64_SYSCALL=1 -D_FILE_OFFSET_BITS=64 -c -o fstatat01_64.o > fstatat01.c > fstatat01.c: In function ‘main’: > fstatat01.c:126: error: expected ‘)’ before numeric constant > make[5]: *** [fstatat01_64.o] Error 1 > make[5]: Leaving directory > `/root/20090721/ltp-intermediate-20090721/testcases/kernel/syscalls/fstatat' > make[4]: *** [all] Error 2 > make[4]: Leaving directory > `/root/20090721/ltp-intermediate-20090721/testcases/kernel/syscalls' > make[3]: *** [all] Error 2 > make[3]: Leaving directory > `/root/20090721/ltp-intermediate-20090721/testcases/kernel' > make[2]: *** [all] Error 2 > make[2]: Leaving directory > `/root/20090721/ltp-intermediate-20090721/testcases' > make[1]: *** [all] Error 2 > make[1]: Leaving directory `/root/20090721/ltp-intermediate-20090721' > make: *** [build] Error 2 Missing syscall number. Not sure why it fails for you and passes for me though... the syscall may need to be added to a .in file. Thanks, -Garrett Fix compiler error noted by CAI Qian w.r.t. the intermediate July release, as... 1. The necessary headers weren't being pulled in for waitpid. 2. gcc was complaining about -Wunused with cleanup. Signed-off-by: Garrett Cooper <[email protected]> Index: testcases/kernel/syscalls/eventfd2/eventfd2_03.c =================================================================== RCS file: /cvsroot/ltp/ltp/testcases/kernel/syscalls/eventfd2/eventfd2_03.c,v retrieving revision 1.2 diff -u -r1.2 eventfd2_03.c --- testcases/kernel/syscalls/eventfd2/eventfd2_03.c 6 Jul 2009 14:49:18 -0000 1.2 +++ testcases/kernel/syscalls/eventfd2/eventfd2_03.c 21 Jul 2009 14:15:59 -0000 @@ -26,6 +26,7 @@ #include <sys/types.h> #include <sys/syscall.h> #include <sys/stat.h> +#include <sys/wait.h> #include <fcntl.h> #include <stdlib.h> #include <stdio.h> @@ -44,6 +45,8 @@ #define EFD_SEMLIKE (1 << 0) #endif +/* Dummy function reference to avoid compiler warning from linux_syscall_numbers.h. */ +extern void cleanup() { } static int eventfd2(int count, int flags) { return syscall(__NR_eventfd2, count, flags); ------------------------------------------------------------------------------ Enter the BlackBerry Developer Challenge This is your chance to win up to $100,000 in prizes! For a limited time, vendors submitting new applications to BlackBerry App World(TM) will have the opportunity to enter the BlackBerry Developer Challenge. See full prize details at: http://p.sf.net/sfu/Challenge _______________________________________________ Ltp-list mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/ltp-list
