From: Greg Kroah-Hartman Date: Tue, 22 Oct 2024 13:21:27 +0000 (+0200) Subject: drop queue-6.11/lib-alloc_tag_module_unload-must-wait-for-pending-kfree_rcu-calls... X-Git-Tag: v5.10.228~1 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=f985a309c2f75eb49d66288b9e73a5f089975a47;p=thirdparty%2Fkernel%2Fstable-queue.git drop queue-6.11/lib-alloc_tag_module_unload-must-wait-for-pending-kfree_rcu-calls.patch --- diff --git a/queue-6.11/lib-alloc_tag_module_unload-must-wait-for-pending-kfree_rcu-calls.patch b/queue-6.11/lib-alloc_tag_module_unload-must-wait-for-pending-kfree_rcu-calls.patch deleted file mode 100644 index 8362f1173c7..00000000000 --- a/queue-6.11/lib-alloc_tag_module_unload-must-wait-for-pending-kfree_rcu-calls.patch +++ /dev/null @@ -1,66 +0,0 @@ -From dc783ba4b9df3fb3e76e968b2cbeb9960069263c Mon Sep 17 00:00:00 2001 -From: Florian Westphal -Date: Mon, 7 Oct 2024 22:52:24 +0200 -Subject: lib: alloc_tag_module_unload must wait for pending kfree_rcu calls - -From: Florian Westphal - -commit dc783ba4b9df3fb3e76e968b2cbeb9960069263c upstream. - -Ben Greear reports following splat: - ------------[ cut here ]------------ - net/netfilter/nf_nat_core.c:1114 module nf_nat func:nf_nat_register_fn has 256 allocated at module unload - WARNING: CPU: 1 PID: 10421 at lib/alloc_tag.c:168 alloc_tag_module_unload+0x22b/0x3f0 - Modules linked in: nf_nat(-) btrfs ufs qnx4 hfsplus hfs minix vfat msdos fat -... - Hardware name: Default string Default string/SKYBAY, BIOS 5.12 08/04/2020 - RIP: 0010:alloc_tag_module_unload+0x22b/0x3f0 - codetag_unload_module+0x19b/0x2a0 - ? codetag_load_module+0x80/0x80 - -nf_nat module exit calls kfree_rcu on those addresses, but the free -operation is likely still pending by the time alloc_tag checks for leaks. - -Wait for outstanding kfree_rcu operations to complete before checking -resolves this warning. - -Reproducer: -unshare -n iptables-nft -t nat -A PREROUTING -p tcp -grep nf_nat /proc/allocinfo # will list 4 allocations -rmmod nft_chain_nat -rmmod nf_nat # will WARN. - -[akpm@linux-foundation.org: add comment] -Link: https://lkml.kernel.org/r/20241007205236.11847-1-fw@strlen.de -Fixes: a473573964e5 ("lib: code tagging module support") -Signed-off-by: Florian Westphal -Reported-by: Ben Greear -Closes: https://lore.kernel.org/netdev/bdaaef9d-4364-4171-b82b-bcfc12e207eb@candelatech.com/ -Cc: Uladzislau Rezki -Cc: Vlastimil Babka -Cc: Suren Baghdasaryan -Cc: Kent Overstreet -Cc: -Signed-off-by: Andrew Morton -Signed-off-by: Greg Kroah-Hartman ---- - lib/codetag.c | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/lib/codetag.c b/lib/codetag.c -index afa8a2d4f317..d1fbbb7c2ec3 100644 ---- a/lib/codetag.c -+++ b/lib/codetag.c -@@ -228,6 +228,9 @@ bool codetag_unload_module(struct module *mod) - if (!mod) - return true; - -+ /* await any module's kfree_rcu() operations to complete */ -+ kvfree_rcu_barrier(); -+ - mutex_lock(&codetag_lock); - list_for_each_entry(cttype, &codetag_types, link) { - struct codetag_module *found = NULL; --- -2.47.0 - diff --git a/queue-6.11/series b/queue-6.11/series index c4b71a60fd1..b30ee0128b4 100644 --- a/queue-6.11/series +++ b/queue-6.11/series @@ -21,7 +21,6 @@ selftests-mptcp-join-test-for-prohibited-mpc-to-port-based-endp.patch maple_tree-correct-tree-corruption-on-spanning-store.patch nilfs2-propagate-directory-read-errors-from-nilfs_find_entry.patch fat-fix-uninitialized-variable.patch -lib-alloc_tag_module_unload-must-wait-for-pending-kfree_rcu-calls.patch selftests-mm-replace-atomic_bool-with-pthread_barrier_t.patch selftests-mm-fix-deadlock-for-fork-after-pthread_create-on-arm.patch mm-mremap-fix-move_normal_pmd-retract_page_tables-race.patch