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

Re: [Xen-devel] libxl: locally attaching disk

FYI modifying the "if (got == ds->wanted)" to "if (got >= ds->wanted)" in 
devstate_watch_callback (libxl_event.c) resolves the problem. Is this a correct 
solution or will it break stuff? (There are some checks missing).

> -----Original Message-----
> From: Thanos Makatos
> Sent: 14 May 2013 14:20
> To: 'xen-devel@xxxxxxxxxxxxx'
> Subject: libxl: locally attaching disk
> I want to implement booting from VHD images using pygrub for blktap3.
> I'm trying to use the existing code for qemu: in
> libxl__device_disk_local_initiate_attach I tell libxl to do exactly the
> same thing it does for the LIBXL_DISK_BACKEND_QDISK case in the switch
> statement (similar for libxl__device_disk_local_initiate_detach).
> I run into the following problem: blkfront goes directly from state 1
> to state 3, the back-end follows by jumping to state 4, and finally the
> front-end goes to state 4 and everything works fine (this is what is
> done for domU guests using blktap3 without pygrub). However, it seems
> that libxl expects the backend to step through each state (specifically
> it times out waiting for the back-end to go to state 2 but the back-end
> has already gone to state 4). If I correctly understand the protocol
> specification in xen/include/public/io/blkif.h, libxl shouldn't be

Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.