* Samuel Thibault: > Florian Weimer, le jeu. 11 mai 2023 19:44:42 +0200, a ecrit: >> * Sergey Bugaev: >> > Clearly __pthread_setcancelstate has been pragma weak'd, and used here >> > without a check. This is a statically linked x86_64-gnu (so, Hurd and >> > HTL) executable. Commit 93d78ec1cba68184931b75bef29afd3aed30f43a >> > "nptl: Move pthread_setcancelstate into libc" seems to be the culprit: >> > that commit only moved the NPTL symbol into libc, yet changed the >> > original __libc_ptf_call (__pthread_setcancelstate) calls to direct >> > __pthread_setcancelstate calls, in this and many other places. >> >> Apparently, Hurd does not support async cancellation? > > ? It does, see htl/pt-cancel.c's check for > PTHREAD_CANCEL_ASYNCHRONOUS.
But __pthread_setcancelstate does not trigger async cancellation if there's a pending async request and cancellation is enabled. Thanks, Florian