lkml.org 
[lkml]   [2006]   [Aug]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: [PATCH][RFC] x86_64: Reload CS when startup_64 is used.
Date
Magnus Damm <magnus@valinux.co.jp> writes:

> x86_64: Reload CS when startup_64 is used.
>
> The current x86_64 startup code never reloads CS during the early boot process
> if the 64-bit function startup_64 is used as entry point. The 32-bit entry
> point startup_32 does the right thing and reloads CS, and this is what most
> people are using if they use bzImage.
>
> This patch fixes the case when the Linux kernel is booted into using kexec
> under Xen. The Xen hypervisor is using large CS values which makes the x86_64
> kernel fail - but only if vmlinux is booted, bzImage works well because it
> is using the 32-bit entry point.
>
> The main question is if we require that the boot loader should setup CS
> to some certain offset to be able to boot the kernel. The sane solution IMO
> should be that the kernel requires that the loaded descriptors are correct,
> but that the exact offset within the GDT the boot loader is using should not
> matter. This is the way the i386 boot works if I understand things correctly.

What extra reload of cs does Xen introduce?

I'm not really comfortable with a half virtualized case.

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

\
 
 \ /
  Last update: 2006-08-21 23:05    [W:0.437 / U:0.108 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site