On 02.07.2012, at 19:16, Scott Wood wrote: > On 07/02/2012 12:13 PM, Alexander Graf wrote: >> >> On 02.07.2012, at 19:10, Scott Wood wrote: >> >>> On 07/02/2012 07:30 AM, Alexander Graf wrote: >>>> >>>> On 22.06.2012, at 22:06, Stuart Yoder wrote: >>>> >>>>> From: Liu Yu-B13201 <Yu.Liu@xxxxxxxxxxxxx> >>>>> >>>>> Signed-off-by: Liu Yu <yu.liu@xxxxxxxxxxxxx> >>>>> Signed-off-by: Stuart Yoder <stuart.yoder@xxxxxxxxxxxxx> >>>>> --- >>>>> -v11: no changes >>>>> >>>>> arch/powerpc/include/asm/epapr_hcalls.h | 22 +++++++++--------- >>>>> arch/powerpc/include/asm/fsl_hcalls.h | 36 +++++++++++++++--------------- >>>>> 2 files changed, 29 insertions(+), 29 deletions(-) >>>>> >>>>> diff --git a/arch/powerpc/include/asm/epapr_hcalls.h b/arch/powerpc/include/asm/epapr_hcalls.h >>>>> index 833ce2c..b8d9445 100644 >>>>> --- a/arch/powerpc/include/asm/epapr_hcalls.h >>>>> +++ b/arch/powerpc/include/asm/epapr_hcalls.h >>>>> @@ -195,7 +195,7 @@ static inline unsigned int ev_int_set_config(unsigned int interrupt, >>>>> r5 = priority; >>>>> r6 = destination; >>>>> >>>>> - __asm__ __volatile__ ("sc 1" >>>>> + asm volatile("bl epapr_hypercall_start" >>>>> : "+r" (r11), "+r" (r3), "+r" (r4), "+r" (r5), "+r" (r6) >>>>> : : EV_HCALL_CLOBBERS4 >>>> >>>> Hrm. ePAPR hypercalls are allowed to clobber lr, right? But our hypercall entry code depends on lr staying alive: >>> >>> ePAPR 1.1 says LR is nonvolatile. >> >> Why is it in the clobber list then? > > Because the inline assembly code is clobbering it -- not the hv-provided > hcall instructions. Only after the change, not before it. Alex -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html