Page MenuHomeFreeBSD

umtx: Do not make an exiting thread the owner of a PI mutex
ClosedPublic

Authored by markj on Fri, Jul 24, 10:35 PM.
Tags
None
Referenced Files
F164928800: D58447.diff
Tue, Aug 4, 10:23 PM
Unknown Object (File)
Mon, Aug 3, 11:02 PM
Unknown Object (File)
Mon, Aug 3, 8:34 AM
Unknown Object (File)
Mon, Aug 3, 8:02 AM
Unknown Object (File)
Mon, Aug 3, 2:30 AM
Unknown Object (File)
Sat, Aug 1, 12:18 PM
Unknown Object (File)
Sat, Aug 1, 8:15 AM
Unknown Object (File)
Fri, Jul 31, 3:49 PM
Subscribers

Details

Summary

Otherwise an assertion in umtx_thread_alloc()
(TAILQ_EMPTY(&uq->uq_pi_contested)) is violated.

This use of TDB_EXIT is hacky and I don't really like it, but I cannot
see another way to check for an exiting thread without adding some more
overhead to kern_thr_exit().

Fixes: 2a339d9e3dc1
Reported by: Maik Muench of Secfault Security

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable