mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2024-12-25 18:59:33 +03:00
Linux 4.8 compat: REQ_PREFLUSH
The REQ_FLUSH flag was renamed REQ_PREFLUSH to avoid confusion with REQ_OP_FLUSH. See https://github.com/torvalds/linux/commit/28a8f0d3 for complete details. Signed-off-by: Tim Chase <tim@chase2k.com> Signed-off-by: Chunwei Chen <david.chen@osnexus.com> Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov> Issue #4892 Issue #4899
This commit is contained in:
parent
bbb1b6cea7
commit
76e5f6fe10
@ -305,12 +305,23 @@ bio_set_flags_failfast(struct block_device *bdev, int *flags)
|
||||
* The existence of these flags implies that REQ_FLUSH an REQ_FUA are
|
||||
* defined. Thus we can safely define VDEV_REQ_FLUSH and VDEV_REQ_FUA
|
||||
* compatibility macros.
|
||||
*
|
||||
* Linux 4.8 renamed the REQ_FLUSH to REQ_PREFLUSH but there was no
|
||||
* functional change in behavior.
|
||||
*/
|
||||
#ifdef WRITE_FLUSH_FUA
|
||||
|
||||
#define VDEV_WRITE_FLUSH_FUA WRITE_FLUSH_FUA
|
||||
#define VDEV_REQ_FLUSH REQ_FLUSH
|
||||
#ifdef REQ_PREFLUSH
|
||||
#define VDEV_REQ_FLUSH REQ_PREFLUSH
|
||||
#define VDEV_REQ_FUA REQ_FUA
|
||||
#else
|
||||
#define VDEV_REQ_FLUSH REQ_FLUSH
|
||||
#define VDEV_REQ_FUA REQ_FUA
|
||||
#endif
|
||||
|
||||
#else
|
||||
|
||||
#define VDEV_WRITE_FLUSH_FUA WRITE_BARRIER
|
||||
#ifdef HAVE_BIO_RW_BARRIER
|
||||
#define VDEV_REQ_FLUSH (1 << BIO_RW_BARRIER)
|
||||
@ -319,6 +330,7 @@ bio_set_flags_failfast(struct block_device *bdev, int *flags)
|
||||
#define VDEV_REQ_FLUSH REQ_HARDBARRIER
|
||||
#define VDEV_REQ_FUA REQ_FUA
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
/*
|
||||
|
Loading…
Reference in New Issue
Block a user