The ALQ should not be considered drained until it has been made inactive.

Sponsored by:	FreeBSD Foundation
Reviewed by:	dwmalone, jeff, rpaulo, rwatson (as part of a larger patch)
Approved by:	kmacy (mentor)
MFC after:	1 month
This commit is contained in:
Lawrence Stewart 2010-04-01 01:27:10 +00:00
parent 9ffad7a94d
commit 97c11ef282

View File

@ -253,7 +253,7 @@ alq_shutdown(struct alq *alq)
alq->aq_flags |= AQ_SHUTDOWN;
/* Drain IO */
while (alq->aq_flags & (AQ_FLUSHING|AQ_ACTIVE)) {
while (alq->aq_flags & AQ_ACTIVE) {
alq->aq_flags |= AQ_WANTED;
msleep_spin(alq, &alq->aq_mtx, "aldclose", 0);
}