On 12.11.2008, at 21:06, Andi Kleen wrote:

Anthony Liguori <[EMAIL PROTECTED]> writes:

I wonder if patching is an option?

Not by patching instructions because SYSENTER and SYSCALL have
completely different semantics (e.g. regarding register use). That is
why the entry paths are different on both sides.

In theory you could switch the entry paths around, but that would
be highly kernel version specific.

One easy way is to just clear the SEP and SYSCALL32 flags
in CPUID, then int 0x80 will be always used. Of course it'll
cost you in performance significantly. I wouldn't recommend
to make it default.

SEP and SYSCALL CPUIDs are only respected on X86_32. X86_64 just ignores them and sets X86_FEATURE_SYS{CALL,ENTER}32 in intel.c / amd.c.

That's why I'm suggesting the vendor hack, because Linux doesn't respect the CPUID flags on x86_64.

Alex
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to