Messages in this thread | | | Date | Tue, 04 Sep 2007 07:16:47 +0100 | From | "H. Peter Anvin" <> | Subject | Re: New x86-Setup code breaks HVM-XEN boot |
| |
Christian Ehrhardt wrote: > > I took the trouble to bisect (manually) exactly which change in the new > boot code triggers this problem. > > The problem is with the lgdt instruction. Apparently XEN does not keep > the contents of the 48-bit gdt_48 data structure that is passed to lgdt > in the XEN machine state. Instead it appears to save the _address_ of the > 48-bit descriptor somewhere. Unfortunately this data happens to reside on the > stack and is probably no longer availiable at the time of the actual > protected mode jump. > > This is most likely a XEN-bug but given that there is a on line patch > to work around this problem, the linux kernel should probably do this. > My fix is to make the gdt_48 description in setup_gdt static (in > setup_idt this is already the case). This allows the kernel to boot under > XEN-hvm again.
Would indeed be a Xen bug, and a pretty serious one too. Quite frankly, it reflects some pretty fundamental misconceptions about how x86 works.
> > Sometimes it is a bit disappointing if quite some debuggin work results > in a on line patch :-) Pleae consider applying. >
LOL, well, that's usually a good thing.
-hpa
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |