This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Linux: Add gettid system call wrapper [BZ #6399]


* Florian Weimer:

> * Florian Weimer:
>
>> This should be the fix:
>>
>> posix: Fix missing wrapper header for <bits/unistd_ext.h>
>>
>> 2019-02-08  Florian Weimer  <fweimer@redhat.com>
>>
>> 	* include/bits/unistd_ext.h: New file.
>>
>> diff --git a/include/bits/unistd_ext.h b/include/bits/unistd_ext.h
>> new file mode 100644
>> index 0000000000..24e8d09ba8
>> --- /dev/null
>> +++ b/include/bits/unistd_ext.h
>> @@ -0,0 +1 @@
>> +#include <posix/bits/unistd_ext.h>
>
> Well, it broke the Linux build.  It turns out that installed sysdeps
> headers must only live under sysdeps.  I'm testing the fix below.
>
> This stuff is way too difficult.
>
> Florian
>
> Provide <bits/unistd_ext.h> as a sysdeps header exclusively
>
> Non-sysdeps headers cannot be overriden by sysdeps headers across the
> entire build, so it is necessary to turn such extension headers into
> sysdeps headers themselves.  The approach here follows the existing
> <bits/shm.h> header (although it uses sysdeps/gnu instead of
> sysdeps/generic).
>
> Fixes commit 1d0fc213824eaa2a8f8c4385daaa698ee8fb7c92 ("Linux: Add
> gettid system call wrapper [BZ #6399]") and commit
> 8f89ab216f205c2ffd90d1fc8454efdfc0b01dee ("posix: Fix missing wrapper
> header for <bits/unistd_ext.h>").
>
> 2019-02-08  Florian Weimer  <fweimer@redhat.com>
>
> 	* include/bits/unistd_ext.h: Remove file.
> 	* posix/bits/unistd_ext.h: Move to ...
> 	* sysdeps/generic/bits/unistd_ext.h: ... here.

Testing suggests that this does the right thing.  The correct header is
installed on Hurd and Linux.

Thanks,
Florian


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]