[PATCH 2/3] kvmppc: add hypercall infrastructure - guest part v3

Kumar Gala galak at kernel.crashing.org
Tue Oct 14 03:42:49 EST 2008


On Sep 16, 2008, at 1:27 AM, ehrhardt at linux.vnet.ibm.com wrote:

> From: Christian Ehrhardt <ehrhardt at linux.vnet.ibm.com>
>
> This adds the guest portion of the hypercall infrastructure.
>
> Version 3 now follows the beat ABI, but proposes a new  
> implementation style as
> static inline asm functions instead of pure assembler code. That  
> should allow
> the compiler to be more flexible and therefore a better optimization.
>
> If people agree on that new implementation style we might merge this  
> code.
> The current implementation of beat style hypercalls can be found in
> arch/powerpc/platforms/cell/beat_hvCall.S
>
> Signed-off-by: Christian Ehrhardt <ehrhardt at linux.vnet.ibm.com>
> ---
>
> [diffstat]
> epapr_hcalls.h |   59 +++++++++++++++++++++++++++++++++++++++++++++++ 
> ++++++++++
> 1 file changed, 59 insertions(+)
>
> [diff]
>
> diff --git a/include/asm-powerpc/epapr_hcalls.h b/include/asm- 
> powerpc/epapr_hcalls.h
> new file mode 100644
> --- /dev/null
> +++ b/include/asm-powerpc/epapr_hcalls.h
> @@ -0,0 +1,59 @@
> +/*
> + * This program is free software; you can redistribute it and/or  
> modify
> + * it under the terms of the GNU General Public License, version 2,  
> as
> + * published by the Free Software Foundation.
> + *
> + * This program is distributed in the hope that it will be useful,
> + * but WITHOUT ANY WARRANTY; without even the implied warranty of
> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> + * GNU General Public License for more details.
> + *
> + * You should have received a copy of the GNU General Public License
> + * along with this program; if not, write to the Free Software
> + * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA   
> 02110-1301, USA.
> + *
> + * Copyright IBM Corp. 2008
> + *
> + * Authors:
> + * 	Christian Ehrhardt <ehrhardt at de.ibm.com>
> + */
> +
> +#ifndef __POWERPC_EPAPR_HCALLS_H__
> +#define __POWERPC_EPAPR_HCALLS_H__
> +
> +#ifdef __KERNEL__
> +
> +/* Hypercalls use the beat ABI */
> +#define KVM_HYPERCALL_BIN 0x44000022

Any reason this isn't 'sc' ?

Also, can we make this "sc 1" so its works when we have HW hypervisor  
support?

- k



More information about the Linuxppc-dev mailing list