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

Re: [Xen-devel] Re: [PATCH] Xen Guest Kexec

On 3 Mar 2006, at 08:39, Gerd Hoffmann wrote:

The critical thing that disables the trap is flags==0: that sets the
'dpl' for the 'trap gate' to zero so it effectively is unusable.

Well, xen still tries to forward the trap to that vector then, but I
want to avoid exactly that.

The problem I have is that my kernel faults somewhere, but I'm already
that far in doing kexec that the usual linux kernel trap handling isn't
going to work any more.  What I'd like to see is xen print out a
register dump, with EIP being the faulting instruction, not the
(non-working) fault handler entry point.

Guess I have to hack xen a bit for that ...

Well, the trick I described is good for at least 'non-exceptions' (i.e., it'll disable 'int x' software interrupts). For exceptions, I guess you should simply avoid causing them? :-)

In fact, why not install a dummy handler for all vectors (0-255). That is, a valid cs:eip that vectors to a small kexec function to print the state you desire? Setting flags==0 will ensure that softints don't work, but you can print out a useful message if you take a fault. You could try and put in a safe-ish place so it continues to work even for the early stages of the new kernel boot.

 -- Keir

Xen-devel mailing list



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