[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] Re: Xen 3.2 and Big Real Mode support?
On 6/2/08 08:20, "Guillaume Thouvenin" <guillaume.thouvenin@xxxxxxxxxxxx> wrote: >> By the way, this is now fixed with tip of the xen-unstable tree (changeset >> 16980), obtainable from http://xenbits.xensource.com/staging/xen-unstable.hg > > Waow. I don't understand everything (and especially how you find that > the problem was here) but it works now. I found the bug because I tracked down the real-mode -> protected-mode transition code in the SuSE bootloader and it did something like this at start of protected mode: mov %ss,%eax shl $4,%eax add %eax,%esp mov <protected mode flat segment>,%bx mov %bx,%ss ..... The problem was that the bottom bits of %ss got cleared on exit from real mode, to satisfy vmenter checks that the processor does. But this deliberate corruption of state can of course affect program execution and in this case we end up with a bad stack pointer! So the fix had to be to emulate far enough into protected mode that %cs and %ss both get reloaded with valid protected-mode segment data. -- Keir _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |