Re: [PATCH] crash: Do not use bt -t flag in panic_search()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 3 Aug 2015 13:16:19 -0400 (EDT)
Dave Anderson <anderson@xxxxxxxxxx> wrote:

> 
> 
> ----- Original Message -----
> > On Mon, 03 Aug 2015 12:30:22 -0400
> > Dave Anderson <anderson@xxxxxxxxxxxx> wrote:
> > 
> > > 
> > >     
> > > Ah, it must be because of the common user-kernel virtual address space on
> > > s390x?
> > 
> > Yes we have overlapping virtual address ranges for kernel and user space and user
> > space registers are stored at the start of the kernel stack.
> > 
> > But I am not sure, if that is the reason here (have to verify this).
> > 
> > Doesn't the -t option check all the stack memory and looks for valid symbol
> > addresses? So IMO everything found there could be by chance the address
> > of panic. Why is this no problem on x86?
> 
> I'm not sure what you mean.  How could it be there by chance?  Are you talking
> about a highly unlikely situation where a user-space exception frame at the top
> of the kernel stack happens to have a register containing a kernel virtual address
> that's within the panic() function?

My assumption was that in "print_stack_text_syms()" in the following loop
everything on the stack is checked for kernel symbols:

        for (i = (esp - bt->stackbase)/sizeof(ulong);
             i < LONGS_PER_STACK; i++) {

Besides of function call return addresses there are local variables on the
stack. If a variable "by chance" contains an address inside the "panic"
function, we will incorrectly assume that we have the panic task.

Is this understanding wrong?

Michael



--
Crash-utility mailing list
Crash-utility@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/crash-utility



[Index of Archives]     [Fedora Development]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [KDE Users]     [Fedora Tools]

 

Powered by Linux