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: glibc 2.21: One week at semi-frozen.


On Sun, 2015-01-11 at 22:16 -0500, Carlos O'Donell wrote:
> (2) New semaphore implementation fixing semaphore destruction (bug 12674) [Torvald]
>     - Finishing my review.

[...]

> * Futex cleanup. Torvald, please push this off to 2.22. I'm nervous
>   changing error handling near the end of the release. Unless you tell
>   me it's very well tested, obvious, and reviewed.

Okay.  It's not yet been reviewed, and I'm not sure whether Roland would
review in time.  Most of the changes are pretty simple, but not all of
them are.  It's not tested beyond what the testsuite gives me.

I will send a separate patch for one bug the clean-up showed, though: In
sysdeps/nptl/fork.c, the previous code didn't provide an address but the
value, so this might have led to lost wake-ups due to the futex_wake not
targeting the actual futex.

I'll send a new patch for the semaphore that doesn't rely on being on
top of the futex cleanup patches, but uses copies of the futex wrappers
internally (ie, static functions) in the new code only (to minimize
changes to the old-version semaphore).

If you want to reduce the changes even further, I can ignore the current
WIP kernel docs for EINTR (ie, that it can return EINTR on spurious
aborts too), and assume that EINTR is just returned for signals.  That
keeps the current implementation's behavior.  Let me know if you want to
see that.


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