From: Greg Kroah-Hartman Date: Fri, 28 Mar 2025 14:49:14 +0000 (+0100) Subject: drop queue-6.6/memcg-drain-obj-stock-on-cpu-hotplug-teardown.patch X-Git-Tag: v6.1.132~1 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=4d8441cc2fe03517c57587a50b3523653214adda;p=thirdparty%2Fkernel%2Fstable-queue.git drop queue-6.6/memcg-drain-obj-stock-on-cpu-hotplug-teardown.patch --- diff --git a/queue-6.6/memcg-drain-obj-stock-on-cpu-hotplug-teardown.patch b/queue-6.6/memcg-drain-obj-stock-on-cpu-hotplug-teardown.patch deleted file mode 100644 index e0e6fc33e6..0000000000 --- a/queue-6.6/memcg-drain-obj-stock-on-cpu-hotplug-teardown.patch +++ /dev/null @@ -1,50 +0,0 @@ -From 9f01b4954490d4ccdbcc2b9be34a9921ceee9cbb Mon Sep 17 00:00:00 2001 -From: Shakeel Butt -Date: Mon, 10 Mar 2025 16:09:34 -0700 -Subject: memcg: drain obj stock on cpu hotplug teardown - -From: Shakeel Butt - -commit 9f01b4954490d4ccdbcc2b9be34a9921ceee9cbb upstream. - -Currently on cpu hotplug teardown, only memcg stock is drained but we -need to drain the obj stock as well otherwise we will miss the stats -accumulated on the target cpu as well as the nr_bytes cached. The stats -include MEMCG_KMEM, NR_SLAB_RECLAIMABLE_B & NR_SLAB_UNRECLAIMABLE_B. In -addition we are leaking reference to struct obj_cgroup object. - -Link: https://lkml.kernel.org/r/20250310230934.2913113-1-shakeel.butt@linux.dev -Fixes: bf4f059954dc ("mm: memcg/slab: obj_cgroup API") -Signed-off-by: Shakeel Butt -Reviewed-by: Roman Gushchin -Acked-by: Johannes Weiner -Cc: Michal Hocko -Cc: Muchun Song -Cc: -Signed-off-by: Andrew Morton -Signed-off-by: Greg Kroah-Hartman ---- - mm/memcontrol.c | 9 +++++++++ - 1 file changed, 9 insertions(+) - ---- a/mm/memcontrol.c -+++ b/mm/memcontrol.c -@@ -2378,9 +2378,18 @@ static void drain_all_stock(struct mem_c - static int memcg_hotplug_cpu_dead(unsigned int cpu) - { - struct memcg_stock_pcp *stock; -+ struct obj_cgroup *old; -+ unsigned long flags; - - stock = &per_cpu(memcg_stock, cpu); -+ -+ /* drain_obj_stock requires stock_lock */ -+ local_lock_irqsave(&memcg_stock.stock_lock, flags); -+ old = drain_obj_stock(stock); -+ local_unlock_irqrestore(&memcg_stock.stock_lock, flags); -+ - drain_stock(stock); -+ obj_cgroup_put(old); - - return 0; - } diff --git a/queue-6.6/series b/queue-6.6/series index bc34b456e2..ef1d972de8 100644 --- a/queue-6.6/series +++ b/queue-6.6/series @@ -44,7 +44,6 @@ mmc-atmel-mci-add-missing-clk_disable_unprepare.patch mm-fix-error-handling-in-__filemap_get_folio-with-fgp_nowait.patch mm-migrate-fix-shmem-xarray-update-during-migration.patch proc-fix-uaf-in-proc_get_inode.patch -memcg-drain-obj-stock-on-cpu-hotplug-teardown.patch arm-dts-imx6qdl-apalis-fix-poweroff-on-apalis-imx6.patch arm-shmobile-smp-enforce-shmobile_smp_-alignment.patch efi-libstub-avoid-physical-address-0x0-when-doing-random-allocation.patch