Coly Li f2dc7c
From b7f362d6413ebd0167ac5a9f09ad5dca5490ac1a Mon Sep 17 00:00:00 2001
Coly Li f2dc7c
From: Mikulas Patocka <mpatocka@redhat.com>
Coly Li f2dc7c
Date: Mon, 8 Aug 2022 10:50:10 -0400
Coly Li f2dc7c
Subject: [PATCH] dm writecache: fix smatch warning about invalid return from
Coly Li f2dc7c
 writecache_map
Coly Li f2dc7c
Git-commit: b7f362d6413ebd0167ac5a9f09ad5dca5490ac1a
Coly Li f2dc7c
Patch-mainline: v6.0-rc1
Coly Li f2dc7c
References: jsc#PED-2765
Coly Li f2dc7c
Coly Li f2dc7c
There's a smatch warning "inconsistent returns '&wc->lock'" in
Coly Li f2dc7c
dm-writecache. The reason for the warning is that writecache_map()
Coly Li f2dc7c
doesn't drop the lock on the impossible path.
Coly Li f2dc7c
Coly Li f2dc7c
Fix this warning by adding wc_unlock() after the BUG statement (so
Coly Li f2dc7c
that it will be compiled-away anyway).
Coly Li f2dc7c
Coly Li f2dc7c
Fixes: df699cc16ea5e ("dm writecache: report invalid return from writecache_map helpers")
Coly Li f2dc7c
Reported-by: kernel test robot <lkp@intel.com>
Coly Li f2dc7c
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Coly Li f2dc7c
Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Coly Li f2dc7c
Signed-off-by: Mike Snitzer <snitzer@kernel.org>
Coly Li f2dc7c
Signed-off-by: Coly Li <colyli@suse.de>
Coly Li f2dc7c
Coly Li f2dc7c
---
Coly Li f2dc7c
 drivers/md/dm-writecache.c | 3 ++-
Coly Li f2dc7c
 1 file changed, 2 insertions(+), 1 deletion(-)
Coly Li f2dc7c
Coly Li f2dc7c
diff --git a/drivers/md/dm-writecache.c b/drivers/md/dm-writecache.c
Coly Li f2dc7c
index ead008ea38f2..03fe2c5d5e32 100644
Coly Li f2dc7c
--- a/drivers/md/dm-writecache.c
Coly Li f2dc7c
+++ b/drivers/md/dm-writecache.c
Coly Li f2dc7c
@@ -1598,7 +1598,8 @@ static int writecache_map(struct dm_target *ti, struct bio *bio)
Coly Li f2dc7c
 
Coly Li f2dc7c
 	default:
Coly Li f2dc7c
 		BUG();
Coly Li f2dc7c
-		return -1;
Coly Li f2dc7c
+		wc_unlock(wc);
Coly Li f2dc7c
+		return DM_MAPIO_KILL;
Coly Li f2dc7c
 	}
Coly Li f2dc7c
 }
Coly Li f2dc7c
 
Coly Li f2dc7c
-- 
Coly Li f2dc7c
2.35.3
Coly Li f2dc7c