From: Greg Kroah-Hartman Date: Sun, 17 May 2026 13:37:35 +0000 (+0200) Subject: drop some sched patches that break the build X-Git-Tag: v6.6.140~2 X-Git-Url: http://git.ipfire.org/gitweb/index.cgi?a=commitdiff_plain;h=02026f9b33e3000d56449733388d928782fba29d;p=thirdparty%2Fkernel%2Fstable-queue.git drop some sched patches that break the build --- diff --git a/queue-6.12/sched_ext-use-hk_type_domain_boot-to-detect-isolcpus-domain-isolation.patch b/queue-6.12/sched_ext-use-hk_type_domain_boot-to-detect-isolcpus-domain-isolation.patch deleted file mode 100644 index 98a34d13a7..0000000000 --- a/queue-6.12/sched_ext-use-hk_type_domain_boot-to-detect-isolcpus-domain-isolation.patch +++ /dev/null @@ -1,76 +0,0 @@ -From 6ae315d37924435516d697ea7dde0b799a5928e0 Mon Sep 17 00:00:00 2001 -From: Andrea Righi -Date: Wed, 13 May 2026 13:24:38 +0200 -Subject: sched_ext: Use HK_TYPE_DOMAIN_BOOT to detect isolcpus= domain isolation - -From: Andrea Righi - -commit 6ae315d37924435516d697ea7dde0b799a5928e0 upstream. - -scx_enable() refuses to attach a BPF scheduler when isolcpus=domain is -in effect by comparing housekeeping_cpumask(HK_TYPE_DOMAIN) against -cpu_possible_mask. - -Since commit 27c3a5967f05 ("sched/isolation: Convert housekeeping -cpumasks to rcu pointers"), HK_TYPE_DOMAIN's cpumask is RCU protected -and dereferencing it requires either RCU read lock, the cpu_hotplug -write lock, or the cpuset lock; scx_enable() holds none of these, so -booting with isolcpus=domain and attaching any BPF scheduler triggers -the following lockdep splat: - - ============================= - WARNING: suspicious RCU usage - ----------------------------- - kernel/sched/isolation.c:60 suspicious rcu_dereference_check() usage! - - 1 lock held by scx_flash/281: - #0: ffffffff8379fce0 (update_mutex){+.+.}-{4:4}, at: - bpf_struct_ops_link_create+0x134/0x1c0 - - Call Trace: - dump_stack_lvl+0x6f/0xb0 - lockdep_rcu_suspicious.cold+0x37/0x70 - housekeeping_cpumask+0xcd/0xe0 - scx_enable.isra.0+0x17/0x120 - bpf_scx_reg+0x5e/0x80 - bpf_struct_ops_link_create+0x151/0x1c0 - __sys_bpf+0x1e4b/0x33c0 - __x64_sys_bpf+0x21/0x30 - do_syscall_64+0x117/0xf80 - entry_SYSCALL_64_after_hwframe+0x77/0x7f - -In addition, commit 03ff73510169 ("cpuset: Update HK_TYPE_DOMAIN cpumask -from cpuset") made HK_TYPE_DOMAIN include cpuset isolated partitions as -well, which means the current check also rejects BPF schedulers when a -cpuset partition is active. That contradicts the original intent of -commit 9f391f94a173 ("sched_ext: Disallow loading BPF scheduler if -isolcpus= domain isolation is in effect"), which explicitly noted that -cpuset partitions are honored through per-task cpumasks and should not -be rejected. - -Switch to housekeeping_enabled(HK_TYPE_DOMAIN_BOOT), which reads only -the housekeeping flag bit (no RCU dereference) and reflects exactly the -boot-time isolcpus= configuration that the error message refers to. - -Fixes: 27c3a5967f05 ("sched/isolation: Convert housekeeping cpumasks to rcu pointers") -Cc: stable@vger.kernel.org # v7.0+ -Signed-off-by: Andrea Righi -Signed-off-by: Tejun Heo -Acked-by: Frederic Weisbecker -Signed-off-by: Greg Kroah-Hartman ---- - kernel/sched/ext.c | 3 +-- - 1 file changed, 1 insertion(+), 2 deletions(-) - ---- a/kernel/sched/ext.c -+++ b/kernel/sched/ext.c -@@ -5521,8 +5521,7 @@ static int scx_ops_enable(struct sched_e - static DEFINE_MUTEX(helper_mutex); - struct scx_enable_cmd cmd; - -- if (!cpumask_equal(housekeeping_cpumask(HK_TYPE_DOMAIN), -- cpu_possible_mask)) { -+ if (housekeeping_enabled(HK_TYPE_DOMAIN_BOOT)) { - pr_err("sched_ext: Not compatible with \"isolcpus=\" domain isolation\n"); - return -EINVAL; - } diff --git a/queue-6.12/series b/queue-6.12/series index be104863d9..5b5867531c 100644 --- a/queue-6.12/series +++ b/queue-6.12/series @@ -98,7 +98,6 @@ batman-adv-stop-caching-unowned-originator-pointers-in-bat-iv.patch batman-adv-bla-prevent-use-after-free-when-deleting-claims.patch batman-adv-bla-only-purge-non-released-claims.patch batman-adv-bla-put-backbone-reference-on-failed-claim-hash-insert.patch -sched_ext-use-hk_type_domain_boot-to-detect-isolcpus-domain-isolation.patch usb-typec-tcpm-reset-internal-port-states-on-soft-reset-ams.patch usb-dwc3-move-guid-programming-after-phy-initialization.patch alsa-hda-cs35l56-propagate-asp-tx-source-control-errors.patch diff --git a/queue-6.18/sched-ext-implement-cgroup_set_idle-callback.patch b/queue-6.18/sched-ext-implement-cgroup_set_idle-callback.patch index a6e59a5cc5..7c98886083 100644 --- a/queue-6.18/sched-ext-implement-cgroup_set_idle-callback.patch +++ b/queue-6.18/sched-ext-implement-cgroup_set_idle-callback.patch @@ -75,7 +75,7 @@ Signed-off-by: Greg Kroah-Hartman } void scx_group_set_bandwidth(struct task_group *tg, -@@ -5125,6 +5137,7 @@ static void sched_ext_ops__cgroup_move(s +@@ -5126,6 +5138,7 @@ static void sched_ext_ops__cgroup_move(s static void sched_ext_ops__cgroup_cancel_move(struct task_struct *p, struct cgroup *from, struct cgroup *to) {} static void sched_ext_ops__cgroup_set_weight(struct cgroup *cgrp, u32 weight) {} static void sched_ext_ops__cgroup_set_bandwidth(struct cgroup *cgrp, u64 period_us, u64 quota_us, u64 burst_us) {} @@ -83,7 +83,7 @@ Signed-off-by: Greg Kroah-Hartman #endif static void sched_ext_ops__cpu_online(s32 cpu) {} static void sched_ext_ops__cpu_offline(s32 cpu) {} -@@ -5163,6 +5176,7 @@ static struct sched_ext_ops __bpf_ops_sc +@@ -5164,6 +5177,7 @@ static struct sched_ext_ops __bpf_ops_sc .cgroup_cancel_move = sched_ext_ops__cgroup_cancel_move, .cgroup_set_weight = sched_ext_ops__cgroup_set_weight, .cgroup_set_bandwidth = sched_ext_ops__cgroup_set_bandwidth, diff --git a/queue-6.18/sched_ext-use-hk_type_domain_boot-to-detect-isolcpus-domain-isolation.patch b/queue-6.18/sched_ext-use-hk_type_domain_boot-to-detect-isolcpus-domain-isolation.patch deleted file mode 100644 index 299e28bd96..0000000000 --- a/queue-6.18/sched_ext-use-hk_type_domain_boot-to-detect-isolcpus-domain-isolation.patch +++ /dev/null @@ -1,76 +0,0 @@ -From 6ae315d37924435516d697ea7dde0b799a5928e0 Mon Sep 17 00:00:00 2001 -From: Andrea Righi -Date: Wed, 13 May 2026 13:24:38 +0200 -Subject: sched_ext: Use HK_TYPE_DOMAIN_BOOT to detect isolcpus= domain isolation - -From: Andrea Righi - -commit 6ae315d37924435516d697ea7dde0b799a5928e0 upstream. - -scx_enable() refuses to attach a BPF scheduler when isolcpus=domain is -in effect by comparing housekeeping_cpumask(HK_TYPE_DOMAIN) against -cpu_possible_mask. - -Since commit 27c3a5967f05 ("sched/isolation: Convert housekeeping -cpumasks to rcu pointers"), HK_TYPE_DOMAIN's cpumask is RCU protected -and dereferencing it requires either RCU read lock, the cpu_hotplug -write lock, or the cpuset lock; scx_enable() holds none of these, so -booting with isolcpus=domain and attaching any BPF scheduler triggers -the following lockdep splat: - - ============================= - WARNING: suspicious RCU usage - ----------------------------- - kernel/sched/isolation.c:60 suspicious rcu_dereference_check() usage! - - 1 lock held by scx_flash/281: - #0: ffffffff8379fce0 (update_mutex){+.+.}-{4:4}, at: - bpf_struct_ops_link_create+0x134/0x1c0 - - Call Trace: - dump_stack_lvl+0x6f/0xb0 - lockdep_rcu_suspicious.cold+0x37/0x70 - housekeeping_cpumask+0xcd/0xe0 - scx_enable.isra.0+0x17/0x120 - bpf_scx_reg+0x5e/0x80 - bpf_struct_ops_link_create+0x151/0x1c0 - __sys_bpf+0x1e4b/0x33c0 - __x64_sys_bpf+0x21/0x30 - do_syscall_64+0x117/0xf80 - entry_SYSCALL_64_after_hwframe+0x77/0x7f - -In addition, commit 03ff73510169 ("cpuset: Update HK_TYPE_DOMAIN cpumask -from cpuset") made HK_TYPE_DOMAIN include cpuset isolated partitions as -well, which means the current check also rejects BPF schedulers when a -cpuset partition is active. That contradicts the original intent of -commit 9f391f94a173 ("sched_ext: Disallow loading BPF scheduler if -isolcpus= domain isolation is in effect"), which explicitly noted that -cpuset partitions are honored through per-task cpumasks and should not -be rejected. - -Switch to housekeeping_enabled(HK_TYPE_DOMAIN_BOOT), which reads only -the housekeeping flag bit (no RCU dereference) and reflects exactly the -boot-time isolcpus= configuration that the error message refers to. - -Fixes: 27c3a5967f05 ("sched/isolation: Convert housekeeping cpumasks to rcu pointers") -Cc: stable@vger.kernel.org # v7.0+ -Signed-off-by: Andrea Righi -Signed-off-by: Tejun Heo -Acked-by: Frederic Weisbecker -Signed-off-by: Greg Kroah-Hartman ---- - kernel/sched/ext.c | 3 +-- - 1 file changed, 1 insertion(+), 2 deletions(-) - ---- a/kernel/sched/ext.c -+++ b/kernel/sched/ext.c -@@ -4906,8 +4906,7 @@ static int scx_enable(struct sched_ext_o - static DEFINE_MUTEX(helper_mutex); - struct scx_enable_cmd cmd; - -- if (!cpumask_equal(housekeeping_cpumask(HK_TYPE_DOMAIN), -- cpu_possible_mask)) { -+ if (housekeeping_enabled(HK_TYPE_DOMAIN_BOOT)) { - pr_err("sched_ext: Not compatible with \"isolcpus=\" domain isolation\n"); - return -EINVAL; - } diff --git a/queue-6.18/series b/queue-6.18/series index 2a9c42435f..64234db06a 100644 --- a/queue-6.18/series +++ b/queue-6.18/series @@ -140,7 +140,6 @@ batman-adv-stop-caching-unowned-originator-pointers-in-bat-iv.patch batman-adv-bla-prevent-use-after-free-when-deleting-claims.patch batman-adv-bla-only-purge-non-released-claims.patch batman-adv-bla-put-backbone-reference-on-failed-claim-hash-insert.patch -sched_ext-use-hk_type_domain_boot-to-detect-isolcpus-domain-isolation.patch io_uring-zcrx-use-guards-for-locking.patch io_uring-zcrx-warn-on-freelist-violations.patch loongarch-kvm-compile-switch.s-directly-into-the-kernel.patch