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

Re: [Xen-devel] [PATCH] x86/traps: Dump instruction stream in show_execution_state()



>>> On 15.07.15 at 11:26, <andrew.cooper3@xxxxxxxxxx> wrote:
> On 15/07/15 09:53, Jan Beulich wrote:
>> Also I think you should avoid the subtraction from regs->rip to wrap
>> through zero, or even bail when RIP doesn't point into Xen space.
> 
> If the instruction stream under eip is accessible, it should be printed,
> even if it doesn't point into Xen space.  Bear in mind that anything
> could have gone wrong by the point we get here; we may have accidentally
> jumped into userspace or jumped into some data.

In which case that fact (seen by RIP itself being off) is enough to
know what happened. What exact instruction caused the fault is
then of no interest anymore.

> The wrapping through zero will be caught by the error handling in
> __copy_from_user(), but I admit that it is not very obvious.  The
> information will be available based on the numeric value of eip.

No, by passing the wrapped pointer to __coppy_from_user() you
will get the non-interesting bytes (if any) printed, but not the one
RIP actually points to.

Jan


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.