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

Re: [fedora-virt] Re: virt-inspector calling guestfs_umount_all() before launch()?

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 [...]

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