xref: /linux/kernel/sched/ext/arena.h (revision 7603d8e78023e5883e075b4625fbdf059c6384f7)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * BPF extensible scheduler class: Documentation/scheduler/sched-ext.rst
4  *
5  * Copyright (c) 2025 Meta Platforms, Inc. and affiliates.
6  * Copyright (c) 2025 Tejun Heo <tj@kernel.org>
7  */
8 #ifndef _KERNEL_SCHED_EXT_ARENA_H
9 #define _KERNEL_SCHED_EXT_ARENA_H
10 
11 #include <linux/types.h>
12 
13 struct scx_sched;
14 
15 s32 scx_arena_pool_init(struct scx_sched *sch);
16 void scx_arena_pool_destroy(struct scx_sched *sch);
17 void *scx_arena_alloc(struct scx_sched *sch, size_t size);
18 void scx_arena_free(struct scx_sched *sch, void *kern_va, size_t size);
19 
20 #endif /* _KERNEL_SCHED_EXT_ARENA_H */
21