Use SCHEDULER_STOPPED() in cv_*wait*() instead of checking panicstr.

Reviewed by:	kib
MFC after:	1 month
Sponsored by:	Netflix
Differential Revision:	https://reviews.freebsd.org/D5516
This commit is contained in:
John Baldwin 2016-03-01 22:51:44 +00:00
parent 2eed38a070
commit 7b8cfe26a0
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=296283

View File

@ -122,7 +122,7 @@ _cv_wait(struct cv *cvp, struct lock_object *lock)
"Waiting on \"%s\"", cvp->cv_description);
class = LOCK_CLASS(lock);
if (cold || panicstr) {
if (cold || SCHEDULER_STOPPED()) {
/*
* During autoconfiguration, just give interrupts
* a chance, then just return. Don't run any other
@ -183,7 +183,7 @@ _cv_wait_unlock(struct cv *cvp, struct lock_object *lock)
("cv_wait_unlock cannot be used with Giant"));
class = LOCK_CLASS(lock);
if (cold || panicstr) {
if (cold || SCHEDULER_STOPPED()) {
/*
* During autoconfiguration, just give interrupts
* a chance, then just return. Don't run any other
@ -240,7 +240,7 @@ _cv_wait_sig(struct cv *cvp, struct lock_object *lock)
"Waiting on \"%s\"", cvp->cv_description);
class = LOCK_CLASS(lock);
if (cold || panicstr) {
if (cold || SCHEDULER_STOPPED()) {
/*
* After a panic, or during autoconfiguration, just give
* interrupts a chance, then just return; don't run any other
@ -307,7 +307,7 @@ _cv_timedwait_sbt(struct cv *cvp, struct lock_object *lock, sbintime_t sbt,
"Waiting on \"%s\"", cvp->cv_description);
class = LOCK_CLASS(lock);
if (cold || panicstr) {
if (cold || SCHEDULER_STOPPED()) {
/*
* After a panic, or during autoconfiguration, just give
* interrupts a chance, then just return; don't run any other
@ -376,7 +376,7 @@ _cv_timedwait_sig_sbt(struct cv *cvp, struct lock_object *lock,
"Waiting on \"%s\"", cvp->cv_description);
class = LOCK_CLASS(lock);
if (cold || panicstr) {
if (cold || SCHEDULER_STOPPED()) {
/*
* After a panic, or during autoconfiguration, just give
* interrupts a chance, then just return; don't run any other