]> Git Repo - J-linux.git/blob - tools/sched_ext/scx_show_state.py
Merge tag 'vfs-6.13-rc7.fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs
[J-linux.git] / tools / sched_ext / scx_show_state.py
1 #!/usr/bin/env drgn
2 #
3 # Copyright (C) 2024 Tejun Heo <[email protected]>
4 # Copyright (C) 2024 Meta Platforms, Inc. and affiliates.
5
6 desc = """
7 This is a drgn script to show the current sched_ext state.
8 For more info on drgn, visit https://github.com/osandov/drgn.
9 """
10
11 import drgn
12 import sys
13
14 def err(s):
15     print(s, file=sys.stderr, flush=True)
16     sys.exit(1)
17
18 def read_int(name):
19     return int(prog[name].value_())
20
21 def read_atomic(name):
22     return prog[name].counter.value_()
23
24 def read_static_key(name):
25     return prog[name].key.enabled.counter.value_()
26
27 def ops_state_str(state):
28     return prog['scx_ops_enable_state_str'][state].string_().decode()
29
30 ops = prog['scx_ops']
31 enable_state = read_atomic("scx_ops_enable_state_var")
32
33 print(f'ops           : {ops.name.string_().decode()}')
34 print(f'enabled       : {read_static_key("__scx_ops_enabled")}')
35 print(f'switching_all : {read_int("scx_switching_all")}')
36 print(f'switched_all  : {read_static_key("__scx_switched_all")}')
37 print(f'enable_state  : {ops_state_str(enable_state)} ({enable_state})')
38 print(f'in_softlockup : {prog["scx_in_softlockup"].value_()}')
39 print(f'breather_depth: {read_atomic("scx_ops_breather_depth")}')
40 print(f'bypass_depth  : {prog["scx_ops_bypass_depth"].value_()}')
41 print(f'nr_rejected   : {read_atomic("scx_nr_rejected")}')
42 print(f'enable_seq    : {read_atomic("scx_enable_seq")}')
This page took 0.027697 seconds and 4 git commands to generate.