public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/6] add sysenter/syscall emulation for 32bit compat mode
@ 2009-06-17 13:50 Andre Przywara
  2009-06-17 13:50 ` [PATCH 1/6] allow emulation of syscalls instructions on #UD Andre Przywara
                   ` (6 more replies)
  0 siblings, 7 replies; 14+ messages in thread
From: Andre Przywara @ 2009-06-17 13:50 UTC (permalink / raw)
  To: avi; +Cc: kvm, Amit Shah, Christoph Egger, Andre Przywara

sysenter/sysexit are not supported on AMD's 32bit compat mode, whereas
syscall is not supported on Intel's 32bit compat mode. To allow cross
vendor migration we emulate the missing instructions by setting up the
processor state accordingly.
The sysenter code was originally sketched by Amit Shah, it was completed,
debugged,  syscall added and made-to-work by Christoph Egger and polished
up by Andre Przywara.
Please note that sysret does not need to be emulated, because it will be
exectued in 64bit mode and returning to 32bit compat mode works on Intel.

This has been tested with GETPIDs in a tight loop in compat mode on both
Intel and AMD boxes. Additionally a 32-bit userland was booted under a
64-bit kernel and then cross-vendor migrated.

Please apply or comment ;-) 

Regards,
Andre.

Signed-off-by: Amit Shah <amit.shah@redhat.com>
Signed-off-by: Christoph Egger <christoph.egger@amd.com>
Signed-off-by: Andre Przywara <andre.przywara@amd.com>



^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2009-06-22  8:42 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-06-17 13:50 [PATCH 0/6] add sysenter/syscall emulation for 32bit compat mode Andre Przywara
2009-06-17 13:50 ` [PATCH 1/6] allow emulation of syscalls instructions on #UD Andre Przywara
2009-06-17 13:50 ` [PATCH 2/6] add missing EFLAGS bit definitions Andre Przywara
2009-06-17 13:50 ` [PATCH 3/6] prepare for emulation of syscall instructions Andre Przywara
2009-06-17 13:50 ` [PATCH 4/6] add syscall emulation Andre Przywara
2009-06-18  8:47   ` Avi Kivity
2009-06-18 10:27     ` Andre Przywara
2009-06-22  8:43       ` Avi Kivity
2009-06-17 13:50 ` [PATCH 5/6] add sysenter emulation Andre Przywara
2009-06-17 13:50 ` [PATCH 6/6] add sysexit emulation Andre Przywara
2009-06-18  8:48 ` [PATCH 0/6] add sysenter/syscall emulation for 32bit compat mode Avi Kivity
2009-06-18 10:56   ` [PATCH 4/6 v2] add syscall emulation Andre Przywara
2009-06-18 10:56     ` [PATCH 5/6 v2] add sysenter emulation Andre Przywara
2009-06-18 10:56       ` [PATCH 6/6 v2] add sysexit emulation Andre Przywara

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox