Re: [RFC, PATCH 1/24] i386 Vmi documentation II

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Andi Kleen wrote:
On Wednesday 22 March 2006 23:45, Zachary Amsden wrote:

I propose an entirely different approach - use segmentation.

That would require a lot of changes to save/restore the segmentation
register at kernel entry/exit since there is no swapgs on i386. And will be likely slower there too and also even slow down the VMI-kernel-no-hypervisor.

There are no changes required to the kernel entry / exit paths. With save/restore segment support in the VMI, reserving one segment for the hypervisor data area is easy.

I take it back.  There is one required change:

kernel_entry:
    hypervisor_entry_hook
    sti
    .... kernel code

This hypervisor_entry_hook can be a nop on native hardware, and the following for Xen:

push %gs
mov CPU_HYPER_SEL, %gs
pop %gs:SAVED_USER_GS

You already have the IRET / SYSEXIT hooks to restore it on the way back. And now you have a segment reserved that allows you to deal with 16-bit stack segments during the IRET.

Still might be the best option.

How did that rumoured Xenolinux-over-VMI implementation solve that problem?

!CONFIG_SMP -- as I believe I saw in the latest Xen patches sent out as well?
-
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]
  Powered by Linux