diff --git a/block/blk-mq.c b/block/blk-mq.c index f1e63c2ece71ce66e5e4045733e0a159d4a25b85..cee96234bf589393c464b491ea27a2495b1d889e 100644 --- a/block/blk-mq.c +++ b/block/blk-mq.c @@ -922,6 +922,11 @@ static void blk_mq_make_request(struct request_queue *q, struct bio *bio) blk_queue_bounce(q, &bio); + if (bio_integrity_enabled(bio) && bio_integrity_prep(bio)) { + bio_endio(bio, -EIO); + return; + } + if (use_plug && blk_attempt_plug_merge(q, bio, &request_count)) return;