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

Re: [Xen-devel] [PATCH] linux: prevent non-Xen modules fromloading in Xen kernel



It's intended to disallow cross-version loading of modules (i.e. a module
compiled against a kernel built with a different [lower or higher] Xen
interface) - allowing such can be as dangerous as loading a module that
was compiled against native I believe.

Jan

>>> Keir Fraser <Keir.Fraser@xxxxxxxxxxxx> 18.01.08 16:35 >>>
Does the XEN_INTERFACE_VERSION add anything? It has not much to do with the
module<->Linux-core interface. Seems a pretty random thing to stuff into the
module magic version string.

 -- Keir

On 18/1/08 14:51, "Jan Beulich" <jbeulich@xxxxxxxxxx> wrote:

> .. and vice versa.
> 
> Inspired by Zach Amsden's functionally similar VMI patch.
> 
> As usual, written and tested on 2.6.24-rc7 and made apply to the 2.6.18
> tree without further testing.
> 
> Signed-off-by: Jan Beulich <jbeulich@xxxxxxxxxx>
> 
> Index: head-2008-01-08/drivers/xen/Kconfig
> ===================================================================
> --- head-2008-01-08.orig/drivers/xen/Kconfig 2008-01-08 12:26:03.000000000
> +0100
> +++ head-2008-01-08/drivers/xen/Kconfig 2008-01-08 14:56:58.000000000 +0100
> @@ -13,7 +13,7 @@ config XEN
>  if XEN
>  config XEN_INTERFACE_VERSION
> hex
> - default 0x00030207
> + default 0x30207
>  
>  menu "XEN"
>  
> Index: head-2008-01-08/include/linux/vermagic.h
> ===================================================================
> --- head-2008-01-08.orig/include/linux/vermagic.h 2006-11-29
> 22:57:37.000000000 +0100
> +++ head-2008-01-08/include/linux/vermagic.h 2008-01-08 15:01:52.000000000
> +0100
> @@ -17,6 +17,11 @@
>  #else
>  #define MODULE_VERMAGIC_MODULE_UNLOAD ""
>  #endif
> +#ifdef CONFIG_XEN
> +#define MODULE_VERMAGIC_XEN "Xen:" __stringify(CONFIG_XEN_INTERFACE_VERSION)
> " "
> +#else
> +#define MODULE_VERMAGIC_XEN
> +#endif
>  #ifndef MODULE_ARCH_VERMAGIC
>  #define MODULE_ARCH_VERMAGIC ""
>  #endif
> @@ -24,5 +29,6 @@
>  #define VERMAGIC_STRING       \
> UTS_RELEASE " "       \
> MODULE_VERMAGIC_SMP MODULE_VERMAGIC_PREEMPT    \
> - MODULE_VERMAGIC_MODULE_UNLOAD MODULE_ARCH_VERMAGIC   \
> + MODULE_VERMAGIC_MODULE_UNLOAD MODULE_VERMAGIC_XEN  \
> + MODULE_ARCH_VERMAGIC      \
> "gcc-" __stringify(__GNUC__) "." __stringify(__GNUC_MINOR__)
> 
> 
> 
> 
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxxxxxxxx 
> http://lists.xensource.com/xen-devel 




_______________________________________________
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®.