]> git.ipfire.org Git - thirdparty/glibc.git/commit
nptl: Use pthread_kill on pthread_cancel
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>
Mon, 7 Dec 2020 20:17:24 +0000 (17:17 -0300)
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>
Wed, 9 Jun 2021 18:16:45 +0000 (15:16 -0300)
commita6c813d0ad0fd9830f2cd3c3d079af8d2aa50a1f
tree4a76233e9a815b23428b380ec689491ec9b8f7b4
parentf779b1efb35fe141e47952af3ac7f0540acca401
nptl: Use pthread_kill on pthread_cancel

It consolidates the tgkill call and it is the first step of making
pthread_cancel async-signal-safe.  It also fix a possible issue
where the 'struct pthread' tid is not read atomically, which might
send an invalid cancellation signal (similar to what
db988e50a87f613cb6b9e98a2fc66a4848bc3546 fixed for pthread_join).

Checked on x86_64-linux-gnu and aarch64-linux-gnu.
nptl/pthreadP.h
nptl/pthread_cancel.c
nptl/pthread_kill.c