-
Bug
-
Resolution: Unresolved
-
Critical
-
CNV v4.21.0
-
None
-
Quality / Stability / Reliability
-
5
-
False
-
-
False
-
None
-
Release Notes
-
-
Known Issue
-
Proposed
-
-
CNV Storage Sprint 283
-
Important
-
None
Description of problem:
OCS -> HPP migration fails for VMs that clone from DataSource, but works for VMs with imported DV (standalone DV or DVTemplate both work)
target virt-launcher:
virt-launcher-vm-with-instance-type-1769081840-1429327-vd58c 0/2 Error 0 10m
{"component":"virt-launcher","level":"error","msg":"internal error: QEMU unexpectedly closed the monitor (vm='storage-migration-test-storage-class-migration_vm-with-instance-type-1769081840-1429327'): 2026-01-22T11:39:44.944892Z qemu-kvm: -blockdev {\"driver\":\"raw\",\"file\":\"libvirt-2-storage\",\"offset\":0,\"size\":34359738368,\"node-name\":\"libvirt-2-slice-sto\",\"read-only\":false,\"discard\":\"unmap\",\"cache\":{\"direct\":true,\"no-flush\":false}}: The sum of offset (0) and size (0) has to be smaller or equal to the actual size of the containing file (34145828864)","pos":"qemuProcessReportLogError:2059","subcomponent":"libvirt","thread":"87","timestamp":"2026-01-22T11:39:44.959000Z"}
{"component":"virt-launcher","level":"error","msg":"internal error: process exited while connecting to monitor: 2026-01-22T11:39:44.944892Z qemu-kvm: -blockdev {\"driver\":\"raw\",\"file\":\"libvirt-2-storage\",\"offset\":0,\"size\":34359738368,\"node-name\":\"libvirt-2-slice-sto\",\"read-only\":false,\"discard\":\"unmap\",\"cache\":{\"direct\":true,\"no-flush\":false}}: The sum of offset (0) and size (0) has to be smaller or equal to the actual size of the containing file (34145828864)","pos":"qemuProcessReportLogError:2059","subcomponent":"libvirt","thread":"22","timestamp":"2026-01-22T11:39:44.959000Z"}
$ oc get vmim -A NAMESPACE NAME PHASE VMI storage-migration-test-storage-class-migration kubevirt-workload-update-4kc8x Pending vm-with-instance-type-1769081840-1429327 storage-migration-test-storage-class-migration kubevirt-workload-update-69ppp Failed vm-with-instance-type-1769081840-1429327 storage-migration-test-storage-class-migration kubevirt-workload-update-vj6t7 Succeeded fedora-vm-with-existing-dv-1769081839-1558466
The failed VMIM says the same: spec: vmiName: vm-with-instance-type-1769081840-1429327 status: migrationState: endTimestamp: "2026-01-22T11:39:44Z" failed: true failureReason: 'virError(Code=1, Domain=10, Message=''internal error: process exited while connecting to monitor: 2026-01-22T11:39:44.944892Z qemu-kvm: -blockdev {"driver":"raw","file":"libvirt-2-storage","offset":0,"size":34359738368,"node-name":"libvirt-2-slice-sto","read-only":false,"discard":"unmap","cache":{"direct":true,"no-flush":false}}: The sum of offset (0) and size (0) has to be smaller or equal to the actual size of the containing file (34145828864)'')'
Version-Release number of selected component (if applicable):
4.21.0
How reproducible:
Always
Steps to Reproduce:
1. 2. 3.
Actual results:
OCS -> HPP migration fails for VMs with cloned DataSource
Expected results:
Migration succeeds
Additional info:
VM with DataSource - fails
$ oc get vm -n storage-migration-test-storage-class-migration vm-from-template-and-data-source-1769086906-6917074 -oyaml apiVersion: kubevirt.io/v1 kind: VirtualMachine metadata: annotations: kubemacpool.io/transaction-timestamp: "2026-01-22T13:04:30.831861815Z" kubevirt.io/latest-observed-api-version: v1 kubevirt.io/storage-observed-api-version: v1 creationTimestamp: "2026-01-22T13:01:46Z" finalizers: - kubevirt.io/virtualMachineControllerFinalize generation: 3 name: vm-from-template-and-data-source-1769086906-6917074 namespace: storage-migration-test-storage-class-migration resourceVersion: "36374555" uid: 77d10478-af7c-4a4f-87f7-23b61067a287 spec: dataVolumeTemplates: - apiVersion: cdi.kubevirt.io/v1beta1 kind: DataVolume metadata: creationTimestamp: null name: rhel9-1769086906-6746864-mig-wfl9 spec: sourceRef: kind: DataSource name: rhel9 namespace: openshift-virtualization-os-images storage: resources: requests: storage: "34144990004" storageClassName: hostpath-csi-basic runStrategy: Always template: metadata: creationTimestamp: null labels: debugLogs: "true" kubevirt.io/domain: vm-from-template-and-data-source-1769086906-6917074 kubevirt.io/vm: vm-from-template-and-data-source-1769086906-6917074 spec: architecture: amd64 domain: devices: disks: - disk: bus: virtio name: dv-disk - disk: bus: virtio name: cloudinitdisk rng: {} firmware: serial: cecd6bf4-de90-4a2c-83d5-5378f80ce6ca uuid: a8b3b373-17d0-4c21-8c11-ae45beded92b machine: type: pc-q35-rhel9.6.0 memory: guest: 1536Mi resources: {} volumes: - dataVolume: name: rhel9-1769086906-6746864-mig-wfl9 name: dv-disk - cloudInitNoCloud: userData: |- #cloud-config chpasswd: expire: false password: password user: cloud-user ssh_authorized_keys: [ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDHc4QtjLCOOY8eJbnmtZkXCCXukVYQc05sxNnce9isIPNTf8LSaB+T5YFwxsgiOMUBrvw+wt2Tp9oglVmKVIQDCp76rLhBfHfltHVb6SeBRiq0brEcTAUzkIb/uJTlv25/TDw4bYYf+y/q/zimmHzE5dM0AE3PTkfZoVS8TyOjHl5W3dCMQARNJBvXFx+TId14xj4oh12Cw6XpdjjraFK3FzwkIPs/TZ8/DAzoYHikckVTyepy/ZvxOrDP9Vna8RCslaVcluuEqQ8ArFkH2Ui6ydUGm0uw5S/jRPXafDaS5cddJKqhT4OWbr8qEJWbgqSh6Enxs3WYcbcsJJPEvK45 root@exec1.rdocloud] runcmd: ['grep ssh-rsa /etc/crypto-policies/back-ends/opensshserver.config || sudo update-crypto-policies --set LEGACY || true', "sudo sed -i 's/^#\\?PasswordAuthentication no/PasswordAuthentication yes/g' /etc/ssh/sshd_config", 'sudo systemctl enable sshd', 'sudo systemctl restart sshd'] name: cloudinitdisk updateVolumesStrategy: Migration status: conditions: - lastProbeTime: null lastTransitionTime: "2026-01-22T13:03:07Z" status: "True" type: Ready - lastProbeTime: null lastTransitionTime: null message: All of the VMI's DVs are bound and ready reason: AllDVsReady status: "True" type: DataVolumesReady - lastProbeTime: null lastTransitionTime: null status: "True" type: LiveMigratable - lastProbeTime: null lastTransitionTime: null status: "True" type: StorageLiveMigratable - lastProbeTime: "2026-01-22T13:03:57Z" lastTransitionTime: null status: "True" type: AgentConnected - lastProbeTime: null lastTransitionTime: "2026-01-22T13:04:31Z" message: migrate volumes status: "True" type: VolumesChange created: true desiredGeneration: 3 observedGeneration: 2 printableStatus: Running ready: true runStrategy: Always volumeSnapshotStatuses: - enabled: false name: dv-disk reason: 'No VolumeSnapshotClass: Volume snapshots are not configured for this StorageClass [hostpath-csi-basic] [dv-disk]' - enabled: false name: cloudinitdisk reason: Snapshot is not supported for this volumeSource type [cloudinitdisk] volumeUpdateState: volumeMigrationState: migratedVolumes: - destinationPVCInfo: claimName: rhel9-1769086906-6746864-mig-wfl9 volumeMode: Filesystem sourcePVCInfo: claimName: rhel9-1769086906-6746864 volumeMode: Block volumeName: dv-disk
VM with imported DV - succeeds
$ oc get vm -n storage-migration-test-storage-class-migration vm-from-template-and-imported-dv-1769086907-1733487 -oyaml apiVersion: kubevirt.io/v1 kind: VirtualMachine metadata: annotations: kubemacpool.io/transaction-timestamp: "2026-01-22T13:04:30.919352799Z" kubevirt.io/latest-observed-api-version: v1 kubevirt.io/storage-observed-api-version: v1 creationTimestamp: "2026-01-22T13:01:47Z" finalizers: - kubevirt.io/virtualMachineControllerFinalize generation: 3 name: vm-from-template-and-imported-dv-1769086907-1733487 namespace: storage-migration-test-storage-class-migration resourceVersion: "36375054" uid: 1e3a0426-7c52-4812-afda-6134990ca538 spec: dataVolumeTemplates: - metadata: creationTimestamp: null name: dv-rhel-imported-mig-wfl9 namespace: storage-migration-test-storage-class-migration spec: source: http: certConfigMap: artifactory-configmap secretRef: cnv-tests-artifactory-secret url: <server>/artifactory/cnv-qe-server-local/cnv-tests/rhel-images/rhel-96.qcow2 storage: resources: requests: storage: 20Gi storageClassName: hostpath-csi-basic runStrategy: Always template: metadata: creationTimestamp: null labels: debugLogs: "true" kubevirt.io/domain: vm-from-template-and-imported-dv-1769086907-1733487 kubevirt.io/vm: vm-from-template-and-imported-dv-1769086907-1733487 spec: architecture: amd64 domain: devices: disks: - disk: bus: virtio name: dv-disk - disk: bus: virtio name: cloudinitdisk rng: {} firmware: serial: 120e4e93-3cf2-4a2b-80ad-9cdd71449911 uuid: c226aad1-72be-4182-bc5f-fc930799d52e machine: type: pc-q35-rhel9.6.0 memory: guest: 1536Mi resources: {} volumes: - dataVolume: name: dv-rhel-imported-mig-wfl9 name: dv-disk - cloudInitNoCloud: userData: |- #cloud-config chpasswd: expire: false password: password user: cloud-user ssh_authorized_keys: [ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDHc4QtjLCOOY8eJbnmtZkXCCXukVYQc05sxNnce9isIPNTf8LSaB+T5YFwxsgiOMUBrvw+wt2Tp9oglVmKVIQDCp76rLhBfHfltHVb6SeBRiq0brEcTAUzkIb/uJTlv25/TDw4bYYf+y/q/zimmHzE5dM0AE3PTkfZoVS8TyOjHl5W3dCMQARNJBvXFx+TId14xj4oh12Cw6XpdjjraFK3FzwkIPs/TZ8/DAzoYHikckVTyepy/ZvxOrDP9Vna8RCslaVcluuEqQ8ArFkH2Ui6ydUGm0uw5S/jRPXafDaS5cddJKqhT4OWbr8qEJWbgqSh6Enxs3WYcbcsJJPEvK45 root@exec1.rdocloud] runcmd: ['grep ssh-rsa /etc/crypto-policies/back-ends/opensshserver.config || sudo update-crypto-policies --set LEGACY || true', "sudo sed -i 's/^#\\?PasswordAuthentication no/PasswordAuthentication yes/g' /etc/ssh/sshd_config", 'sudo systemctl enable sshd', 'sudo systemctl restart sshd'] name: cloudinitdisk updateVolumesStrategy: Migration status: conditions: - lastProbeTime: null lastTransitionTime: "2026-01-22T13:05:14Z" status: "True" type: Ready - lastProbeTime: null lastTransitionTime: null message: All of the VMI's DVs are bound and ready reason: AllDVsReady status: "True" type: DataVolumesReady - lastProbeTime: null lastTransitionTime: null message: 'cannot migrate VMI: PVC dv-rhel-imported-mig-wfl9 is not shared, live migration requires that all PVCs must be shared (using ReadWriteMany access mode)' reason: DisksNotLiveMigratable status: "False" type: LiveMigratable - lastProbeTime: null lastTransitionTime: null status: "True" type: StorageLiveMigratable - lastProbeTime: "2026-01-22T13:03:49Z" lastTransitionTime: null status: "True" type: AgentConnected created: true desiredGeneration: 3 observedGeneration: 2 printableStatus: Running ready: true runStrategy: Always volumeSnapshotStatuses: - enabled: false name: dv-disk reason: 'No VolumeSnapshotClass: Volume snapshots are not configured for this StorageClass [hostpath-csi-basic] [dv-disk]' - enabled: false name: cloudinitdisk reason: Snapshot is not supported for this volumeSource type [cloudinitdisk] volumeUpdateState: volumeMigrationState: migratedVolumes: - destinationPVCInfo: claimName: dv-rhel-imported-mig-wfl9 volumeMode: Filesystem sourcePVCInfo: claimName: dv-rhel-imported volumeMode: Block volumeName: dv-disk
Checked with MTC - (MTC version released about half a year ago)
OCS -> HPP is working for all VMs (only had 4.20 env for that, not 4.21)
- links to