* Zachary Amsden (zach@xxxxxxxxxx) wrote:
These changes are sufficient to glue the Linux low level entry points to
hypervisor event injection by emulating the native processor exception
frame interface.
There's a bit more going on in the Xen changes to entry.S. The STI/CLI
abstraction definitely gets partway there. Then there's some bits that
use (in your terms) __STI, __CLI. It's in code that's a pure addition
so it's tempting to simply make a mechanism for the additions, but it's a bit
too intertwined to just separate that code, as there's calls from core
entry.S into the Xen additions.
N.B. Sti; Sysexit is a required abstraction, as the STI instruction implies
holdoff of interrupts, which is destroyed by any NOP padding.
Or just disable systenter ;-) Random question...do you support systenter?
Sounds slower than int80, since it should require 3->0->1->0->3 transitions.
Just idly curious if you've done benchmarks to see the difference.