FAILED: patch "[PATCH] dm: add missing unlock on in dm_keyslot_evict()" failed to apply to 5.12-stable tree
Subsystems (2)
[email protected]
maintainerThe patch below does not apply to the 5.12-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.
To reproduce the conflict and resubmit, you may use the following commands:
git fetch https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/ linux-5.12.y
git checkout FETCH_HEAD
git cherry-pick -x 650266ac4c7230c89bcd1307acf5c9c92cfa85e2
# <resolve conflicts, build, test, etc.>
git commit -s
git send-email --to '<[email protected]>' --in-reply-to '2025050954-excretion-yonder-4e95@gregkh' --subject-prefix 'PATCH 5.12.y' HEAD^..
Possible dependencies:
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From 650266ac4c7230c89bcd1307acf5c9c92cfa85e2 Mon Sep 17 00:00:00 2001
From: Dan Carpenter <[email protected]>
Date: Wed, 30 Apr 2025 11:05:54 +0300
Subject: [PATCH] dm: add missing unlock on in dm_keyslot_evict()
We need to call dm_put_live_table() even if dm_get_live_table() returns NULL.
drivers/md/dm-table.c +2 -1
@@ -1173,7 +1173,7 @@ static int dm_keyslot_evict(struct blk_crypto_profile *profile, t =dm_get_live_table (md, &srcu_idx);if (!t) -return 0 ; + goto put_live_table;for (unsigned int i =0 ; i < t->num_targets; i++) {struct dm_target *ti =dm_table_get_target (t, i);
@@ -1184,6 +1184,7 @@ static int dm_keyslot_evict(struct blk_crypto_profile *profile, (void *)key); } +put_live_table:dm_put_live_table (md, srcu_idx);return 0 ; }
Mikulas Patocka
maintainerPATCH 1/1 dm: add missing unlock on in dm_keyslot_evict()
Hi
Here I'm submitting updated patch.
Mikulas
Quoted 53 lines · On Fri, 9 May 2025, [email protected] wrote:
The patch below does not apply to the 5.12-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.To reproduce the conflict and resubmit, you may use the following commands:
git fetch https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/ linux-5.12.y
git checkoutFETCH_HEAD
git cherry-pick -x650266ac4c7230c89bcd1307acf5c9c92cfa85e2
# <resolve conflicts, build, test, etc.>
git commit -s
git send-email --to '<[email protected]>' --in-reply-to '2025050954-excretion-yonder-4e95@gregkh' --subject-prefix 'PATCH 5.12.y' HEAD^..Possible dependencies:
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
Quoted 1 line
From
650266ac4c7230c89bcd1307acf5c9c92cfa85e2Mon Sep 17 00:00:00 2001From: Dan Carpenter <[email protected]>
Date: Wed, 30 Apr 2025 11:05:54 +0300
Subject: [PATCH] dm: add missing unlock on indm_keyslot_evict()We need to call
dm_put_live_table()even ifdm_get_live_table()returns NULL.Fixes 9355a9eb21a5 ("dm: support key eviction from keyslot managers of underlying devices")Cc [email protected] # v5.12+Signed-off-by Dan Carpenter <[email protected]>Signed-off-by Mikulas Patocka <[email protected]>drivers/md/dm-table.c +1
-1@@ -1173,7 +1173,7 @@ static int dm_keyslot_evict(struct blk_crypto_profile *profile, t =dm_get_live_table (md, &srcu_idx);if (!t) -return 0 ; + goto put_live_table;for (unsigned int i =0 ; i < t->num_targets; i++) {struct dm_target *ti =dm_table_get_target (t, i);
drivers/md/dm-table.c static int dm_keyslot_evict(struct blk_crypto_profile *profile, · line 1190
Quoted 7 lines
drivers/md/dm-table.c +1
-0@@ -1184,6 +1184,7 @@ static int dm_keyslot_evict(struct blk_crypto_profile *profile, (void *)key); } +put_live_table:dm_put_live_table (md, srcu_idx);return 0 ; }
We need to call dm_put_live_table() even if dm_get_live_table() returns NULL.
--- drivers/md/dm-table.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
drivers/md/dm-table.c +2 -1
@@ -1251,13 +1251,14 @@ static int dm_keyslot_evict(struct blk_k t =dm_get_live_table (md, &srcu_idx);if (!t) -return 0 ; + goto put_live_table;for (i =0 ; i <dm_table_get_num_targets (t); i++) { ti =dm_table_get_target (t, i);if (!ti->type->iterate_devices)continue ; ti->type->iterate_devices (ti, dm_keyslot_evict_callback, &args); } +put_live_table:dm_put_live_table (md, srcu_idx);return args.err; }
Greg KH
maintainerRe: [PATCH 5.12.y] dm: add missing unlock on in dm_keyslot_evict()
Quoted 92 lines · Mikulas Patocka
Hi
Here I'm submitting updated patch.
Mikulas
Quoted 53 lines · On Fri, 9 May 2025, [email protected] wrote:
The patch below does not apply to the 5.12-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.To reproduce the conflict and resubmit, you may use the following commands:
git fetch https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/ linux-5.12.y
git checkoutFETCH_HEAD
git cherry-pick -x650266ac4c7230c89bcd1307acf5c9c92cfa85e2
# <resolve conflicts, build, test, etc.>
git commit -s
git send-email --to '<[email protected]>' --in-reply-to '2025050954-excretion-yonder-4e95@gregkh' --subject-prefix 'PATCH 5.12.y' HEAD^..Possible dependencies:
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
Quoted 1 line
From
650266ac4c7230c89bcd1307acf5c9c92cfa85e2Mon Sep 17 00:00:00 2001From: Dan Carpenter <[email protected]>
Date: Wed, 30 Apr 2025 11:05:54 +0300
Subject: [PATCH] dm: add missing unlock on indm_keyslot_evict()We need to call
dm_put_live_table()even ifdm_get_live_table()returns NULL.Fixes 9355a9eb21a5 ("dm: support key eviction from keyslot managers of underlying devices")Cc [email protected] # v5.12+Signed-off-by Dan Carpenter <[email protected]>Signed-off-by Mikulas Patocka <[email protected]>drivers/md/dm-table.c +1
-1@@ -1173,7 +1173,7 @@ static int dm_keyslot_evict(struct blk_crypto_profile *profile, t =dm_get_live_table (md, &srcu_idx);if (!t) -return 0 ; + goto put_live_table;for (unsigned int i =0 ; i < t->num_targets; i++) {struct dm_target *ti =dm_table_get_target (t, i);drivers/md/dm-table.c static int dm_keyslot_evict(struct blk_crypto_profile *profile, · line 1190
Quoted 7 lines
drivers/md/dm-table.c +1
-0@@ -1184,6 +1184,7 @@ static int dm_keyslot_evict(struct blk_crypto_profile *profile, (void *)key); } +put_live_table:dm_put_live_table (md, srcu_idx);return 0 ; }We need to call
dm_put_live_table()even ifdm_get_live_table()returns NULL.Fixes 9355a9eb21a5 ("dm: support key eviction from keyslot managers of underlying devices")Cc [email protected] # v5.12+Signed-off-by Dan Carpenter <[email protected]>Signed-off-by Mikulas Patocka <[email protected]>--- drivers/md/dm-table.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)Index:
linux-stable/drivers/md/dm-table.c
===================================================================drivers/md/dm-table.c +1
-1@@ -1251,13 +1251,14 @@ static int dm_keyslot_evict(struct blk_k t =dm_get_live_table (md, &srcu_idx);if (!t) -return 0 ; + goto put_live_table;
drivers/md/dm-table.c static int dm_keyslot_evict(struct blk_k · line 1264
Quoted 10 lines
drivers/md/dm-table.c +1
-0for (i =0 ; i <dm_table_get_num_targets (t); i++) { ti =dm_table_get_target (t, i);if (!ti->type->iterate_devices)continue ; ti->type->iterate_devices (ti, dm_keyslot_evict_callback, &args); } +put_live_table:dm_put_live_table (md, srcu_idx);return args.err; }
Sorry, I don't know why I said 5.12, this should be for 5.15, can you fix it up and send a version for that tree?
thanks,
greg k-h