----- Original Message -----
Dave,
Toshi's patch works fine for me.
Apart from this, runq command does not work against my vmcore(non-SMP).
runq fails with the following message.
I am afraid it might be another CONFIG_SMP related issue.
crash> set debug 10
debug: 10
crash> runq
runq: per_cpu_symbol_search(per_cpu__runqueues): NULL
runq: per-cpu runqueues does not exist
crash>
Takuo
Hi Takuo,
With respect to the "runq" command, I tried this patch on my only
UP ARM sample dumpfile:
--- task.c.orig 2011-06-27 10:33:51.000000000 -0400
+++ task.c 2011-06-27 10:47:13.000000000 -0400
@@ -6970,8 +6970,13 @@
"prio");
}
- if (!(rq_sp = per_cpu_symbol_search("per_cpu__runqueues")))
- error(FATAL, "per-cpu runqueues does not exist\n");
+ if (!(rq_sp = per_cpu_symbol_search("per_cpu__runqueues"))) {
+ if (!(kt->flags & SMP) && !(kt->flags &
PER_CPU_OFF)) {
+ if (!(rq_sp = symbol_search("runqueues")))
+ error(FATAL, "runqueues does not exist\n");
+ } else
+ error(FATAL, "per-cpu runqueues does not exist\n");
+ }
runqbuf = GETBUF(SIZE(runqueue));
if ((init_sp = per_cpu_symbol_search("per_cpu__init_cfs_rq")))
and it shows:
crash> runq
CPU 0 RUNQUEUE: c0396c78
CURRENT: PID: 0 TASK: c0388ee0 COMMAND: "swapper"
RT PRIO_ARRAY: c0396d28
[no tasks queued]
CFS RB_ROOT: c0396d00
[no tasks queued]
crash>
but a true test would have something other than an idle state with no
other tasks queued.
And the "timer" command will definitely require a bit more work.
Dave