[LTP] {get|set}_thread_area issue on ARM
Cyril Hrubis
chrubis@suse.cz
Mon Dec 7 10:25:03 CET 2015
Hi!
> I just tried build ltp for arm, and one (maybe, first of) test failed
> build. Namely, set_thread_area01.c
>
> The reason is that __NR_set_thread_area and __NR_get_thread_area are
> not declared. They should come from
> /usr/arm-linux-gnueabi/include/asm/unistd.h
> But there's only:
> [...]
> #define __NR_remap_file_pages (__NR_SYSCALL_BASE+253)
> /* for set_thread_area */
> /* for get_thread_area */
> #define __NR_set_tid_address (__NR_SYSCALL_BASE+256)
> [...]
>
> In kernel, there are stubs for corresponding syscall numbers. So it
> looks like this pair is deprecated and unsupported. I can build ltp
> for aarch64 and x84_64 just fine.
>
> Could someone explain me what am I doing wrong?
LTP contains stub syscall definitions for cases when certain
syscall is not supported by given arch. What is the exact error that
causes the build failure? I had a look at the test source code and the
only thing that could be an issue is that there would be duplicate case
in switch() statement since on aarch64 both __NR_set_thread_area and
__NR_get_thread_area would be defined to -1 (which means not implemented
in LTP).
--
Cyril Hrubis
chrubis@suse.cz
More information about the Ltp
mailing list