[patch] Fix for bz14333 -- race between atexit() and exit()

Paul Pluzhnikov ppluzhnikov@google.com
Mon Aug 28 15:00:00 GMT 2017


On Mon, Aug 7, 2017 at 12:28 PM, Paul Pluzhnikov <ppluzhnikov@google.com> wrote:
> On Mon, Jul 31, 2017 at 11:05 AM, Paul Pluzhnikov
> <ppluzhnikov@google.com> wrote:
>
>> 2017-07-31  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): New tests.
>>         * stdlib/test-atexit-race-common.c: New.
>>         * stdlib/test-atexit-race.c: New.
>>         * stdlib/test-at_quick_exit-race.c: New.
>>         * stdlib/test-cxa_atexit-race.c: New.
>
> Ping?

Ping x2?

-- 
Paul Pluzhnikov



More information about the Libc-alpha mailing list