[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH 4 of 4 v2] blktap3/libxl: pygrub support for RAW and VHD images
This patch allows guests to boot from RAW and VHD images using pygrub. Signed-off-by: Thanos Makatos <thanos.makatos@xxxxxxxxxx> diff --git a/tools/blktap3/drivers/tapdisk-control.c b/tools/blktap3/drivers/tapdisk-control.c --- a/tools/blktap3/drivers/tapdisk-control.c +++ b/tools/blktap3/drivers/tapdisk-control.c @@ -910,7 +910,7 @@ tapdisk_control_xenblkif_connect( assert(request); assert(response); - len = strnlen(request->u.string.text, TAPDISK_MESSAGE_STRING_LENGTH); + len = strnlen(request->u.blkif.params, TAPDISK_MESSAGE_STRING_LENGTH); /* TODO boilerplate */ if (len < 1) { err = -EINVAL; diff --git a/tools/libxl/libxl.c b/tools/libxl/libxl.c --- a/tools/libxl/libxl.c +++ b/tools/libxl/libxl.c @@ -2636,6 +2636,7 @@ void libxl__device_disk_local_initiate_a } break; case LIBXL_DISK_BACKEND_QDISK: + case LIBXL_DISK_BACKEND_TAP3: if (disk->format != LIBXL_DISK_FORMAT_RAW) { libxl__prepare_ao_device(ao, &dls->aodev); dls->aodev.callback = local_device_attach_cb; @@ -2728,6 +2729,7 @@ void libxl__device_disk_local_initiate_d switch (disk->backend) { case LIBXL_DISK_BACKEND_QDISK: + case LIBXL_DISK_BACKEND_TAP3: if (disk->vdev != NULL) { GCNEW(device); rc = libxl__device_from_disk(gc, LIBXL_TOOLSTACK_DOMID, diff --git a/tools/libxl/libxl_device.c b/tools/libxl/libxl_device.c --- a/tools/libxl/libxl_device.c +++ b/tools/libxl/libxl_device.c @@ -753,8 +753,8 @@ void libxl__wait_device_connection(libxl */ device_hotplug(egc, aodev); return; - } - + } else if (aodev->dev->backend_kind == LIBXL__DEVICE_KIND_VBD3) + goto out; rc = libxl__ev_devstate_wait(gc, &aodev->backend_ds, device_backend_callback, state_path, XenbusStateInitWait, _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |