Steve Dickson wrote:
> Hello,
>
> I'm getting the following errors using crash 4.0-2.22 on a
> 2.6.16-1.2087_FC5.smp kernel.
>
> crash: cannot determine idle task addresses from init_tasks[] or
> runqueues[]
>
> crash: cannot resolve "init_task_union"
>
> Now I just read the threads about this same error on
> ppc64 as well as read the crash version 4.0-2.21 is available
> release notes, but this is happening on x86 UP kernel
> (although I'm using an SMP kernel) and with the latest
> crash version 4.0-2.22
>
> any ideas?
>
> steved.
>
> Disclaimer: I don't follow this mailing list as close as I probably
> should so I'll pre-apologize is this has already been discussed
> in a previous thread... If so please simply send the pointer...
>
> --
> Crash-utility mailing list
> Crash-utility(a)redhat.com
>
https://www.redhat.com/mailman/listinfo/crash-utility
In this particular kernel, does the runqueue data structure now contain
a new "cpu" member? (It's also described in the new crash.TODO file
on my people site).
If so, try adding the attached patch to kernel.c.
Dave
------------------------------------------------------------------------
diff -u -r1.131 kernel.c
--- kernel.c 23 Mar 2006 20:33:48 -0000 1.131
+++ kernel.c 3 Apr 2006 18:21:01 -0000
@@ -152,7 +152,8 @@
kt->flags |= PER_CPU_OFF;
}
MEMBER_OFFSET_INIT(runqueue_cpu, "runqueue", "cpu");
- if (VALID_MEMBER(runqueue_cpu)) {
+ if (VALID_MEMBER(runqueue_cpu) &&
+ (get_array_length("runqueue.cpu", NULL, 0) > 0)) {
MEMBER_OFFSET_INIT(cpu_s_curr, "cpu_s", "curr");
MEMBER_OFFSET_INIT(cpu_s_idle, "cpu_s", "idle");
STRUCT_SIZE_INIT(cpu_s, "cpu_s");
@@ -177,6 +178,7 @@
} else {
MEMBER_OFFSET_INIT(runqueue_idle, "runqueue", "idle");
MEMBER_OFFSET_INIT(runqueue_curr, "runqueue", "curr");
+ ASSIGN_OFFSET(runqueue_cpu) = INVALID_OFFSET;
}
MEMBER_OFFSET_INIT(runqueue_active, "runqueue", "active");
MEMBER_OFFSET_INIT(runqueue_expired, "runqueue", "expired");
------------------------------------------------------------------------
--
Crash-utility mailing list
Crash-utility(a)redhat.com
https://www.redhat.com/mailman/listinfo/crash-utility
Dave
I tested out the patch on the 2.4.16 kernel and it works fine.
--
David Wilder
IBM Linux Technology Center
Beaverton, Oregon, USA
dwilder(a)us.ibm.com
(503)578-3789