Rachita Kothiyal wrote: > > > Rachita Kothiyal wrote: > > > > > > This happens in get_idle_threads() when perusing the runqueues array, > > where each per-cpu runqueue data structure contains a pointer to the > > idle (swapper) task for that CPU. Now, this process requires that the > > per-cpu address manipulations are working correctly in order to find the > > each cpu's runqueue data structure. It looks like the ppc64 change > > for per-cpu data accesses is suspect here: > > > > > Fix to recognize post-2.6.15 ppc64 kernels moving the per_cpu_offsets > > > to the "paca" structure. Without this patch, crash fails with the > > > following error messages: "crash: cannot determine idle task addresses > > > from init_tasks[] or runqueues[]" and "crash: cannot resolve > > > init_task_union". (pbadari@xxxxxxxxxx) > > > > Right, but I thought this patch fixed this problem. > (I am using crash-4.0-2.21, and it includes this patch) Right -- me too... ;-) > > > > > > > > But I was able to run it ok on a live system. > > > > > > > Same kernel? I have no idea why there would be a difference > > between live and vmcore. > > Yes, same kernel (2.6.16-rc4) > I'm sure Badari can give you more information, but you might start by putting some debug printf's in his new ppc64_paca_init() function to see whether it's calculating the same kt->__per_cpu_offset[cpu] values on a live system vs. its associated vmcore? Dave