Ingo Molnar wrote:
* Zachary Amsden <[email protected]> wrote:
gdt = get_cpu_gdt_table(cpu);
save_desc_40 = gdt[0x40 / 8];
- gdt[0x40 / 8] = bad_bios_desc;
+ gdt[0x40 / 8] = gdt[GDT_ENTRY_BAD_BIOS_CACHE];
i like the cleanup, but wouldnt it be simpler to dedicate GDT entry #8
to the 0x40 descriptor, and hence be compatible with such broken BIOSes
by default? Right now entry #8 is taken up by TLS segment #2, but we
could change GDT_ENTRY_TLS_MIN from 6 to 9 and push the TLS segments to
entries 9,10,11. [ Could there be any buggy SMM code that relies on
having something at 0x40? ]
I worry that there could be buggy userspace code that relies on having
selector 0x40 - notably Wine. So although I would like to make 0x40 the
default, can't be guaranteed.
SMM code is safe, since it gets SMRAM mapped in on entry and has
descriptor saved state so it can mess with tables as it sees fit without
worrying about restoring anything.
Zach
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]