[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ac065f1f-8754-4626-95db-2c9fcf02567b@nvidia.com>
Date: Mon, 24 Jun 2024 11:53:41 +0100
From: Jon Hunter <jonathanh@...dia.com>
To: Tejun Heo <tj@...nel.org>, torvalds@...ux-foundation.org,
mingo@...hat.com, peterz@...radead.org, juri.lelli@...hat.com,
vincent.guittot@...aro.org, dietmar.eggemann@....com, rostedt@...dmis.org,
bsegall@...gle.com, mgorman@...e.de, bristot@...hat.com,
vschneid@...hat.com, ast@...nel.org, daniel@...earbox.net,
andrii@...nel.org, martin.lau@...nel.org, joshdon@...gle.com,
brho@...gle.com, pjt@...gle.com, derkling@...gle.com, haoluo@...gle.com,
dvernet@...a.com, dschatzberg@...a.com, dskarlat@...cmu.edu,
riel@...riel.com, changwoo@...lia.com, himadrics@...ia.fr, memxor@...il.com,
andrea.righi@...onical.com, joel@...lfernandes.org
Cc: linux-kernel@...r.kernel.org, bpf@...r.kernel.org, kernel-team@...a.com,
"linux-tegra@...r.kernel.org" <linux-tegra@...r.kernel.org>
Subject: Re: [PATCH 10/30] sched_ext: Add scx_simple and scx_example_qmap
example schedulers
Hi Tejun,
On 18/06/2024 22:17, Tejun Heo wrote:
> Add two simple example BPF schedulers - simple and qmap.
>
> * simple: In terms of scheduling, it behaves identical to not having any
> operation implemented at all. The two operations it implements are only to
> improve visibility and exit handling. On certain homogeneous
> configurations, this actually can perform pretty well.
>
> * qmap: A fixed five level priority scheduler to demonstrate queueing PIDs
> on BPF maps for scheduling. While not very practical, this is useful as a
> simple example and will be used to demonstrate different features.
>
> v7: - Compat helpers stripped out in prepartion of upstreaming as the
> upstreamed patchset will be the baselinfe. Utility macros that can be
> used to implement compat features are kept.
>
> - Explicitly disable map autoattach on struct_ops to avoid trying to
> attach twice while maintaining compatbility with older libbpf.
>
> v6: - Common header files reorganized and cleaned up. Compat helpers are
> added to demonstrate how schedulers can maintain backward
> compatibility with older kernels while making use of newly added
> features.
>
> - simple_select_cpu() added to keep track of the number of local
> dispatches. This is needed because the default ops.select_cpu()
> implementation is updated to dispatch directly and won't call
> ops.enqueue().
>
> - Updated to reflect the sched_ext API changes. Switching all tasks is
> the default behavior now and scx_qmap supports partial switching when
> `-p` is specified.
>
> - tools/sched_ext/Kconfig dropped. This will be included in the doc
> instead.
>
> v5: - Improve Makefile. Build artifects are now collected into a separate
> dir which change be changed. Install and help targets are added and
> clean actually cleans everything.
>
> - MEMBER_VPTR() improved to improve access to structs. ARRAY_ELEM_PTR()
> and RESIZEABLE_ARRAY() are added to support resizable arrays in .bss.
>
> - Add scx_common.h which provides common utilities to user code such as
> SCX_BUG[_ON]() and RESIZE_ARRAY().
>
> - Use SCX_BUG[_ON]() to simplify error handling.
>
> v4: - Dropped _example prefix from scheduler names.
>
> v3: - Rename scx_example_dummy to scx_example_simple and restructure a bit
> to ease later additions. Comment updates.
>
> - Added declarations for BPF inline iterators. In the future, hopefully,
> these will be consolidated into a generic BPF header so that they
> don't need to be replicated here.
>
> v2: - Updated with the generic BPF cpumask helpers.
>
> Signed-off-by: Tejun Heo <tj@...nel.org>
> Reviewed-by: David Vernet <dvernet@...a.com>
> Acked-by: Josh Don <joshdon@...gle.com>
> Acked-by: Hao Luo <haoluo@...gle.com>
> Acked-by: Barret Rhoden <brho@...gle.com>
Our farm builders are currently failing to build -next and I am seeing the following error ...
f76698bd9a8c (HEAD -> refs/heads/buildbrain-branch, refs/remotes/m/master) Add linux-next specific files for 20240621
build-linux.sh: kernel_build - make mrproper
Makefile:83: *** Cannot find a vmlinux for VMLINUX_BTF at any of " ../../vmlinux /sys/kernel/btf/vmlinux /boot/vmlinux-4.15.0-136-generic". Stop.
Makefile:192: recipe for target 'sched_ext_clean' failed
make[2]: *** [sched_ext_clean] Error 2
Makefile:1361: recipe for target 'sched_ext' failed
make[1]: *** [sched_ext] Error 2
Makefile:240: recipe for target '__sub-make' failed
make: *** [__sub-make] Error 2
Reverting this change fixes the build. Any thoughts on what is happening here?
Thanks!
Jon
--
nvpublic
Powered by blists - more mailing lists