]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Fix handling of transient casueword(9) failures in do_sem_wait().
authorkib <kib@FreeBSD.org>
Wed, 31 Jul 2019 19:16:49 +0000 (19:16 +0000)
committerkib <kib@FreeBSD.org>
Wed, 31 Jul 2019 19:16:49 +0000 (19:16 +0000)
commit4608a7346603e7546d4a70cb2eead8b535d3cfa6
treed5cf43bf16d66c821c8f0bb045680c79b199f1df
parentfe812638e47fa130293c0d70ff45d5f94db9d515
Fix handling of transient casueword(9) failures in do_sem_wait().

In particular, restart should be only done when the failure is
transient.  For this, recheck the count1 value after the operation.

Note that do_sem_wait() is older usem interface.

Reported and tested by: bdrewery
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
sys/kern/kern_umtx.c