From: Greg Kroah-Hartman Date: Tue, 16 Jun 2026 04:18:13 +0000 (+0530) Subject: drop duplicate 6.12 patch X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=1840b328f909d918a862fc083fe152ae6f2adf32;p=thirdparty%2Fkernel%2Fstable-queue.git drop duplicate 6.12 patch --- diff --git a/queue-6.12/mm-hugetlb-avoid-false-positive-lockdep-assertion.patch b/queue-6.12/mm-hugetlb-avoid-false-positive-lockdep-assertion.patch index aa6fc32068..d988e369ba 100644 --- a/queue-6.12/mm-hugetlb-avoid-false-positive-lockdep-assertion.patch +++ b/queue-6.12/mm-hugetlb-avoid-false-positive-lockdep-assertion.patch @@ -152,14 +152,12 @@ Signed-off-by: Andrew Morton Signed-off-by: Lorenzo Stoakes Signed-off-by: Sasha Levin --- - mm/hugetlb.c | 57 ++++++++++++++++++++++++++++++++++------------------ + mm/hugetlb.c | 57 +++++++++++++++++++++++++++++++++++++-------------------- 1 file changed, 37 insertions(+), 20 deletions(-) -diff --git a/mm/hugetlb.c b/mm/hugetlb.c -index 0f0b9483df6328..75ab83bfec9379 100644 --- a/mm/hugetlb.c +++ b/mm/hugetlb.c -@@ -86,6 +86,9 @@ static int hugetlb_acct_memory(struct hstate *h, long delta); +@@ -86,6 +86,9 @@ static int hugetlb_acct_memory(struct hs static void hugetlb_vma_lock_free(struct vm_area_struct *vma); static void hugetlb_vma_lock_alloc(struct vm_area_struct *vma); static void __hugetlb_vma_unlock_write_free(struct vm_area_struct *vma); @@ -169,7 +167,7 @@ index 0f0b9483df6328..75ab83bfec9379 100644 static void hugetlb_unshare_pmds(struct vm_area_struct *vma, unsigned long start, unsigned long end, bool take_locks); static struct resv_map *vma_resv_map(struct vm_area_struct *vma); -@@ -7225,6 +7228,31 @@ pte_t *huge_pmd_share(struct mm_struct *mm, struct vm_area_struct *vma, +@@ -7225,6 +7228,31 @@ out: return pte; } @@ -201,7 +199,7 @@ index 0f0b9483df6328..75ab83bfec9379 100644 /** * huge_pmd_unshare - Unmap a pmd table if it is shared by multiple users * @tlb: the current mmu_gather. -@@ -7244,25 +7272,7 @@ pte_t *huge_pmd_share(struct mm_struct *mm, struct vm_area_struct *vma, +@@ -7244,25 +7272,7 @@ out: int huge_pmd_unshare(struct mmu_gather *tlb, struct vm_area_struct *vma, unsigned long addr, pte_t *ptep) { @@ -228,7 +226,7 @@ index 0f0b9483df6328..75ab83bfec9379 100644 } /* -@@ -7296,6 +7306,13 @@ pte_t *huge_pmd_share(struct mm_struct *mm, struct vm_area_struct *vma, +@@ -7296,6 +7306,13 @@ pte_t *huge_pmd_share(struct mm_struct * return NULL; } @@ -242,7 +240,7 @@ index 0f0b9483df6328..75ab83bfec9379 100644 int huge_pmd_unshare(struct mmu_gather *tlb, struct vm_area_struct *vma, unsigned long addr, pte_t *ptep) { -@@ -7566,7 +7583,7 @@ static void hugetlb_unshare_pmds(struct vm_area_struct *vma, +@@ -7555,7 +7572,7 @@ static void hugetlb_unshare_pmds(struct if (!ptep) continue; ptl = huge_pte_lock(h, mm, ptep); @@ -251,6 +249,3 @@ index 0f0b9483df6328..75ab83bfec9379 100644 spin_unlock(ptl); } huge_pmd_unshare_flush(&tlb, vma); --- -2.53.0 - diff --git a/queue-6.12/sched_ext-don-t-warn-on-null-cgrp_moving_from-in-scx.patch b/queue-6.12/sched_ext-don-t-warn-on-null-cgrp_moving_from-in-scx.patch deleted file mode 100644 index 8e5e918889..0000000000 --- a/queue-6.12/sched_ext-don-t-warn-on-null-cgrp_moving_from-in-scx.patch +++ /dev/null @@ -1,76 +0,0 @@ -From 3f543974aae8ef708c658233a113e6a721d18d34 Mon Sep 17 00:00:00 2001 -From: Sasha Levin -Date: Mon, 15 Jun 2026 13:37:30 -0400 -Subject: sched_ext: Don't warn on NULL cgrp_moving_from in - scx_cgroup_move_task() - -From: Tejun Heo - -[ Upstream commit 02e545c4297a26dbbc41df81b831e7f605bcd306 ] - -A WARN fires when systemd's user manager writes "+cpu +memory +pids" to -its own subtree_control while a sched_ext scheduler is loaded: - - WARNING: at kernel/sched/ext.c:3227 scx_cgroup_move_task+0xa8/0xb0 - scx_cgroup_move_task+0xa8/0xb0 - sched_move_task+0x134/0x290 - cpu_cgroup_attach+0x39/0x70 - cgroup_migrate_execute+0x37d/0x450 - cgroup_update_dfl_csses+0x1e3/0x270 - cgroup_subtree_control_write+0x3e7/0x440 - -scx_cgroup_can_attach() arms cgrp_moving_from only when a task's cpu -cgroup changes. It can still be NULL when scx_cgroup_move_task() runs, -through this sequence: - - Step Result - --------------------------------- ---------------------------------- - 1. cpu enabled on cgroup G cpu css = A - 2. cpu toggled off then on for G A killed, B created (same cgroup) - 3. an exiting task keeps A alive migration skips it, A now stale - 4. +memory migrates G stale A vs current B pulls cpu in - 5. cpu attach runs for all tasks hits a live, cpu-unchanged task - 6. scx_cgroup_move_task() on it cgrp_moving_from NULL -> WARN - -The mismatch is that scx_cgroup_can_attach() keys on cgroup identity -while migration drives the move on css identity, so a NULL cgrp_moving_from -here is a legitimate css-only migration, not a missing prep. - -The call is already gated on cgrp_moving_from, so just drop the warning. -ops.cgroup_prep_move() and ops.cgroup_move() stay paired. - -Fixes: 819513666966 ("sched_ext: Add cgroup support") -Cc: stable@vger.kernel.org # v6.12+ -Reported-by: Matt Fleming -Closes: https://lore.kernel.org/all/20260601124156.2205704-1-mfleming@cloudflare.com/ -Signed-off-by: Tejun Heo -Reviewed-by: Andrea Righi -Signed-off-by: Sasha Levin ---- - kernel/sched/ext.c | 9 ++++++--- - 1 file changed, 6 insertions(+), 3 deletions(-) - -diff --git a/kernel/sched/ext.c b/kernel/sched/ext.c -index 01dc2a613868fc..428cde37130dfc 100644 ---- a/kernel/sched/ext.c -+++ b/kernel/sched/ext.c -@@ -4069,10 +4069,13 @@ void scx_cgroup_move_task(struct task_struct *p) - return; - - /* -- * @p must have ops.cgroup_prep_move() called on it and thus -- * cgrp_moving_from set. -+ * scx_cgroup_can_attach() sets cgrp_moving_from only when the task's -+ * cgroup changes. Migration keys off css rather than cgroup identity, -+ * so it can hand an unchanged-cgroup task here with cgrp_moving_from -+ * NULL. Nothing to report to the BPF scheduler then, so skip it and -+ * keep prep_move and move paired. - */ -- if (SCX_HAS_OP(cgroup_move) && !WARN_ON_ONCE(!p->scx.cgrp_moving_from)) -+ if (SCX_HAS_OP(cgroup_move) && p->scx.cgrp_moving_from) - SCX_CALL_OP_TASK(SCX_KF_UNLOCKED, cgroup_move, p, - p->scx.cgrp_moving_from, tg_cgrp(task_group(p))); - p->scx.cgrp_moving_from = NULL; --- -2.53.0 - diff --git a/queue-6.12/series b/queue-6.12/series index f9caf864dc..8ebc55df40 100644 --- a/queue-6.12/series +++ b/queue-6.12/series @@ -242,4 +242,3 @@ rdma-umem-fix-kernel-doc-warnings.patch rdma-move-dma-block-iterator-logic-into-dedicated-files.patch rdma-umem-fix-truncation-for-block-sizes-4g.patch mm-hugetlb-avoid-false-positive-lockdep-assertion.patch -sched_ext-don-t-warn-on-null-cgrp_moving_from-in-scx.patch