Hi
I got report about race condition in LinuxThread's sigaction wrapper
located in libpthread/linuxthreads/signals.c
In sigaction wrapper
A.1) override handler for new action to point at pthread_sighandler
A.2) __libc_sigaction
A.3) update global array (sighandler) used by pthread_sighandler with
real action (from new)
pthread_sighandler
B.1) find real action (indexed by signal number)
B.2) unconditionally execute action
IIUC, if we receive signal in a window between A.2 and A.3 we are
missing executing real action (likely we try to execute NULL).
Does that make sense?
Cheers
Vladimir