From: Olaf Hering Date: Tue, 17 Jun 2014 08:44:40 +0000 (+0200) Subject: libxl: properly set default of discard_enable X-Git-Tag: archive/raspbian/4.8.0-1+rpi1~1^2~4855 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=364c9ee0076d66498c1ae2b2c65833cbe433ceba;p=xen.git libxl: properly set default of discard_enable Initialze discard_enable properly. This avoids a crash if a libxl_device_disk with an uninitialized discard_enable is passed to device_disk_add. Up to now only xl initialized discard_enable in its config parser. External users of libxl, such as libvirt, do not need to provide a default value. Signed-off-by: Olaf Hering Acked-by: Ian Campbell --- diff --git a/tools/libxl/libxl.c b/tools/libxl/libxl.c index 4b66afc7b2..9054c3b353 100644 --- a/tools/libxl/libxl.c +++ b/tools/libxl/libxl.c @@ -2025,6 +2025,8 @@ int libxl__device_disk_setdefault(libxl__gc *gc, libxl_device_disk *disk) { int rc; + libxl_defbool_setdefault(&disk->discard_enable, !!disk->readwrite); + rc = libxl__resolve_domid(gc, disk->backend_domname, &disk->backend_domid); if (rc < 0) return rc; diff --git a/tools/libxl/libxlu_disk.c b/tools/libxl/libxlu_disk.c index 752a2c7cdc..18fe386dbe 100644 --- a/tools/libxl/libxlu_disk.c +++ b/tools/libxl/libxlu_disk.c @@ -79,7 +79,6 @@ int xlu_disk_parse(XLU_Config *cfg, if (!disk->pdev_path || !strcmp(disk->pdev_path, "")) disk->format = LIBXL_DISK_FORMAT_EMPTY; } - libxl_defbool_setdefault(&disk->discard_enable, !!disk->readwrite); if (!disk->vdev) { xlu__disk_err(&dpc,0, "no vdev specified");