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

[Xen-devel] Re: [PATCH 1/3] xen: pvhvm: allow user to request no emulated device unplug



On Thu, 19 Aug 2010, Ian Campbell wrote:
> this allows the user to disable pvhvm and revert to emulated devices
> in case of a system misconfiguration (e.g. initramfs with only
> emulated drivers in it).
> 

I think this option might be a good thing to have, expecially to debug
qemu-xen emulated devices.

> Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx>
> ---
>  Documentation/kernel-parameters.txt |    1 +
>  arch/x86/xen/platform-pci-unplug.c  |   12 ++++++++++--
>  2 files changed, 11 insertions(+), 2 deletions(-)
> 
> diff --git a/Documentation/kernel-parameters.txt 
> b/Documentation/kernel-parameters.txt
> index 2c85c06..8bbe83b 100644
> --- a/Documentation/kernel-parameters.txt
> +++ b/Documentation/kernel-parameters.txt
> @@ -2631,6 +2631,7 @@ and is between 256 and 4096 characters. It is defined 
> in the file
>                       all -- unplug all emulated devices (NICs and IDE disks)
>                       ignore -- continue loading the Xen platform PCI driver 
> even
>                               if the version check failed
> +                     never -- do not unplug even if version check succeeds
>  
>       xirc2ps_cs=     [NET,PCMCIA]
>                       Format:
> diff --git a/arch/x86/xen/platform-pci-unplug.c 
> b/arch/x86/xen/platform-pci-unplug.c
> index 554c002..c82ce1e 100644
> --- a/arch/x86/xen/platform-pci-unplug.c
> +++ b/arch/x86/xen/platform-pci-unplug.c
> @@ -33,7 +33,7 @@
>  int xen_platform_pci_unplug;
>  EXPORT_SYMBOL_GPL(xen_platform_pci_unplug);
>  #ifdef CONFIG_XEN_PVHVM
> -static int xen_emul_unplug;
> +static int xen_emul_unplug = -1;
>  
>  static int __init check_platform_magic(void)
>  {
> @@ -72,18 +72,23 @@ void __init xen_unplug_emulated_devices(void)
>  {
>       int r;
>  
> +     /* user explicitly requested no unplug */
> +     if (xen_emul_unplug == 0)
> +             return;
>       /* check the version of the xen platform PCI device */
>       r = check_platform_magic();
>       /* If the version matches enable the Xen platform PCI driver.
>        * Also enable the Xen platform PCI driver if the version is really old
>        * and the user told us to ignore it. */
>       if (r && !(r == XEN_PLATFORM_ERR_MAGIC &&
> +                     (xen_emul_unplug != -1) &&
>                       (xen_emul_unplug & XEN_UNPLUG_IGNORE)))

I wouldn't add xen_emul_unplug != -1 because it should be clear that
xen_emul_unplug & XEN_UNPLUG_IGNORE always implies xen_emul_unplug != -1.

The other two patches look fine to me.


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