Port-vax archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Deadlock risk in putenv



In article <CAM-w4HNzFP_-E94KgBHvcffFQVyfq64CMCZJBDK2euNuw0hFbQ%mail.gmail.com@localhost>,
Greg Stark  <stark%mit.edu@localhost> wrote:
>-=-=-=-=-=-
>
>Compiling python for vax I ran into an interesting failure that I
>think may represent a real bug in NetBSD's libc on 6.1.5. The tzset
>configure test never finishes.
>
>When I connive to run the configure test with -g and attach with gdb I
>get a stack trace like this which looks like it's deadlocked because
>of a recursive call to getenv inside putenv.
>
>When I run the same conftest manually it doesn't deadlock though -- my
>suspicion is that it's sensitive to the exact number and size of the
>environment variables and it happen that under pkgsrc's build it
>triggers the malloc call which triggers the recursive getenv and the
>deadlock.
>
>Does anyone recall any known bugs fixed in libc since 6.1.5 that look
>like this? It's a bit difficult to claim it's a real bug because there
>are so many weird effects caused by the gcc bugs but this persists
>even with -O0 which doesn't seem to be the case for any of the gcc
>issues. I've attached the conftest but as I mentioned, it doesn't
>reproduce when I run it by hand in my shell directly, only under
>pkgsrc.

Yes, we had to rewrite the environment code.

christos



Home | Main Index | Thread Index | Old Index