[PATCH][BZ #13724] Do not segfault in pthread_setname_np (x, NULL)
Jeff Law
law@redhat.com
Wed Oct 9 17:57:00 GMT 2013
On 10/09/13 11:53, Carlos O'Donell wrote:
> On 10/08/2013 03:04 PM, Jeff Law wrote:
>>> It seems incredibly useful to enable the asserts and trigger these
>>> violations as early as possible. If you don't care you can disable
>>> the asserts?
>> Another approach would be similar to what we're doing with memstomp.
>> ie, build a set of wrappers which check for these argument goofs and
>> allow users to dl-preload DSOs with the wrappers.
>>
>> When I first proposed the idea for these sanity checking dl-preload
>> libraries for Fedora I envisioned that we could go beyond just
>> checking for overlapping memory areas in the mem* and str* functions.
>> There could be a set of pthread wrapper functions that check for
>> whatever invariants we can in the pthread* functions without a huge
>> performance hit.
>
> Right, you could wrap everything up and check all inputs against
> non-NULL where the headers say __attribute__ ((__nonnull__ params))
> or __nonnull(params) (short-hand in glibc).
But using the attributes are compile-time checks only. Using an
LD_PRELOAD provides runtime checking
Jeff
More information about the Libc-alpha
mailing list