B_DONE
CLR(bp->b_flags, B_READ | B_WRITE | B_DONE);
CLR(bp->b_flags, B_READ | B_WRITE | B_DONE);
CLR(bp->b_flags, B_READ | B_WRITE | B_DONE | B_ERROR);
CLR(bp->b_flags, B_READ | B_WRITE | B_DONE);
CLR(bp->b_flags, B_READ | B_WRITE | B_DONE);
CLR(bp->b_flags, B_READ | B_WRITE | B_DONE);
CLR(bp->b_flags, B_READ | B_WRITE | B_DONE);
CLR(bp->b_flags, B_READ | B_WRITE | B_DONE | B_ERROR);
CLR(bp->b_flags, B_READ | B_WRITE | B_DONE);
CLR(bp->b_flags, B_READ | B_WRITE | B_DONE);
CLR(bp->b_flags, B_READ | B_WRITE | B_DONE);
CLR(bp->b_flags, B_READ | B_WRITE | B_DONE);
CLR(bp->b_flags, B_READ | B_WRITE | B_DONE);
CLR(bp->b_flags, B_READ | B_WRITE | B_DONE);
CLR(bp->b_flags, B_READ | B_WRITE | B_DONE);
CLR(bp->b_flags, B_READ | B_WRITE | B_DONE);
CLR(bp->b_flags, B_READ | B_WRITE | B_DONE);
CLR(bp->b_flags, B_READ | B_WRITE | B_DONE);
CLR(bp->b_flags, B_READ | B_WRITE | B_DONE);
CLR(bp->b_flags, B_DONE | B_ERROR);
while ((bp->b_flags & B_DONE) == 0)
CLR(bp->b_flags, B_READ | B_WRITE | B_DONE | B_ERROR);
CLR(bp->b_flags, B_READ | B_WRITE | B_DONE);
while (!ISSET(bp->b_flags, B_DONE))
if (ISSET(bp->b_flags, B_DONE))
SET(bp->b_flags, B_DONE); /* note that it's done */
if (!ISSET(bp->b_flags, (B_DONE | B_DELWRI))) {
CLR(bp->b_flags, (B_READ | B_DONE | B_ERROR | B_DELWRI));
SET(bp->b_flags, B_DONE);
if ((bp->b_flags & (B_READ | B_DONE)) == 0) {
if ((rabp->b_flags & (B_DELWRI | B_DONE)) == 0) {
if ((bp->b_flags & (B_DONE | B_DELWRI)) == 0) {
if ((bp->b_flags & B_DONE) == 0) {
nbp->b_flags &= ~(B_READ|B_DONE|B_ERROR);
bp->b_flags &= ~(B_READ|B_DONE|B_ERROR);
bp->b_flags &= ~(B_READ|B_DONE|B_ERROR);
if (bp->b_flags & (B_DONE | B_DELWRI)) {
if (!(bp->b_flags & (B_DONE | B_DELWRI))) {
bp->b_flags |= B_DONE;
bp->b_flags |= B_DONE;
if (!(bp->b_flags & (B_DONE | B_DELWRI))) {
if (bp->b_flags & (B_DONE | B_DELWRI)) {