scx-upstream/rust/scx_utils
Ming Yang a23f3566e3 Use per-arch vmlinux.h
vmlinux.h is not compatible across archs.

Handle this compatibility issue by
* Add arch info into vmlinux.h real file name
* Link vmlinux.h to the target-arch real file at build time
* Use target-arch real file for scx_utils bindgen.

Also refactored clang related logic into a new clang_info mod, which is
shared by bpf_builder.rs and builder.rs.

Signed-off-by: Ming Yang <minos.future@gmail.com>
2024-10-13 07:57:12 -07:00
..
src Use per-arch vmlinux.h 2024-10-13 07:57:12 -07:00
bindings.h rust/scx_utils: Add user_exit_info support 2024-01-31 10:54:15 -10:00
bpf_h scx_utils: Add mod bpf_h 2023-11-28 15:20:01 -10:00
build.rs scx_utils, scx_rusty: Minor updates to version handling 2024-08-20 21:03:05 -10:00
Cargo.toml Use per-arch vmlinux.h 2024-10-13 07:57:12 -07:00
LICENSE rust: clarify license and include text 2023-12-12 13:02:13 -08:00
README.md scx_utils: Fix typos 2024-06-18 00:35:43 +08:00

Utility collection for sched_ext schedulers

sched_ext is a Linux kernel feature which enables implementing kernel thread schedulers in BPF and dynamically loading them.

This crate is a collection of utilities for sched_ext scheduler implementations which use Rust for userspace component. This enables implementing hot paths in BPF while offloading colder and more complex operations to userspace Rust code which can be significantly more convenient and powerful.

Please see documentation for more details.