From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id DB1913E714E for ; Tue, 3 Mar 2026 21:35:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772573728; cv=none; b=NsrZy1mXGXTYGFTUhmxS26XCbEmMGdzmImuCNNTfDCR961w4XBZRx90lvh8TpRZko7iFlXeSgfLk/HaAfs3IKi7EZuEoFjnenIAAiYTUmxzNyeW1O/3Erb0RJMiIeSfMQOwaCek1DtyHXbdQTn1qqTDRGuHimKT28RRby5VFyMk= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772573728; c=relaxed/simple; bh=pq9CIdTS4ovx7kHShntcZW5cZHau6MyNyOtkrqFRA2k=; h=Date:Message-ID:From:To:Cc:Subject; b=mNdkFMS+SJcFkvM8Iu13i9fsv8SuR4LAy2/3r6v8ghSbv7oaw1xuUASAnpC9hl1sMki+lvCAkssix/TKuNHc/VtdK92XxWhKVHqE9HenSpdAi7/TBKux9+lF/Hx5/cG8txhCJY4/xYPSlCagxLcaNQarAuarCH5+dL18S2hMzu0= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=cYfxQxMx; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="cYfxQxMx" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 725D6C116C6; Tue, 3 Mar 2026 21:35:28 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1772573728; bh=pq9CIdTS4ovx7kHShntcZW5cZHau6MyNyOtkrqFRA2k=; h=Date:From:To:Cc:Subject:From; b=cYfxQxMxnSG7rnRJFdQe1BGTJJNeieyNm0JV6gT6ItRxt+z3WtuqHXtQI6WQe1Bhl I7Vvu2auaqFZPo4juqU5+1OrWWTh6l/v41izznURmfiQvjgK13fCAQLlXV5J33uPhT ejEaqAHh4qxnf2OpVCKQwLRrYaEBvK9p5y9rNE6+79vzPW5ZvD7pQgPlXmaSFotkQV xwFKzGKmAQe9Qm9Mwh4+PzzK8meNqghKwefelMEsd3WX3PurGwunSE619e/t/BV7kD k+85f4OYTo3EVyFtdDBDT+nQRAcdJ3Y/BKH8CaFvB0M/tt7uacRoAHq0F9DHZVw7+5 eZlQE+/qRpODw== Date: Tue, 03 Mar 2026 11:35:27 -1000 Message-ID: From: Tejun Heo To: Linus Torvalds Cc: David Vernet , Andrea Righi , Changwoo Min , Emil Tsalapatis , linux-kernel@vger.kernel.org Subject: [GIT PULL] sched_ext: Fixes for v7.0-rc2 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Hello, The following changes since commit 640c9dc72f21f325700a4b0f839ad568ff21c697: tools/sched_ext: fix getopt not re-parsed on restart (2026-02-20 17:17:38 -1000) are available in the Git repository at: https://git.kernel.org/pub/scm/linux/kernel/git/tj/sched_ext.git tags/sched_ext-for-7.0-rc2-fixes for you to fetch changes up to b06ccbabe2506fd70b9167a644978b049150224a: sched_ext: Fix starvation of scx_enable() under fair-class saturation (2026-03-03 11:10:40 -1000) Note: There's a merge conflict in kernel/sched/ext_idle.c between 189f164e573e ("Convert remaining multi-line kmalloc_obj/flex GFP_KERNEL uses") from the slab tree and 2a064262eb37 ("sched_ext: Fix out-of-bounds access in scx_idle_init_masks()") from this pull. The former converts kcalloc() to kzalloc_objs() and the latter changes num_possible_nodes() to nr_node_ids. The resolution is to take both: /* before (master) */ scx_idle_node_masks = kzalloc_objs(*scx_idle_node_masks, num_possible_nodes()); /* after (resolved) */ scx_idle_node_masks = kzalloc_objs(*scx_idle_node_masks, nr_node_ids); A test-merge branch is available at: https://git.kernel.org/pub/scm/linux/kernel/git/tj/sched_ext.git test-merge-for-7.0-rc2-fixes ---------------------------------------------------------------- sched_ext: Fixes for v7.0-rc2 - Fix starvation of scx_enable() under fair-class saturation by offloading the enable path to an RT kthread. - Fix out-of-bounds access in idle mask initialization on systems with non-contiguous NUMA node IDs. - Fix a preemption window during scheduler exit and a refcount underflow in cgroup init error path. - Fix SCX_EFLAG_INITIALIZED being a no-op flag. - Add READ_ONCE() annotations for KCSAN-clean lockless accesses and replace naked scx_root dereferences with container_of() in kobject callbacks. - Tooling and selftest fixes: compilation issues with clang 17, strtoul() misuse, unused options cleanup, and Kconfig sync. ---------------------------------------------------------------- Cheng-Yang Chou (8): selftests/sched_ext: Abort test loop on signal selftests/sched_ext: Fix unused-result warning for read() tools/sched_ext: scx_central: Remove unused '-p' option tools/sched_ext: scx_sdt: Remove unused '-f' option selftests/sched_ext: Remove duplicated unistd.h include in rt_stall.c tools/sched_ext: Sync README.md Kconfig with upstream scx tools/sched_ext: Add Kconfig to sync with upstream sched_ext: Remove redundant css_put() in scx_cgroup_init() David Carlier (3): sched_ext: Fix out-of-bounds access in scx_idle_init_masks() sched_ext: Fix SCX_EFLAG_INITIALIZED being a no-op flag tools/sched_ext: fix strtoul() misuse in scx_hotplug_seq() Tejun Heo (2): sched_ext: Disable preemption between scx_claim_exit() and kicking helper work sched_ext: Fix starvation of scx_enable() under fair-class saturation Zhao Mengmeng (3): tools/sched_ext: Add -fms-extensions to bpf build flags selftests/sched_ext: Add -fms-extensions to bpf build flags selftests/sched_ext: Fix peek_dsq.bpf.c compile error for clang 17 zhidao su (3): sched_ext: Use READ_ONCE() for the read side of dsq->nr update sched_ext: Replace naked scx_root dereferences in kobject callbacks sched_ext: Use READ_ONCE() for plain reads of scx_watchdog_timeout kernel/sched/ext.c | 101 +++++++++++++++++---- kernel/sched/ext_idle.c | 4 +- kernel/sched/ext_internal.h | 2 +- tools/sched_ext/Kconfig | 61 +++++++++++++ tools/sched_ext/Makefile | 2 + tools/sched_ext/README.md | 6 -- tools/sched_ext/include/scx/compat.h | 7 +- tools/sched_ext/scx_central.c | 2 +- tools/sched_ext/scx_sdt.c | 2 +- tools/testing/selftests/sched_ext/Makefile | 2 + .../selftests/sched_ext/init_enable_count.c | 3 +- tools/testing/selftests/sched_ext/peek_dsq.bpf.c | 4 +- tools/testing/selftests/sched_ext/rt_stall.c | 1 - tools/testing/selftests/sched_ext/runner.c | 3 + 14 files changed, 165 insertions(+), 35 deletions(-) create mode 100644 tools/sched_ext/Kconfig Thanks. -- tejun