[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] Re: [RFC PATCH 28/35] add support for Xen feature queries



On Tue, 2006-03-21 at 22:31 -0800, Chris Wright wrote:
> plain text document attachment (27-xen-features)
> Add support for parsing and interpreting hypervisor feature
> flags. These allow the kernel to determine what features are provided
> by the underlying hypervisor. For example, whether page tables need to
> be write protected explicitly by the kernel, and whether the kernel
> (appears to) run in ring 0 rather than ring 1. This information allows
> the kernel to improve performance by avoiding unnecessary actions.
> 
> Signed-off-by: Ian Pratt <ian.pratt@xxxxxxxxxxxxx>
> Signed-off-by: Christian Limpach <Christian.Limpach@xxxxxxxxxxxx>
> Signed-off-by: Chris Wright <chrisw@xxxxxxxxxxxx>
> ---
>  arch/i386/mach-xen/Makefile                 |    2 -
>  arch/i386/mach-xen/features.c               |   29 
> ++++++++++++++++++++++++++++
>  include/asm-i386/mach-xen/setup_arch_post.h |    2 +
>  include/xen/features.h                      |   20 +++++++++++++++++++
>  4 files changed, 52 insertions(+), 1 deletion(-)
> 
> --- xen-subarch-2.6.orig/arch/i386/mach-xen/Makefile
> +++ xen-subarch-2.6/arch/i386/mach-xen/Makefile
> @@ -4,6 +4,6 @@
>  
>  extra-y                              := head.o
>  
> -obj-y                                := setup.o
> +obj-y                                := setup.o features.o
>   
>  setup-y                              := ../mach-default/setup.o
> --- xen-subarch-2.6.orig/include/asm-i386/mach-xen/setup_arch_post.h
> +++ xen-subarch-2.6/include/asm-i386/mach-xen/setup_arch_post.h
> @@ -40,6 +40,8 @@ static void __init machine_specific_arch
>  {
>       struct physdev_op op;
>  
> +     setup_xen_features();
> +
>       HYPERVISOR_shared_info =
>               (struct shared_info *)__va(xen_start_info->shared_info);
>       memset(empty_zero_page, 0, sizeof(empty_zero_page));
> --- /dev/null
> +++ xen-subarch-2.6/arch/i386/mach-xen/features.c
> @@ -0,0 +1,29 @@
> +/******************************************************************************
> + * features.c
> + *
> + * Xen feature flags.
> + *
> + * Copyright (c) 2006, Ian Campbell, XenSource Inc.
> + */
> +#include <linux/types.h>
> +#include <linux/cache.h>
> +#include <linux/module.h>
> +#include <asm/hypervisor.h>
> +#include <xen/features.h>
> +
> +u8 xen_features[XENFEAT_NR_SUBMAPS * 32] __read_mostly;
> +EXPORT_SYMBOL(xen_features);

EXPORT_SYMBOL_GPL please; this is very specific, low level functionality



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.