]> dgit.raspbian.org Git - glibc.git/commit
Hurd: make sigstates hold a reference on thread ports
authorRichard Braun <rbraun@sceen.net>
Fri, 25 Nov 2016 22:09:39 +0000 (22:09 +0000)
committerAurelien Jarno <aurel32@debian.org>
Fri, 25 Nov 2016 22:09:39 +0000 (22:09 +0000)
commit2d7cce21afb6dcadc3f95628b06331bc0b99f6fc
tree572089d71036e9adca21eaf5ab1992f0fe666a72
parent04a719396db50aa81bfec3a201305fe26b2fd7ef
Hurd: make sigstates hold a reference on thread ports

This change is required in order to correctly release per-thread
resources. Directly reusing the threading library reference isn't
possible since the sigstate is also used early in the main thread,
before threading is initialized.

* hurd/hurd/signal.h (_hurd_self_sigstate): Drop thread reference after
calling _hurd_thread_sigstate.
(_hurd_critical_section_lock): Likewise.
* hurd/hurdsig.c (_hurd_thread_sigstate): Add a reference on the thread.
(_hurd_sigstate_delete): Drop thread reference.

Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name tg-sigstate_thread_reference.diff
hurd/hurd/signal.h
hurd/hurdsig.c