[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <m1lkphqfz0.fsf@ebiederm.dsl.xmission.com>
Date: Tue, 22 Aug 2006 03:25:55 -0600
From: ebiederm@...ssion.com (Eric W. Biederman)
To: "Magnus Damm" <magnus.damm@...il.com>
Cc: "Andi Kleen" <ak@...e.de>, "Magnus Damm" <magnus@...inux.co.jp>,
fastboot@...ts.osdl.org, linux-kernel@...r.kernel.org
Subject: Re: [Fastboot] [PATCH] x86_64: Reload CS when startup_64 is used.
"Magnus Damm" <magnus.damm@...il.com> writes:
> Hi Eric,
>
> On 8/22/06, Eric W. Biederman <ebiederm@...ssion.com> wrote:
>>
>> In long mode the %cs is largely a relic. However there are a few cases
>> like lret where it matters that we have a valid value. Without this
>> patch it is possible to enter the kernel in startup_64 without setting
>> %cs to a valid value. With this patch we don't care what %cs value
>> we enter the kernel with, so long as the cs shadow register indicates
>> it is a privileged code segment.
>>
>> Thanks to Magnus Damm for finding this problem and posting the
>> first workable patch. I have moved the jump to set %cs down a
>> few instructions so we don't need to take an extra jump. Which
>> keeps the code simpler.
>>
>> Signed-of-by: Eric W. Biederman <ebiederm@...ssion.com>
>
> While at it, could you please fix up the purgatory code in kexec-tools
> to include this fix so we can boot older versions of the kernel too?
I guess I'm not opposed to a patch but I have some serious reservations
about a solution that limits my address to 32bits in 64bit mode, and
appears to break the gdt used for entering the 32bit kernel.
I'm up way to late tonight. I just wanted to resolve the situation
when it was clear what was going on.
Eric
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists