The reason we use a local label is so that we the function isn't split
into two from the profiler's point of view. See cd2276a795b013d1.
Hmm that commit message is not very enlightening.
The goal was to force a compiler error?
With LTO there is no way to force two functions be in the same assembler
file. The partitioner is always allowed to split.
One way to fix this is to have a .data variable initialized to point to
.Lkvm_vmx_return (this can be done from the same asm statement in
vmx_vcpu_run), and reference that variable in
vmx_set_constant_host_state(). If no one comes up with a better idea,
I'll write a patch doing this.
I'm not clear how that is better than my patch.
-andi
--
ak@linux.intel.com -- Speaking for myself only.