On Thu, 2008-12-11 at 02:38 +0100, Jiri Palecek wrote:
> Hello,
> 
> On Wednesday 10 December 2008 10:50:28 Veerendra wrote:
> > In the latest LTP release ( LTP-full-20081130) the make is failing for
> > Power machines for the 'utimensat' tests.
> > Can you please check this ?
> >
> > make[4]: Entering directory
> > `/root/ltp-full-20081130/testcases/kernel/syscalls/utimensat' make[5]:
> > Entering directory
> > `/root/ltp-full-20081130/testcases/kernel/syscalls/utimensat' cc -Wall 
> > -I../../include -g -Wall -I../../../../include -Wall -I../../../../include
> > -Wall -o check_for_utimensat_support check_for_utimensat_support.c
> > ../../../../lib/tst_kvercmp.c -I../../../../include make[5]: Leaving
> > directory `/root/ltp-full-20081130/testcases/kernel/syscalls/utimensat'
> > make[5]: Entering directory
> > `/root/ltp-full-20081130/testcases/kernel/syscalls/utimensat' cc -Wall 
> > -I../../include -g -Wall -I../../../../include -Wall -I../../../../include
> > -Wall    utimensat01.c  -L../../../../lib -lltp -o utimensat01
> > ../../include/linux_syscall_numbers.h:18: warning: ‘cleanup’ declared
> > ‘static’ but never defined ../../../../lib/libltp.a(tst_res.o): In
> > function `tst_res':
> > ../../../../lib/libltp.a(tst_res.o):tst_res.c:(.text+0x13a6): more
> > undefined references to `TCID' follow collect2: ld returned 1 exit status
> > make[5]: *** [utimensat01] Error 1
> > make[5]: Leaving directory
> > `/root/ltp-full-20081130/testcases/kernel/syscalls/utimensat' make[4]: ***
> > [all] Error 2
> > make[4]: Leaving directory
> > `/root/ltp-full-20081130/testcases/kernel/syscalls/utimensat' make[3]: ***
> > [all] Error 2
> > make[3]: Leaving directory
> > `/root/ltp-full-20081130/testcases/kernel/syscalls' make[2]: *** [all]
> > Error 2
> > make[2]: Leaving directory `/root/ltp-full-20081130/testcases/kernel'
> > make[1]: *** [all] Error 2
> > make[1]: Leaving directory `/root/ltp-full-20081130/testcases'
> >
> > make: *** [all] Error 2
> 
> This is because TCID is needed to call tst_brk if the syscall doesn't exist 
> or 
> optimization doesn't eliminate the call. At the first sight, it might seem 
> that 
> syscall() is not called when __NR_utimensat is undefined, because it is 
> guarded 
> by #ifdef, but it's not really so, because __NR_utimensat is stubbed in 
> linux_syscall_numbers.h
> 
> To fix it, apply the first patch, which moves the definition of TCID outside 
> the 
> #ifdef block - it should be there anyway. The second patch removes the 
> conditional compilation altogether, because it is never effective.
> 
> The patches should be applied in sequence.

Thanks Jiri for these Patches.

Veerendra,

Hope it solves your problem.

Regards--
Subrata

> 
> Regards
>     Jiri Palecek
> 


------------------------------------------------------------------------------
SF.Net email is Sponsored by MIX09, March 18-20, 2009 in Las Vegas, Nevada.
The future of the web can't happen without you.  Join us at MIX09 to help
pave the way to the Next Web now. Learn more and register at
http://ad.doubleclick.net/clk;208669438;13503038;i?http://2009.visitmix.com/
_______________________________________________
Ltp-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ltp-list

Reply via email to