From: Adhemerval Zanella Date: Wed, 13 Jul 2022 13:37:32 +0000 (-0300) Subject: nptl: Fix ___pthread_unregister_cancel_restore asynchronous restore X-Git-Tag: glibc-2.36~60 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f27e5e21787abc9f719879af47687221aa1027b3;p=thirdparty%2Fglibc.git nptl: Fix ___pthread_unregister_cancel_restore asynchronous restore This was due a wrong revert done on 404656009b459658. Checked on x86_64-linux-gnu and i686-linux-gnu. --- diff --git a/nptl/cleanup_defer.c b/nptl/cleanup_defer.c index eb0bc777400..4e864ead328 100644 --- a/nptl/cleanup_defer.c +++ b/nptl/cleanup_defer.c @@ -71,7 +71,7 @@ ___pthread_unregister_cancel_restore (__pthread_unwind_buf_t *buf) return; int cancelhandling = atomic_load_relaxed (&self->cancelhandling); - if (cancelhandling & CANCELTYPE_BITMASK) + if ((cancelhandling & CANCELTYPE_BITMASK) == 0) { int newval; do