]> Pileus Git - ~andy/linux/blobdiff - drivers/s390/block/scm_blk.c
s390/scm_blk: fix endless loop for requests != REQ_TYPE_FS
[~andy/linux] / drivers / s390 / block / scm_blk.c
index 5d73e6e49af6c96cb9e97b60163485b1ba5dbb8b..548209a9c43c58ae687809d5da605f7b8e97184b 100644 (file)
@@ -223,8 +223,12 @@ static void scm_blk_request(struct request_queue *rq)
        int ret;
 
        while ((req = blk_peek_request(rq))) {
-               if (req->cmd_type != REQ_TYPE_FS)
+               if (req->cmd_type != REQ_TYPE_FS) {
+                       blk_start_request(req);
+                       blk_dump_rq_flags(req, KMSG_COMPONENT " bad request");
+                       blk_end_request_all(req, -EIO);
                        continue;
+               }
 
                if (!scm_permit_request(bdev, req)) {
                        scm_ensure_queue_restart(bdev);