Re: Why are there two ways of getting register values for active tasks?

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

 



----- "Dave Anderson" <anderson@xxxxxxxxxx> wrote:

> ----- "Daisuke HATAYAMA" <d.hatayama@xxxxxxxxxxxxxx> wrote:
> 
> > Hi, all.
> > 
> > I have a question on the implementation of
> get_netdump_regs_x86_64().
> > 
> > Currently, in order to get register values for active tasks, only
> > panic task makes use of note information. On the other hand, other
> > active tasks search stack frame for registers saved at nmi
> > switch. However, crash dump contains the note information for every
> > CPUs, so I think it uncessary to search stack frame.
> 
> Originally it was done that way because the code was written for 
> netdump-generated dumpfiles, which only generated note information
> for the panic task.  But if I'm not mistaken, given that recent
> kernels do not store debuginfo data for the user_regs_struct, it
> almost always falls through into x86_64_get_stack_frame(). 

I take that back -- when it's not in the debuginfo, it hardwires
the user_regs_struct data structure information.

That being the case, I don't remember why it is restricted to the
panic task, but it had to have been put in place based upon actual
dumpfiles where it didn't work correctly for a non-panic task.   
If I get the time, I'll remove the restriction and run it on
my set of stashed dumpfile examples to see if I can be more
specific.

Anyway, good question -- sorry for such a weak answer...

Dave

--
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