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

Re: [Xen-devel] [PATCH] libxl: Do not SEGV when no 'removable' disk parameter in xenstore



On Wed, 8 Jun 2011, Marek Marczykowski wrote:
> # HG changeset patch
> # User Marek Marczykowski <marmarek@xxxxxxxxxxxx>
> # Date 1307145395 -7200
> # Node ID b2b8fef3732c10f012fc209d2850e80d95471582
> # Parent  0c0f9e1bd14073b5cb1d4f58b6950d16128003fa
> libxl: Do not SEGV when no 'removable' disk parameter in xenstore
> 
> Just assume disk as not removable when no 'removable' paremeter
> 
> Signed-off-by: Marek Marczykowski <marmarek@xxxxxxxxxxxx>
> 

Acked-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>

> diff --git a/tools/libxl/libxl.c b/tools/libxl/libxl.c
> --- a/tools/libxl/libxl.c
> +++ b/tools/libxl/libxl.c
> @@ -1563,6 +1563,7 @@ static unsigned int libxl__append_disk_l
>                               libxl__xs_get_dompath(gc, 0), type, domid);
>      dir = libxl__xs_directory(gc, XBT_NULL, be_path, &n);
>      if (dir) {
> +        char *removable;
>          *disks = realloc(*disks, sizeof (libxl_device_disk) * (*ndisks + n));
>          pdisk = *disks + *ndisks;
>          *ndisks += n;
> @@ -1580,7 +1581,11 @@ static unsigned int libxl__append_disk_l
>                  libxl__sprintf(gc, "%s/%s/type", be_path, *dir)), 
>                  &(pdisk->backend));
>              pdisk->vdev = xs_read(ctx->xsh, XBT_NULL, libxl__sprintf(gc, 
> "%s/%s/dev", be_path, *dir), &len);
> -            pdisk->unpluggable = atoi(libxl__xs_read(gc, XBT_NULL, 
> libxl__sprintf(gc, "%s/%s/removable", be_path, *dir)));
> +            removable = libxl__xs_read(gc, XBT_NULL, libxl__sprintf(gc, 
> "%s/%s/removable", be_path, *dir));
> +            if (removable)
> +                pdisk->unpluggable = atoi(removable);
> +            else
> +                pdisk->unpluggable = 0;
>              if (!strcmp(libxl__xs_read(gc, XBT_NULL, libxl__sprintf(gc, 
> "%s/%s/mode", be_path, *dir)), "w"))
>                  pdisk->readwrite = 1;
>              else
> 
> 
> 
> _______________________________________________
> 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®.