diff --git a/source/module/monitor_kernel_lib.c b/source/module/monitor_kernel_lib.c index a23a024..3634a7b 100644 --- a/source/module/monitor_kernel_lib.c +++ b/source/module/monitor_kernel_lib.c @@ -209,7 +209,7 @@ void diag_task_info_work(struct work_struct *work) { // for task info do_each_thread(g, p) { if (p->__state == TASK_RUNNING || __task_contributes_to_load(p) || - p->__state == TASK_IDLE || 1) { + ((READ_ONCE(p->__state) & TASK_IDLE) != 0)) { get_task_struct(p); // count +1