qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] No error report when using the qemu-img.exe to convert a di


From: Guangmu Zhu
Subject: [Qemu-devel] No error report when using the qemu-img.exe to convert a disk to vmdk format which is saved on a disk that has no more space
Date: Tue, 22 Sep 2015 14:09:08 +0800

Hi,

I used the qemu-img.exe to convert a disk to vmdk format and the output file size could be 300 MB. However the left space of the disk the output file located on was about 200 MB. After a while, the left space had been zero but the program didn't stop or report any error. It was just going on as normal.

I read the source code and found the error report was controlled by "BlockdevOnError on_read_error, on_write_error" in "struct BlockDriverState", which had the default value "BLOCKDEV_ON_ERROR_REPORT" for "on_read_error" and "BLOCKDEV_ON_ERROR_ENOSPC" for "on_writer_error". The qemu-img.exe had no option to change the default behavior of the error report.

So I think if there were some ways to change the default value of the error report, it might be better. Further more, I suggest we could just add some codes to the "img_convert" function:

      1827:    out_blk = img_open("target", out_filename, out_fmt, flags, true, quiet);
      1828:    if (!out_blk) {
      1829:        ret = -1;
      1830:        goto out;
      1831:    }
      1832:    out_bs = blk_bs(out_blk);
++ 1833:
++ 1834:    bdrv_set_on_error(out_bs, BLOCKDEV_ON_ERROR_REPORT, BLOCKDEV_ON_ERROR_REPORT);

Thanks,
Guangmu Zhu

reply via email to

[Prev in Thread] Current Thread [Next in Thread]