[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
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |