From: Greg Kroah-Hartman Date: Thu, 8 May 2025 11:25:18 +0000 (+0200) Subject: drop memcg-drain-obj-stock-on-cpu-hotplug-teardown.patch again... X-Git-Tag: v5.15.182~5 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=481ee6e578f83e79ba6e68db9a71d5b0f1c71b62;p=thirdparty%2Fkernel%2Fstable-queue.git drop memcg-drain-obj-stock-on-cpu-hotplug-teardown.patch again... --- diff --git a/queue-6.1/memcg-drain-obj-stock-on-cpu-hotplug-teardown.patch b/queue-6.1/memcg-drain-obj-stock-on-cpu-hotplug-teardown.patch deleted file mode 100644 index 63b931522d..0000000000 --- a/queue-6.1/memcg-drain-obj-stock-on-cpu-hotplug-teardown.patch +++ /dev/null @@ -1,55 +0,0 @@ -From 23250aec43b05632c5aa65fc4a8c7061677e49e2 Mon Sep 17 00:00:00 2001 -From: Sasha Levin -Date: Mon, 10 Mar 2025 16:09:34 -0700 -Subject: memcg: drain obj stock on cpu hotplug teardown - -From: Shakeel Butt - -[ Upstream commit 9f01b4954490d4ccdbcc2b9be34a9921ceee9cbb ] - -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: Sasha Levin ---- - mm/memcontrol.c | 9 +++++++++ - 1 file changed, 9 insertions(+) - -diff --git a/mm/memcontrol.c b/mm/memcontrol.c -index 3f7cab196eb62..8c586133abb7c 100644 ---- a/mm/memcontrol.c -+++ b/mm/memcontrol.c -@@ -2368,9 +2368,18 @@ static void drain_all_stock(struct mem_cgroup *root_memcg) - 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; - } --- -2.39.5 - diff --git a/queue-6.1/series b/queue-6.1/series index eec8f8c795..eff324b602 100644 --- a/queue-6.1/series +++ b/queue-6.1/series @@ -84,7 +84,6 @@ net-phy-microchip-force-irq-polling-mode-for-lan88xx.patch revert-drm-meson-vclk-fix-calculation-of-59.94-fract.patch irqchip-gic-v2m-mark-a-few-functions-__init.patch irqchip-gic-v2m-prevent-use-after-free-of-gicv2m_get.patch -memcg-drain-obj-stock-on-cpu-hotplug-teardown.patch riscv-uprobes-add-missing-fence.i-after-building-the.patch dm-fix-copying-after-src-array-boundaries.patch iommu-arm-smmu-v3-use-the-new-rb-tree-helpers.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 77734e42ee..0000000000 --- a/queue-6.6/memcg-drain-obj-stock-on-cpu-hotplug-teardown.patch +++ /dev/null @@ -1,55 +0,0 @@ -From 9c1fc2f90d2440c11a4a7b8c8940a953c427448c Mon Sep 17 00:00:00 2001 -From: Sasha Levin -Date: Mon, 10 Mar 2025 16:09:34 -0700 -Subject: memcg: drain obj stock on cpu hotplug teardown - -From: Shakeel Butt - -[ Upstream commit 9f01b4954490d4ccdbcc2b9be34a9921ceee9cbb ] - -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: Sasha Levin ---- - mm/memcontrol.c | 9 +++++++++ - 1 file changed, 9 insertions(+) - -diff --git a/mm/memcontrol.c b/mm/memcontrol.c -index 9bf5a69e20d87..ab9afcd372a93 100644 ---- a/mm/memcontrol.c -+++ b/mm/memcontrol.c -@@ -2378,9 +2378,18 @@ static void drain_all_stock(struct mem_cgroup *root_memcg) - 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; - } --- -2.39.5 - diff --git a/queue-6.6/series b/queue-6.6/series index a33f573464..443ee8b22f 100644 --- a/queue-6.6/series +++ b/queue-6.6/series @@ -116,7 +116,6 @@ xhci-add-helper-to-set-an-interrupters-interrupt-mod.patch usb-xhci-check-if-requested-segments-exceeds-erst-ca.patch xhci-support-setting-interrupt-moderation-imod-for-s.patch xhci-limit-time-spent-with-xhc-interrupts-disabled-d.patch -memcg-drain-obj-stock-on-cpu-hotplug-teardown.patch riscv-uprobes-add-missing-fence.i-after-building-the.patch kernel-param-rename-locate_module_kobject.patch kernel-globalize-lookup_or_create_module_kobject.patch