[fedora-virt] Re: virt-inspector calling guestfs_umount_all() before launch()?
Charles Duffy
charles at dyfis.net
Thu May 28 16:50:00 UTC 2009
Richard W.M. Jones wrote:
> Charles, can you see if this fixes the problem?
>
> It's completely untested, and might even segfault the Perl bindings
> because of BZ #501892 (which really needs to be fixed).
>
It doesn't fix things completely, due to what appears to be a qemu bug
-- apparently, -snapshot doesn't work correctly with -drive, and
snapshot=on needs to be used instead. I've tested this by setting
LIBGUESTFS_QEMU to a wrapper which adds ,cache=off,snapshot=on to each
-drive parameter, which works correctly; using only -snapshot fails as
below.
The generated command line correctly includes -snapshot, and qemu
correctly creates a read-only file to store changes to, but we still
fail (albeit differently) on attempted journal replay:
hda: max request size: 128KiB
hda: 2016 sectors (1 MB) w/256KiB Cache, CHS=2/16/63, (U)DMA
hda: cache flushes supported
hda:<4>hda: dma_timer_expiry: dma status == 0x61
hda: DMA timeout error
sock_read_event: 0x9ec8f0 g->state = 1, fd = 3, events = 0x1
stdout_event: 0x9ec8f0: child process died
wait_ready: guestfs_wait_ready failed, see earlier error messages at
/usr/bin/virt-inspector line 219.
closing guestfs handle 0x9ec8f0 (state 0)
Manually creating a new, writable backing store (qemu-img create -b
da.qcow2 -f qcow2 da.tmp.qcow2) and running against that (with --force),
virt-inspector works correctly, just as it does with snapshot=on passed
to the individual -drive options and no global -snapshot flag at all.
One other issue with that patch is that it passes an empty string rather
than no secondary parameter at all in place of the null:
/usr/bin/qemu-kvm -snapshot '' -drive file=da.qcow2 [...]
More information about the Fedora-virt
mailing list