<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
<tt></tt> 
<br><tt>Sachin,</tt><tt></tt>
<p><tt>This may require help from the IBM ppc64 people out there,</tt>
<br><tt>but it appears that the issue at hand has something to do</tt>
<br><tt>with the uniprocessor aspect.</tt><tt></tt>
<p><tt>Your vmlinux is an SMP kernel, but I'm guessing that the wrong</tt>
<br><tt>choice of "runq" addresses is being made below:</tt><tt></tt>
<p><tt>        if (symbol_exists("per_cpu__runqueues")
&&</tt>
<br><tt>           
VALID_MEMBER(runqueue_idle)) {</tt>
<br><tt>               
runqbuf = GETBUF(SIZE(runqueue));</tt>
<br><tt>               
for (i = 0; i < nr_cpus; i++) {</tt>
<br><tt>                       
<b>if ((kt->flags & SMP) && (kt->flags & PER_CPU_OFF))
{</b></tt>
<br><b><tt>                               
runq = symbol_value("per_cpu__runqueues") +</tt></b>
<br><b><tt>                                       
kt->__per_cpu_offset[i];</tt></b>
<br><b><tt>                       
} else</tt></b>
<br><b><tt>                               
runq = symbol_value("per_cpu__runqueues");</tt></b><tt></tt>
<p><tt>                       
readmem(runq, KVADDR, runqbuf,</tt>
<br><tt>                               
SIZE(runqueue), "runqueues entry (per_cpu)",</tt>
<br><tt>                               
FAULT_ON_ERROR);</tt>
<br><tt>                       
tasklist[i] = ULONG(runqbuf + OFFSET(runqueue_idle));</tt>
<br><tt>                       
if (IS_KVADDR(tasklist[i]))</tt>
<br><tt>                               
cnt++;</tt><tt></tt>
<p><tt>I don't know what your "kt->flags" is showing at the</tt>
<br><tt>decision point above, but if you hack the code and force</tt>
<br><tt>it to select the "other" runq value, does it work OK?</tt><tt></tt>
<p><tt>When CONFIG_SMP is not configured into the kernel, then</tt>
<br><tt>the direct value of "per_cpu__runqueues" is used, whereas</tt>
<br><tt>with SMP kernels, the appropriate offset needs to be</tt>
<br><tt>applied.  At least that's how it works (has worked?) with</tt>
<br><tt>the other architectures.</tt><tt></tt>
<p><tt>Dave</tt>
<br><tt></tt> </html>