Copy Kevin.

On Wed, May 28, 2025 at 07:21:12PM +0530, Anushree Mathur wrote:
> Hi all,
> 
> 
> When I am trying to migrate the guest from host1 to host2 with the command
> line as follows:
> 
> date;virsh migrate --live --domain guest1 qemu+ssh://dest/system --verbose
> --undefinesource --persistent --auto-converge --postcopy
> --copy-storage-all;date
> 
> and it fails with the following error message-
> 
> error: internal error: unable to execute QEMU command 'block-export-add':
> Block node is read-only
> 
> HOST ENV:
> 
> qemu : QEMU emulator version 9.2.2
> libvirt : libvirtd (libvirt) 11.1.0
> Seen with upstream qemu also
> 
> Steps to reproduce:
> 1) Start the guest1
> 2) Migrate it with the command as
> 
> date;virsh migrate --live --domain guest1 qemu+ssh://dest/system --verbose
> --undefinesource --persistent --auto-converge --postcopy
> --copy-storage-all;date
> 
> 3) It fails as follows:
> error: internal error: unable to execute QEMU command 'block-export-add':
> Block node is read-only
> 
> Things I analyzed-
> 1) This issue is not happening if I give --unsafe option in the virsh
> migrate command
> 
> 2) O/P of qemu-monitor command also shows ro as false
> 
> virsh qemu-monitor-command guest1 --pretty --cmd '{ "execute": "query-block"
> }'
> {
>   "return": [
>     {
>       "io-status": "ok",
>       "device": "",
>       "locked": false,
>       "removable": false,
>       "inserted": {
>         "iops_rd": 0,
>         "detect_zeroes": "off",
>         "image": {
>           "virtual-size": 21474836480,
>           "filename": "/home/Anu/guest_anu.qcow2",
>           "cluster-size": 65536,
>           "format": "qcow2",
>           "actual-size": 5226561536,
>           "format-specific": {
>             "type": "qcow2",
>             "data": {
>               "compat": "1.1",
>               "compression-type": "zlib",
>               "lazy-refcounts": false,
>               "refcount-bits": 16,
>               "corrupt": false,
>               "extended-l2": false
>             }
>           },
>           "dirty-flag": false
>         },
>         "iops_wr": 0,
>         "ro": false,
>         "node-name": "libvirt-1-format",
>         "backing_file_depth": 0,
>         "drv": "qcow2",
>         "iops": 0,
>         "bps_wr": 0,
>         "write_threshold": 0,
>         "encrypted": false,
>         "bps": 0,
>         "bps_rd": 0,
>         "cache": {
>           "no-flush": false,
>           "direct": false,
>           "writeback": true
>         },
>         "file": "/home/Anu/guest_anu.qcow2"
>       },
>       "qdev": "/machine/peripheral/virtio-disk0/virtio-backend",
>       "type": "unknown"
>     }
>   ],
>   "id": "libvirt-26"
> }
> 
> 
> 3) Guest doesn't have any readonly
> 
> virsh dumpxml guest1 | grep readonly
> 
> 4) Tried giving the proper permissions also
> 
> -rwxrwxrwx. 1 qemu qemu 4.9G Apr 28 15:06 guest_anu.qcow2
> 
> 5) Checked for the permission of the pool also that is also proper!
> 
> 6) Found 1 older bug similar to this, pasting the link for reference:
> 
> 
> https://patchwork.kernel.org/project/qemu-devel/patch/20170811164854.GG4162@localhost.localdomain/
> 
> 
> 
> Thanks,
> Anushree-Mathur
> 
> 

-- 
Peter Xu


Reply via email to