Understanding why getaddrinfo_a and __gai_enqueue_request use recursive locks

Carlos O'Donell carlos@redhat.com
Wed Sep 27 05:54:00 GMT 2017


On 09/26/2017 12:39 PM, Will Hawkins wrote:
> On Tue, Sep 26, 2017 at 2:06 AM, Will Hawkins <whh8b@virginia.edu> wrote:
>> On Tue, Sep 26, 2017 at 12:42 AM, Carlos O'Donell <carlos@redhat.com> wrote:
>>> Can you test removing them and ga_test.c?
>>>
>>> diff --git a/resolv/Makefile b/resolv/Makefile
>>> index ec7e4fd..8a822e0 100644
>>> --- a/resolv/Makefile
>>> +++ b/resolv/Makefile
>>> @@ -101,10 +101,6 @@ routines                += $(libnss_dns-routines) $(libresolv-routines)
>>>  static-only-routines    += $(libnss_dns-routines) $(libresolv-routines)
>>>  endif
>>>
>>> -ifeq (yesyes,$(build-shared)$(have-thread-library))
>>> -tests: $(objpfx)ga_test
>>> -endif
>>> -
>>>  ifeq ($(run-built-tests),yes)
>>>  ifneq (no,$(PERL))
>>>  tests-special += $(objpfx)mtrace-tst-leaks.out
>>> @@ -134,8 +130,6 @@ $(objpfx)libnss_dns.so: $(objpfx)libresolv.so
>>>  # The asynchronous name lookup code needs the thread library.
>>>  $(objpfx)libanl.so: $(shared-thread-library)
>>>
>>> -$(objpfx)ga_test: $(objpfx)libanl.so $(shared-thread-library)
>>> -
>>>  $(objpfx)tst-res_hconf_reorder: $(libdl) $(shared-thread-library)
>>>  tst-res_hconf_reorder-ENV = RESOLV_REORDER=on
>>>
>>> ---
>>>
>>
>> I am testing this as we speak but don't think that I will know the
>> answer before I head to sleep tonight. I will respond as soon as my
>> tests have completed their execution.
> 
> Testing of this 'patch' is complete. I applied the change then used
> the instructions on
> https://sourceware.org/glibc/wiki/Testing/Testsuite#Testing_just_one_test
> to test. Here's how I did it:
> 
> From the build directory, I did
> rm -f resolv/*.out
> make subdirs=resolv check
> 
> and everything ran the way I expected (the same number of test
> failures and passes).
> 
> Thanks again for all your help!
Awesome, thanks. I'll see about posting a patch to do that, and include
you in the testing notes. Alternatively you can post the patch yourself
and I'll approve it, the changes are mechanical and below the copyright
limit, but any future work would require copyright assignment :-)

-- 
Cheers,
Carlos.



More information about the Libc-help mailing list