aboutsummaryrefslogtreecommitdiff
path: root/nptl/pthread_cancel.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2003-12-20 23:39:42 +0000
committerUlrich Drepper <drepper@redhat.com>2003-12-20 23:39:42 +0000
commitc0ecb80a43103964d30d8629ce45098fca307081 (patch)
tree859db25ae2d571c91dabf49a70c8c2e1da535ebe /nptl/pthread_cancel.c
parentbbe35eb57144c081d10e76e35e52e9b400202b72 (diff)
downloadglibc-c0ecb80a43103964d30d8629ce45098fca307081.zip
glibc-c0ecb80a43103964d30d8629ce45098fca307081.tar.gz
glibc-c0ecb80a43103964d30d8629ce45098fca307081.tar.bz2
Update.
2003-12-20 Ulrich Drepper <drepper@redhat.com> * elf/rtld.c (dl_main): Optimize order or subexpressions in if().
Diffstat (limited to 'nptl/pthread_cancel.c')
-rw-r--r--nptl/pthread_cancel.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/nptl/pthread_cancel.c b/nptl/pthread_cancel.c
index 1523da8..8d1b864 100644
--- a/nptl/pthread_cancel.c
+++ b/nptl/pthread_cancel.c
@@ -65,6 +65,12 @@ pthread_cancel (th)
thread as canceled. */
INTERNAL_SYSCALL_DECL (err);
+ /* One comment: The PID field in the TCB can temporarily be
+ changed (in fork). But this must not affect this code
+ here. Since this function would have to be called while
+ the thread is executing fork, it would have to happen in
+ a signal handler. But this is no allowed, pthread_cancel
+ is not guaranteed to be async-safe. */
int val;
#if __ASSUME_TGKILL
val = INTERNAL_SYSCALL (tgkill, err, 3,