summaryrefslogtreecommitdiffstats
path: root/block/blk.h
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@lst.de>2017-07-03 16:58:43 -0600
committerJens Axboe <axboe@kernel.dk>2017-07-03 17:00:59 -0600
commit7c20f11680a441df09de7235206f70115fbf6290 (patch)
tree90d50d07813a45cc1454b730a76a85a92a0cdd5a /block/blk.h
parent63573e359d052e506d305c263576499f06355985 (diff)
downloadlinux-0-day-7c20f11680a441df09de7235206f70115fbf6290.tar.gz
linux-0-day-7c20f11680a441df09de7235206f70115fbf6290.tar.xz
bio-integrity: stop abusing bi_end_io
And instead call directly into the integrity code from bio_end_io. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'block/blk.h')
-rw-r--r--block/blk.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/block/blk.h b/block/blk.h
index 01ebb8185f6bf..3a3d715bd7253 100644
--- a/block/blk.h
+++ b/block/blk.h
@@ -81,10 +81,21 @@ static inline void blk_queue_enter_live(struct request_queue *q)
#ifdef CONFIG_BLK_DEV_INTEGRITY
void blk_flush_integrity(void);
+bool __bio_integrity_endio(struct bio *);
+static inline bool bio_integrity_endio(struct bio *bio)
+{
+ if (bio_integrity(bio))
+ return __bio_integrity_endio(bio);
+ return true;
+}
#else
static inline void blk_flush_integrity(void)
{
}
+static inline bool bio_integrity_endio(struct bio *bio)
+{
+ return true;
+}
#endif
void blk_timeout_work(struct work_struct *work);