]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Use sigfastblock(2) for masking signals in libthr.
authorkib <kib@FreeBSD.org>
Sun, 9 Feb 2020 12:27:22 +0000 (12:27 +0000)
committerkib <kib@FreeBSD.org>
Sun, 9 Feb 2020 12:27:22 +0000 (12:27 +0000)
commit4b7f3b2a971d078318259d75422ba8f1bf9bde48
tree3a83f912a42d7f88c5df090652ad3808101905f2
parent442313d66767086f4d279daadee7fe7e8ee4cbe4
Use sigfastblock(2) for masking signals in libthr.

Ensure proper handshake to transfer sigfastblock(2) blocking word
ownership from rtld to libthr.

Unfortunately sigfastblock(2) is not enough to stop intercepting
signals in libthr, because critical sections must ensure more than
just signal blocking.

Tested by: pho
Disscussed with: cem, emaste, jilles
Sponsored by: The FreeBSD Foundation
Differential revision: https://reviews.freebsd.org/D12773
lib/libthr/thread/thr_create.c
lib/libthr/thread/thr_private.h
lib/libthr/thread/thr_rtld.c
lib/libthr/thread/thr_sig.c