OSDN Git Service

linux-user: Use public sigev_notify_thread_id member if available
authorMichael Forney <mforney@mforney.org>
Wed, 26 May 2021 03:55:56 +0000 (20:55 -0700)
committerLaurent Vivier <laurent@vivier.eu>
Sun, 20 Jun 2021 14:41:47 +0000 (16:41 +0200)
commit96ff758c6e9cd5a01443ee15afbd0df4f00c37a8
treeb9a4fa9a9f1bd37872a0c8b8fdee187c9837ee51
parentfebf6fade63801ebca765797fa2ad9de8d9f2700
linux-user: Use public sigev_notify_thread_id member if available

_sigev_un._tid is an internal glibc field and is not available on
musl libc. The sigevent(7) man page and Linux UAPI headers both use
sigev_notify_thread_id as a public way to access this field.

musl libc supports this field since 1.2.2[0], and glibc plans to
add support as well[1][2].

If sigev_notify_thread_id is not available, fall back to _sigev_un._tid
as before.

[0] http://git.musl-libc.org/cgit/musl/commit/?id=7c71792e87691451f2a6b76348e83ad1889f1dcb
[1] https://www.openwall.com/lists/musl/2019/08/01/5
[2] https://sourceware.org/bugzilla/show_bug.cgi?id=27417

Signed-off-by: Michael Forney <mforney@mforney.org>
Reviewed-by: Laurent Vivier <laurent@vivier.eu>
Message-Id: <20210526035556.7931-1-mforney@mforney.org>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>
configure
linux-user/syscall.c