mirror of
https://github.com/cloud-hypervisor/cloud-hypervisor.git
synced 2026-08-05 02:19:16 +00:00
block: vhdx: restrict logical sector size to 512 bytes
cloud-hypervisor always advertises a 512-byte logical block size over virtio-blk, so a 4096-byte-sector VHDx image could never be addressed correctly. Reject it at metadata parse time, matching QEMU's VHDx support. Signed-off-by: Alexander Lvov <alexander.lvov.git@gmail.com>
This commit is contained in:
committed by
Rob Bradford
parent
d414127b08
commit
8d6a38770f
@@ -175,8 +175,7 @@ impl DiskSpec {
|
||||
f.read_exact_at(&mut item, item_offset)
|
||||
.map_err(VhdxMetadataError::ReadMetadata)?;
|
||||
disk_spec.logical_sector_size = LittleEndian::read_u32(&item);
|
||||
if !(disk_spec.logical_sector_size == 512 || disk_spec.logical_sector_size == 4096)
|
||||
{
|
||||
if disk_spec.logical_sector_size != 512 {
|
||||
return Err(VhdxMetadataError::InvalidLogicalSectorSize);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user