KVM: Move KVM context switch into own function
authorAndi Kleen <ak@linux.intel.com>
Wed, 20 Oct 2010 15:56:17 +0000 (17:56 +0200)
committerAvi Kivity <avi@redhat.com>
Wed, 12 Jan 2011 09:23:26 +0000 (11:23 +0200)
commitf56f5369561ccafe0d4a2396179f814454a1571c
treeb914484b3d61a42f38f65944dc2f2293e0652979
parent7e1fbeac6f4b52e12ccaa20b151bd76783069dee
KVM: Move KVM context switch into own function

gcc 4.5 with some special options is able to duplicate the VMX
context switch asm in vmx_vcpu_run(). This results in a compile error
because the inline asm sequence uses an on local label. The non local
label is needed because other code wants to set up the return address.

This patch moves the asm code into an own function and marks
that explicitely noinline to avoid this problem.

Better would be probably to just move it into an .S file.

The diff looks worse than the change really is, it's all just
code movement and no logic change.

Signed-off-by: Andi Kleen <ak@linux.intel.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
arch/x86/kvm/vmx.c