Eric Sandeen <sandeen@xxxxxxxxxxx> writes: >> --- a/fs/buffer.c >> +++ b/fs/buffer.c >> @@ -2926,16 +2926,16 @@ int submit_bh(int rw, struct buffer_head * bh) >> BUG_ON(!buffer_mapped(bh)); >> BUG_ON(!bh->b_end_io); >> >> - if (buffer_ordered(bh) && (rw == WRITE)) >> - rw = WRITE_BARRIER; >> - >> /* >> * Only clear out a write error when rewriting, should this >> * include WRITE_SYNC as well? >> */ >> - if (test_set_buffer_req(bh) && (rw == WRITE || rw == WRITE_BARRIER)) >> + if (test_set_buffer_req(bh) && rw == WRITE) >> clear_buffer_write_io_error(bh); This should be ((rw & RW_MASK) == WRITE) too? Anyway, this seems change behavior of submit_bh(WRITE_BARRIER) (maybe reiserfs only), it wouldn't be your intent... >> + if (buffer_ordered(bh) && ((rw & RW_MASK) == WRITE)) >> + rw |= (1 << BIO_RW_BARRIER); >> + >> /* >> * from here on down, it's all bio -- do the initial mapping, >> * submit_bio -> generic_make_request may further map this bio around -- OGAWA Hirofumi <hirofumi@xxxxxxxxxxxxxxxxxx> -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html