On 08.03.2012, at 00:12, Stuart Yoder wrote:

> From: Liu Yu-B13201 <[email protected]>
> 
> If the guest hypervisor node contains "has-idle" property.

Jeez those patch descriptions drive me insane. Could you please rewrite them to 
actually describe what the patches are about?

> 
> Signed-off-by: Liu Yu <[email protected]>
> ---
> v9: no changes
> 
> arch/powerpc/include/asm/epapr_hcalls.h |   11 ++++++-----
> arch/powerpc/kernel/epapr_hcalls.S      |   27 +++++++++++++++++++++++++++
> arch/powerpc/kernel/epapr_paravirt.c    |   11 ++++++++++-
> 3 files changed, 43 insertions(+), 6 deletions(-)
> 
> diff --git a/arch/powerpc/include/asm/epapr_hcalls.h 
> b/arch/powerpc/include/asm/epapr_hcalls.h
> index 2173d4c..78460ac 100644
> --- a/arch/powerpc/include/asm/epapr_hcalls.h
> +++ b/arch/powerpc/include/asm/epapr_hcalls.h
> @@ -50,10 +50,6 @@
> #ifndef _EPAPR_HCALLS_H
> #define _EPAPR_HCALLS_H
> 
> -#include <linux/types.h>
> -#include <linux/errno.h>
> -#include <asm/byteorder.h>
> -
> #define EV_BYTE_CHANNEL_SEND          1
> #define EV_BYTE_CHANNEL_RECEIVE               2
> #define EV_BYTE_CHANNEL_POLL          3
> @@ -108,6 +104,11 @@
> #define EV_UNIMPLEMENTED      12      /* Unimplemented hypercall */
> #define EV_BUFFER_OVERFLOW    13      /* Caller-supplied buffer too small */
> 
> +#ifndef __ASSEMBLY__
> +#include <linux/types.h>
> +#include <linux/errno.h>
> +#include <asm/byteorder.h>
> +
> /*
>  * Hypercall register clobber list
>  *
> @@ -500,5 +501,5 @@ static inline unsigned int ev_idle(void)
> 
>       return r3;
> }
> -
> +#endif /* !__ASSEMBLY__ */
> #endif
> diff --git a/arch/powerpc/kernel/epapr_hcalls.S 
> b/arch/powerpc/kernel/epapr_hcalls.S
> index 697b390..bf643ed 100644
> --- a/arch/powerpc/kernel/epapr_hcalls.S
> +++ b/arch/powerpc/kernel/epapr_hcalls.S
> @@ -8,6 +8,7 @@
>  */
> 
> #include <linux/threads.h>
> +#include <asm/epapr_hcalls.h>
> #include <asm/reg.h>
> #include <asm/page.h>
> #include <asm/cputable.h>
> @@ -15,6 +16,32 @@
> #include <asm/ppc_asm.h>
> #include <asm/asm-offsets.h>
> 
> +_GLOBAL(epapr_ev_idle)
> +epapr_ev_idle:
> +     rlwinm  r3,r1,0,0,31-THREAD_SHIFT       /* current thread_info */
> +     lwz     r4,TI_LOCAL_FLAGS(r3)   /* set napping bit */
> +     ori     r4,r4,_TLF_NAPPING      /* so when we take an exception */
> +     stw     r4,TI_LOCAL_FLAGS(r3)   /* it will return to our caller */

The whole block is missing spaces ;).

Also, TI_LOCAL_FLAGS is a long, so it should be treated as such. Otherwise this 
blows up for 64bit.


Alex

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to