Skip to contentSkip to conversation

fix sysenter for 32-on-64 processes

PATCH Applied Jeremy Fitzhardinge 1 participant 1 message Jul 21, 2008

lore
Share & tools
lore
#0 lore raw

cover fix sysenter for 32-on-64 processes

Hi Ingo,

Here's a little two-part patch series which fixes 32-on-64 syscalls using sysenter.

The first is a difference in ordering in arch_setup(); the 64-bit code was calling early_init_cpu() way too late. Moving it earlier, to the same place as the 32-bit code, works for me, but I wonder if it might cause problems with other configurations. Certainly it makes logical sense that both architectures do the same cpu setup at the same place.

The other fix is an outright Xen-specific bug, which resulted in usermode registers being trashed as a result of an over-enthusiastic use of sysret.

Both patches are .27 material, but I expect the arch_setup() change needs to cooking before being comfortable with it.

Thanks,
J