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] Fix for bz14333 -- race between atexit() and exit()


Carlos,

Thanks for the review.

On Thu, Sep 14, 2017 at 8:07 AM, Carlos O'Donell <carlos@redhat.com> wrote:

> Suggest:
>
> /* See concurrency notes in stdlib/exit.h where this lock is defined.  */

Nit: the lock is defined here, but is declared in exit.h

>> diff --git a/stdlib/test-at_quick_exit-race.c b/stdlib/test-at_quick_exit-race.c
>
> Needs a comment explaining what this specific test is looking for and
> what are the expected results.

Rather than repeating such comment in every test-*exit*-race.c, I
added a note to look in test-atexit-race-common.c.

I also added a test for on_exit/exit -- I missed on_exit in previous iteration.

Thanks,

2017-09-18  Paul Pluzhnikov  <ppluzhnikov@google.com>
            Ricky Zhou  <rickyz@google.com>
            Anoop V Chakkalakkal  <anoop.vijayan@in.ibm.com>

        [BZ #14333]
        * stdlib/cxa_atexit.c (__internal_atexit): Use __exit_funcs_lock.
        Remove atomics.
        (__new_exitfn): Fail registration when we finished at_exit processing.
        * stdlib/cxa_finalize.c (__cxa_finalize): Likewise.
        * stdlib/on_exit.c (__on_exit): Likewise.
        * stdlib/exit.c (__exit_funcs_done): New variable.
        (__run_exit_handlers): Use __exit_funcs_lock.
        * stdlib/exit.h (__exit_funcs_lock, __exit_funcs_done): New
        declarations.
        * stdlib/Makefile (test-atexit-race, test-quick_at_exit-race)
        (test-cxa_atexit-race, test-on_exit-race): New tests.
        * stdlib/test-atexit-race-common.c: New file.
        * stdlib/test-atexit-race.c: New file.
        * stdlib/test-at_quick_exit-race.c: New file.
        * stdlib/test-cxa_atexit-race.c: New file.
        * stdlib/test-on_exit-race.c: New file.



-- 
Paul Pluzhnikov

Attachment: glibc-bz14333-20170918.txt
Description: Text document


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