On 04/08/2011 01:43 AM, Stefan Hajnoczi wrote:
On Mon, Mar 28, 2011 at 04:15:57PM -0700, Josh Durgin wrote:
librbd stacks on top of librados to provide access
to rbd images.
Using librbd simplifies the qemu code, and allows
qemu to use new versions of the rbd format
with few (if any) changes.
Signed-off-by: Josh Durgin<josh.durgin@xxxxxxxxxxxxx>
Signed-off-by: Yehuda Sadeh<yehuda@xxxxxxxxxxxxxxx>
---
block/rbd.c | 785 +++++++++++++++--------------------------------------
block/rbd_types.h | 71 -----
configure | 33 +--
3 files changed, 221 insertions(+), 668 deletions(-)
delete mode 100644 block/rbd_types.h
Hi Josh,
I have applied your patches onto qemu.git/master and am running
ceph.git/master.
Unfortunately qemu-iotests fails for me.
Test 016 seems to hang in qemu-io -g -c write -P 66 128M 512
rbd:rbd/t.raw. I can reproduce this consistently. Here is the
backtrace of the hung process (not consuming CPU, probably deadlocked):
This hung because it wasn't checking the return value of rbd_aio_write.
I've fixed this in the for-qemu branch of
http://ceph.newdream.net/git/qemu-kvm.git. Also, the existing rbd
implementation is not 'growable' - writing to a large offset will not
expand the rbd image correctly. Should we implement bdrv_truncate to
support this (librbd has a resize operation)? Is bdrv_truncate useful
outside of qemu-img and qemu-io?
Test 008 failed with an assertion but succeeded when run again. I think
this is a race condition:
This is likely a use-after-free, but I haven't been able to find the
race condition yet (or reproduce it). Could you get a backtrace from the
core file?
Thanks,
Josh
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html