Use a single switch-case to simplify is_abnormal_io() and make this
function more readable and easier to modify.

Signed-off-by: Damien Le Moal <[email protected]>
Reviewed-by: Christoph Hellwig <[email protected]>
---
 drivers/md/dm.c | 24 +++++++++++-------------
 1 file changed, 11 insertions(+), 13 deletions(-)

diff --git a/drivers/md/dm.c b/drivers/md/dm.c
index 7d107ae06e1a..0d80caccbd9e 100644
--- a/drivers/md/dm.c
+++ b/drivers/md/dm.c
@@ -1598,20 +1598,18 @@ static void __send_abnormal_io(struct clone_info *ci, 
struct dm_target *ti,
 
 static bool is_abnormal_io(struct bio *bio)
 {
-       enum req_op op = bio_op(bio);
-
-       if (op != REQ_OP_READ && op != REQ_OP_WRITE && op != REQ_OP_FLUSH) {
-               switch (op) {
-               case REQ_OP_DISCARD:
-               case REQ_OP_SECURE_ERASE:
-               case REQ_OP_WRITE_ZEROES:
-                       return true;
-               default:
-                       break;
-               }
+       switch (bio_op(bio)) {
+       case REQ_OP_READ:
+       case REQ_OP_WRITE:
+       case REQ_OP_FLUSH:
+               return false;
+       case REQ_OP_DISCARD:
+       case REQ_OP_SECURE_ERASE:
+       case REQ_OP_WRITE_ZEROES:
+               return true;
+       default:
+               return false;
        }
-
-       return false;
 }
 
 static blk_status_t __process_abnormal_io(struct clone_info *ci,
-- 
2.45.2


Reply via email to