[libvirt] [PATCH] Fix reporting of i/o errors by iohelper process

Jason J. Herne jjherne at linux.vnet.ibm.com
Thu Feb 5 16:26:20 UTC 2015


Hello Eric,

it has been quite a while since we have looked at this :). I'm 
revisiting this problem and I find that it still exists. Here is an 
archive link of our previous discussions on this:

https://www.redhat.com/archives/libvir-list/2014-July/thread.html#00809

Basically, when I do a migration and run out of disk space I do not see 
a meaningful error message without this patch. Early on in our previous 
discussions you asked me how I had gotten through the 
qemuDomainSaveMemory function without hitting this code:

if (virFileWrapperFdClose(wrapperFd) < 0)
         goto cleanup;

If qemuMigrationToFile fails we go directly to cleanup and do not pass 
through the virFileWrapperFdClose call. For reference:

     /* Perform the migration */
     if (qemuMigrationToFile(driver, vm, fd, offset, path,
                             qemuCompressProgramName(compressed),
                             bypassSecurityDriver,
                             asyncJob) < 0)
         goto cleanup;

This is why my patch adds the additional call to virFileWrapperFdClose. 
Perhaps, if we cannot tolerate calling it twice, I can adjust the code 
such that we only call it once.

For some odd reason, you seem to see messages that I do not (take look 
at my final message in the thread linked above). I was not able to see 
your "goodbye world \n" message.

I would be interested to know what you see when you run my test case 
without my patch. If you feel like trying it just create a 50MB disk 
image and loop mount it:

   mount -o loop /usr/local/var/lib/libvirt/qemu/save.img 
/usr/local/var/lib/libvirt/qemu/save

Then:
	virsh managedsave guestname

And report what you saw on the command line and the libvirtd console 
and/or log depending on how you run the daemon. I suspect (since you saw 
"goodbye world") that you would also see the out of disk space message 
ok. If I'm correct, then the question becomes... why don't I see it too? :)

Thanks for your time.

-- 
-- Jason J. Herne (jjherne at linux.vnet.ibm.com)




More information about the libvir-list mailing list