Kernel commit [1] renamed cfs_rq.h_nr_running into cfs_rq.h_nr_queued.
Without the patch:
crash> runq -g
...
runq: invalid structure member offset: cfs_rq_nr_running
FILE: task.c LINE: 9480 FUNCTION: dump_tasks_in_lower_dequeued_cfs_rq()
[./crash] error trace: 580934 => 580090 => 5f1f31 => 5f1eb3
5f1eb3: OFFSET_verify.part.40+51
5f1f31: OFFSET_verify+49
580090: dump_tasks_in_lower_dequeued_cfs_rq+444
580934: dump_tasks_in_task_group_cfs_rq+1229
runq: invalid structure member offset: cfs_rq_nr_running
FILE: task.c LINE: 9480 FUNCTION: dump_tasks_in_lower_dequeued_cfs_rq()
[1]:
https://github.com/torvalds/linux/commit/7b8a702d943827130cc00ae36075eff5...
Signed-off-by: Tao Liu <ltao(a)redhat.com>
Reported-by: Anderson Nascimento <andersonc0d3(a)gmail.com>
---
task.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/task.c b/task.c
index 869f584..4e3b71f 100644
--- a/task.c
+++ b/task.c
@@ -9739,6 +9739,9 @@ cfs_rq_offset_init(void)
ASSIGN_OFFSET(cfs_rq_rb_leftmost) = OFFSET(cfs_rq_tasks_timeline) +
MEMBER_OFFSET("rb_root_cached", "rb_leftmost");
MEMBER_OFFSET_INIT(cfs_rq_nr_running, "cfs_rq", "nr_running");
+ if (INVALID_MEMBER(cfs_rq_nr_running)) {
+ MEMBER_OFFSET_INIT(cfs_rq_nr_running, "cfs_rq", "nr_queued");
+ }
MEMBER_OFFSET_INIT(cfs_rq_curr, "cfs_rq", "curr");
MEMBER_OFFSET_INIT(rt_rq_active, "rt_rq", "active");
MEMBER_OFFSET_INIT(task_struct_run_list, "task_struct",
--
2.47.0