scx_utils/
enums.rs

1/*
2 * WARNING: This file is autogenerated from scripts/gen_enums.py. If you would
3 * like to access an enum that is currently missing, add it to the script
4 * and run it from the root directory to update this file.
5 */
6
7use crate::compat::read_enum;
8
9#[derive(Debug)]
10#[allow(non_snake_case)]
11pub struct Enums {
12    pub SCX_OPS_NAME_LEN: u64,
13    pub SCX_SLICE_DFL: u64,
14    pub SCX_SLICE_INF: u64,
15    pub SCX_RQ_ONLINE: u64,
16    pub SCX_RQ_CAN_STOP_TICK: u64,
17    pub SCX_RQ_BAL_PENDING: u64,
18    pub SCX_RQ_BAL_KEEP: u64,
19    pub SCX_RQ_BYPASSING: u64,
20    pub SCX_RQ_CLK_VALID: u64,
21    pub SCX_RQ_IN_WAKEUP: u64,
22    pub SCX_RQ_IN_BALANCE: u64,
23    pub SCX_DSQ_FLAG_BUILTIN: u64,
24    pub SCX_DSQ_FLAG_LOCAL_ON: u64,
25    pub SCX_DSQ_INVALID: u64,
26    pub SCX_DSQ_GLOBAL: u64,
27    pub SCX_DSQ_LOCAL: u64,
28    pub SCX_DSQ_LOCAL_ON: u64,
29    pub SCX_DSQ_LOCAL_CPU_MASK: u64,
30    pub SCX_TASK_QUEUED: u64,
31    pub SCX_TASK_RESET_RUNNABLE_AT: u64,
32    pub SCX_TASK_DEQD_FOR_SLEEP: u64,
33    pub SCX_TASK_STATE_SHIFT: u64,
34    pub SCX_TASK_STATE_BITS: u64,
35    pub SCX_TASK_STATE_MASK: u64,
36    pub SCX_TASK_CURSOR: u64,
37    pub SCX_TASK_NONE: u64,
38    pub SCX_TASK_INIT: u64,
39    pub SCX_TASK_READY: u64,
40    pub SCX_TASK_ENABLED: u64,
41    pub SCX_TASK_NR_STATES: u64,
42    pub SCX_TASK_DSQ_ON_PRIQ: u64,
43    pub SCX_KICK_IDLE: u64,
44    pub SCX_KICK_PREEMPT: u64,
45    pub SCX_KICK_WAIT: u64,
46    pub SCX_ENQ_WAKEUP: u64,
47    pub SCX_ENQ_HEAD: u64,
48    pub SCX_ENQ_PREEMPT: u64,
49    pub SCX_ENQ_REENQ: u64,
50    pub SCX_ENQ_LAST: u64,
51    pub SCX_ENQ_CLEAR_OPSS: u64,
52    pub SCX_ENQ_DSQ_PRIQ: u64,
53}
54
55lazy_static::lazy_static! {
56    pub static ref scx_enums: Enums = Enums {
57        SCX_OPS_NAME_LEN: read_enum("scx_public_consts","SCX_OPS_NAME_LEN").unwrap_or(0),
58        SCX_SLICE_DFL: read_enum("scx_public_consts","SCX_SLICE_DFL").unwrap_or(0),
59        SCX_SLICE_INF: read_enum("scx_public_consts","SCX_SLICE_INF").unwrap_or(0),
60        SCX_RQ_ONLINE: read_enum("scx_rq_flags","SCX_RQ_ONLINE").unwrap_or(0),
61        SCX_RQ_CAN_STOP_TICK: read_enum("scx_rq_flags","SCX_RQ_CAN_STOP_TICK").unwrap_or(0),
62        SCX_RQ_BAL_PENDING: read_enum("scx_rq_flags","SCX_RQ_BAL_PENDING").unwrap_or(0),
63        SCX_RQ_BAL_KEEP: read_enum("scx_rq_flags","SCX_RQ_BAL_KEEP").unwrap_or(0),
64        SCX_RQ_BYPASSING: read_enum("scx_rq_flags","SCX_RQ_BYPASSING").unwrap_or(0),
65        SCX_RQ_CLK_VALID: read_enum("scx_rq_flags","SCX_RQ_CLK_VALID").unwrap_or(0),
66        SCX_RQ_IN_WAKEUP: read_enum("scx_rq_flags","SCX_RQ_IN_WAKEUP").unwrap_or(0),
67        SCX_RQ_IN_BALANCE: read_enum("scx_rq_flags","SCX_RQ_IN_BALANCE").unwrap_or(0),
68        SCX_DSQ_FLAG_BUILTIN: read_enum("scx_dsq_id_flags","SCX_DSQ_FLAG_BUILTIN").unwrap_or(0),
69        SCX_DSQ_FLAG_LOCAL_ON: read_enum("scx_dsq_id_flags","SCX_DSQ_FLAG_LOCAL_ON").unwrap_or(0),
70        SCX_DSQ_INVALID: read_enum("scx_dsq_id_flags","SCX_DSQ_INVALID").unwrap_or(0),
71        SCX_DSQ_GLOBAL: read_enum("scx_dsq_id_flags","SCX_DSQ_GLOBAL").unwrap_or(0),
72        SCX_DSQ_LOCAL: read_enum("scx_dsq_id_flags","SCX_DSQ_LOCAL").unwrap_or(0),
73        SCX_DSQ_LOCAL_ON: read_enum("scx_dsq_id_flags","SCX_DSQ_LOCAL_ON").unwrap_or(0),
74        SCX_DSQ_LOCAL_CPU_MASK: read_enum("scx_dsq_id_flags","SCX_DSQ_LOCAL_CPU_MASK").unwrap_or(0),
75        SCX_TASK_QUEUED: read_enum("scx_ent_flags","SCX_TASK_QUEUED").unwrap_or(0),
76        SCX_TASK_RESET_RUNNABLE_AT: read_enum("scx_ent_flags","SCX_TASK_RESET_RUNNABLE_AT").unwrap_or(0),
77        SCX_TASK_DEQD_FOR_SLEEP: read_enum("scx_ent_flags","SCX_TASK_DEQD_FOR_SLEEP").unwrap_or(0),
78        SCX_TASK_STATE_SHIFT: read_enum("scx_ent_flags","SCX_TASK_STATE_SHIFT").unwrap_or(0),
79        SCX_TASK_STATE_BITS: read_enum("scx_ent_flags","SCX_TASK_STATE_BITS").unwrap_or(0),
80        SCX_TASK_STATE_MASK: read_enum("scx_ent_flags","SCX_TASK_STATE_MASK").unwrap_or(0),
81        SCX_TASK_CURSOR: read_enum("scx_ent_flags","SCX_TASK_CURSOR").unwrap_or(0),
82        SCX_TASK_NONE: read_enum("scx_task_state","SCX_TASK_NONE").unwrap_or(0),
83        SCX_TASK_INIT: read_enum("scx_task_state","SCX_TASK_INIT").unwrap_or(0),
84        SCX_TASK_READY: read_enum("scx_task_state","SCX_TASK_READY").unwrap_or(0),
85        SCX_TASK_ENABLED: read_enum("scx_task_state","SCX_TASK_ENABLED").unwrap_or(0),
86        SCX_TASK_NR_STATES: read_enum("scx_task_state","SCX_TASK_NR_STATES").unwrap_or(0),
87        SCX_TASK_DSQ_ON_PRIQ: read_enum("scx_ent_dsq_flags","SCX_TASK_DSQ_ON_PRIQ").unwrap_or(0),
88        SCX_KICK_IDLE: read_enum("scx_kick_flags","SCX_KICK_IDLE").unwrap_or(0),
89        SCX_KICK_PREEMPT: read_enum("scx_kick_flags","SCX_KICK_PREEMPT").unwrap_or(0),
90        SCX_KICK_WAIT: read_enum("scx_kick_flags","SCX_KICK_WAIT").unwrap_or(0),
91        SCX_ENQ_WAKEUP: read_enum("scx_enq_flags","SCX_ENQ_WAKEUP").unwrap_or(0),
92        SCX_ENQ_HEAD: read_enum("scx_enq_flags","SCX_ENQ_HEAD").unwrap_or(0),
93        SCX_ENQ_PREEMPT: read_enum("scx_enq_flags","SCX_ENQ_PREEMPT").unwrap_or(0),
94        SCX_ENQ_REENQ: read_enum("scx_enq_flags","SCX_ENQ_REENQ").unwrap_or(0),
95        SCX_ENQ_LAST: read_enum("scx_enq_flags","SCX_ENQ_LAST").unwrap_or(0),
96        SCX_ENQ_CLEAR_OPSS: read_enum("scx_enq_flags","SCX_ENQ_CLEAR_OPSS").unwrap_or(0),
97        SCX_ENQ_DSQ_PRIQ: read_enum("scx_enq_flags","SCX_ENQ_DSQ_PRIQ").unwrap_or(0),
98    };
99}
100
101#[rustfmt::skip]
102#[macro_export]
103macro_rules! import_enums {
104    ($skel: ident) => { 'block : {
105        let rodata = $skel.maps.rodata_data.as_mut().unwrap();
106        rodata.__SCX_OPS_NAME_LEN = $crate::scx_enums.SCX_OPS_NAME_LEN;
107        rodata.__SCX_SLICE_DFL = $crate::scx_enums.SCX_SLICE_DFL;
108        rodata.__SCX_SLICE_INF = $crate::scx_enums.SCX_SLICE_INF;
109        rodata.__SCX_RQ_ONLINE = $crate::scx_enums.SCX_RQ_ONLINE;
110        rodata.__SCX_RQ_CAN_STOP_TICK = $crate::scx_enums.SCX_RQ_CAN_STOP_TICK;
111        rodata.__SCX_RQ_BAL_PENDING = $crate::scx_enums.SCX_RQ_BAL_PENDING;
112        rodata.__SCX_RQ_BAL_KEEP = $crate::scx_enums.SCX_RQ_BAL_KEEP;
113        rodata.__SCX_RQ_BYPASSING = $crate::scx_enums.SCX_RQ_BYPASSING;
114        rodata.__SCX_RQ_CLK_VALID = $crate::scx_enums.SCX_RQ_CLK_VALID;
115        rodata.__SCX_RQ_IN_WAKEUP = $crate::scx_enums.SCX_RQ_IN_WAKEUP;
116        rodata.__SCX_RQ_IN_BALANCE = $crate::scx_enums.SCX_RQ_IN_BALANCE;
117        rodata.__SCX_DSQ_FLAG_BUILTIN = $crate::scx_enums.SCX_DSQ_FLAG_BUILTIN;
118        rodata.__SCX_DSQ_FLAG_LOCAL_ON = $crate::scx_enums.SCX_DSQ_FLAG_LOCAL_ON;
119        rodata.__SCX_DSQ_INVALID = $crate::scx_enums.SCX_DSQ_INVALID;
120        rodata.__SCX_DSQ_GLOBAL = $crate::scx_enums.SCX_DSQ_GLOBAL;
121        rodata.__SCX_DSQ_LOCAL = $crate::scx_enums.SCX_DSQ_LOCAL;
122        rodata.__SCX_DSQ_LOCAL_ON = $crate::scx_enums.SCX_DSQ_LOCAL_ON;
123        rodata.__SCX_DSQ_LOCAL_CPU_MASK = $crate::scx_enums.SCX_DSQ_LOCAL_CPU_MASK;
124        rodata.__SCX_TASK_QUEUED = $crate::scx_enums.SCX_TASK_QUEUED;
125        rodata.__SCX_TASK_RESET_RUNNABLE_AT = $crate::scx_enums.SCX_TASK_RESET_RUNNABLE_AT;
126        rodata.__SCX_TASK_DEQD_FOR_SLEEP = $crate::scx_enums.SCX_TASK_DEQD_FOR_SLEEP;
127        rodata.__SCX_TASK_STATE_SHIFT = $crate::scx_enums.SCX_TASK_STATE_SHIFT;
128        rodata.__SCX_TASK_STATE_BITS = $crate::scx_enums.SCX_TASK_STATE_BITS;
129        rodata.__SCX_TASK_STATE_MASK = $crate::scx_enums.SCX_TASK_STATE_MASK;
130        rodata.__SCX_TASK_CURSOR = $crate::scx_enums.SCX_TASK_CURSOR;
131        rodata.__SCX_TASK_NONE = $crate::scx_enums.SCX_TASK_NONE;
132        rodata.__SCX_TASK_INIT = $crate::scx_enums.SCX_TASK_INIT;
133        rodata.__SCX_TASK_READY = $crate::scx_enums.SCX_TASK_READY;
134        rodata.__SCX_TASK_ENABLED = $crate::scx_enums.SCX_TASK_ENABLED;
135        rodata.__SCX_TASK_NR_STATES = $crate::scx_enums.SCX_TASK_NR_STATES;
136        rodata.__SCX_TASK_DSQ_ON_PRIQ = $crate::scx_enums.SCX_TASK_DSQ_ON_PRIQ;
137        rodata.__SCX_KICK_IDLE = $crate::scx_enums.SCX_KICK_IDLE;
138        rodata.__SCX_KICK_PREEMPT = $crate::scx_enums.SCX_KICK_PREEMPT;
139        rodata.__SCX_KICK_WAIT = $crate::scx_enums.SCX_KICK_WAIT;
140        rodata.__SCX_ENQ_WAKEUP = $crate::scx_enums.SCX_ENQ_WAKEUP;
141        rodata.__SCX_ENQ_HEAD = $crate::scx_enums.SCX_ENQ_HEAD;
142        rodata.__SCX_ENQ_PREEMPT = $crate::scx_enums.SCX_ENQ_PREEMPT;
143        rodata.__SCX_ENQ_REENQ = $crate::scx_enums.SCX_ENQ_REENQ;
144        rodata.__SCX_ENQ_LAST = $crate::scx_enums.SCX_ENQ_LAST;
145        rodata.__SCX_ENQ_CLEAR_OPSS = $crate::scx_enums.SCX_ENQ_CLEAR_OPSS;
146        rodata.__SCX_ENQ_DSQ_PRIQ = $crate::scx_enums.SCX_ENQ_DSQ_PRIQ;
147    }};
148}