lkml.org 
[lkml]   [2007]   [May]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [RFC PATCH 3/3] boot bzImages under paravirt
Eric W. Biederman wrote:
> Hmm. If we made that:
> mov %cs, %eax
> add $0x10, %eax
> mov %eax, %ds
>
> That is likely even backwards compatible. If you don't mind having a fixed
> offset between the code and the data segments. As I recall code and data
> are not interchangeable.
>

Yes, that's just bogus thinko on my part.

> I'm trying to remember the reason for the reloads.
>
> As I recall loadlin intercepts code32_start from head.S and so it
> can do things just after we have switched to protected mode. Because
> historically we didn't load the segments before this jump loadlin had
> to do it. The code of loadlin appears to reload all of the segments
> just like head.S does and then not touch them.
>
> My two bootloaders that enter the kernel at the 32bit entry point already
> load the segments as well.
>
> Gujin looks like it loads just %es and %ds.
>

We should be able to make do with that until we've got our own gdt.

> It is hard to tell with elilo what it sets up, it preserves the
> descriptors from EFI, but sets up a linux boot protocol gdt.
>

? But the cached descriptors are still the EFI ones?

> Since setup.S finally does the right thing in loading segment
> registers. It looks to me like we need to sit down and document
> the 32bit kernel interface, as it is today, and then extend
> things to just replicate %ds into the other segments, and kill
> any lss instructions.
>

Yes.

> At the same time we are doing this it would be good to drop our
> boot protocol version into an ELF note so people booting vmlinux
> can discover when we have relaxed various restrictions and which
> fields in the real mode data we support.
>

Do you mean the have the kernel expose its max supported version for
bootloaders to inspect?

J
-
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: 2007-05-04 19:29    [W:0.088 / U:0.120 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site