On Wed, 30 Apr 2025, Dan Carpenter wrote: > On Wed, Apr 30, 2025 at 09:50:37AM -0700, Eric Biggers wrote: > > On Wed, Apr 30, 2025 at 11:05:54AM +0300, Dan Carpenter wrote: > > > We need to call dm_put_live_table() even if dm_get_live_table() returns > > > NULL. > > > > > > Fixes: 9355a9eb21a5 ("dm: support key eviction from keyslot managers of underlying devices") > > > Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx> > > > --- > > > drivers/md/dm-table.c | 3 ++- > > > 1 file changed, 2 insertions(+), 1 deletion(-) > > > > > > > Reviewed-by: Eric Biggers <ebiggers@xxxxxxxxxx> > > > > But that's an awfully error-prone API. > > Yep. > > > > > dm_blk_report_zones() gets this wrong too. > > Ugh... dm_blk_report_zones() is too weird for my static checker tool. > The checker is looking very specifically for error paths with missing > unlocks. Ben already tried to fix it in dm_blk_report_zones (see the linux-dm git, for-next branch) - but his fix is incorrect because the "if" condition for dm_get_live_table and dm_put_live_table differs. I'll update his patch to fix this mismatch. Mikulas > regards, > dan carpenter >