summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--block/blk-core.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/block/blk-core.c b/block/blk-core.c
index 54e442ba44aa..b5776c1fd52a 100644
--- a/block/blk-core.c
+++ b/block/blk-core.c
@@ -1885,7 +1885,7 @@ static int blk_end_io(struct request *rq, int error, unsigned int nr_bytes,
 	struct request_queue *q = rq->q;
 	unsigned long flags = 0UL;
 
-	if (blk_fs_request(rq) || blk_pc_request(rq)) {
+	if (bio_has_data(rq->bio)) {
 		if (__end_that_request_first(rq, error, nr_bytes))
 			return 1;
 
@@ -1943,10 +1943,9 @@ EXPORT_SYMBOL_GPL(blk_end_request);
  **/
 int __blk_end_request(struct request *rq, int error, unsigned int nr_bytes)
 {
-	if (blk_fs_request(rq) || blk_pc_request(rq)) {
-		if (__end_that_request_first(rq, error, nr_bytes))
-			return 1;
-	}
+	if (bio_has_data(rq->bio) &&
+	    __end_that_request_first(rq, error, nr_bytes))
+		return 1;
 
 	add_disk_randomness(rq->rq_disk);