----- "Dave Anderson" <anderson(a)redhat.com> wrote:
----- "Michael Holzheu" <holzheu(a)linux.vnet.ibm.com>
wrote:
> Hello Dave,
>
> On Mon, 2010-04-26 at 10:29 -0400, Dave Anderson wrote:
> > I'd prefer not to leave them out of the various internal task
arrays,
> > especially the active_set[] array. Regardless of their on/offline
> > status, they do still exist as tasks, have runqueues, etc.
>
> Ok, fine.
>
> > If you're just worried about "bt -a", then why not just catch
> > the offline status in the for loop inside "if (active)" section
> > of cmd_bt()?
>
> Good idea! The following attached patch also works for me.
>
> Michael
That looks good -- queued for the next release.
Thanks,
Dave
Sorry -- I take it back. Running a test shows that it breaks "bt -a"
on Xen dumpfiles where the cpus are marked offline prior to dumping
the kernel memory.
I think this should be moved to the processor-specific backtrace functions,
which can just display "OFFLINE" or something to that effect.
Dave
> ---
> kernel.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> --- a/kernel.c
> +++ b/kernel.c
> @@ -1989,6 +1989,8 @@ cmd_bt(void)
> free_all_bufs();
> continue;
> }
> + if (!(kt->cpu_flags[c] & ONLINE))
> + continue;
> if ((tc = task_to_context(tt->panic_threads[c]))) {
> pc->flags |= IN_FOREACH;
> DO_TASK_BACKTRACE();