Linux 2.6.37 compat, WRITE_FLUSH_FUA

The WRITE_FLUSH, WRITE_FUA, and WRITE_FLUSH_FUA flags have been
introduced as a replacement for WRITE_BARRIER.  This was done
to allow richer semantics to be expressed to the block layer.
It is the block layers responsibility to choose the correct way
to implement these semantics.

This change simply updates the bio's to use the new kernel API
which should be absolutely safe.  However, since ZFS depends
entirely on this working as designed for correctness we do
want to be careful.

Closes #281
This commit is contained in:
Brian Behlendorf
2011-06-16 20:20:22 +02:00
parent db97f88646
commit 96801d2906
2 changed files with 15 additions and 1 deletions
+1 -1
View File
@@ -559,7 +559,7 @@ vdev_disk_io_flush(struct block_device *bdev, zio_t *zio)
bio->bi_private = zio;
bio->bi_bdev = bdev;
zio->io_delay = jiffies_64;
submit_bio(WRITE_BARRIER, bio);
submit_bio(VDEV_WRITE_FLUSH_FUA, bio);
return 0;
}