diff options
author | Martin K. Petersen <martin.petersen@oracle.com> | 2014-04-08 22:59:31 -0400 |
---|---|---|
committer | Jens Axboe <axboe@fb.com> | 2014-04-09 08:00:06 -0600 |
commit | e69f18f06b97ed29645d020500222bfcec2b42b2 (patch) | |
tree | 1541e97cc116a058f42302aed325dc71fb7dfd91 | |
parent | 0bc69973066d62f70ce60bd6762b5cb75a699159 (diff) | |
download | op-kernel-dev-e69f18f06b97ed29645d020500222bfcec2b42b2.zip op-kernel-dev-e69f18f06b97ed29645d020500222bfcec2b42b2.tar.gz |
block: Ensure we only enable integrity metadata for reads and writes
We'd occasionally attempt to generate protection information for flushes
and other requests with a zero payload. Make sure we only attempt to
enable integrity for reads and writes.
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
-rw-r--r-- | fs/bio-integrity.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/fs/bio-integrity.c b/fs/bio-integrity.c index b355b98..1c2ce0c 100644 --- a/fs/bio-integrity.c +++ b/fs/bio-integrity.c @@ -182,6 +182,9 @@ static int bdev_integrity_enabled(struct block_device *bdev, int rw) */ int bio_integrity_enabled(struct bio *bio) { + if (!bio_is_rw(bio)) + return 0; + /* Already protected? */ if (bio_integrity(bio)) return 0; |