Thanks Gerd,

Gentle ping on this.

Sam

> On 1 Jul 2019, at 10:41, Gerd Hoffmann <kra...@redhat.com> wrote:
> 
> On Wed, Jun 26, 2019 at 03:39:40PM +0300, Sam Eiderman wrote:
>> v1:
>> 
>> Non-standard logical geometries break under QEMU.
>> 
>> A virtual disk which contains an operating system which depends on
>> logical geometries (consistent values being reported from BIOS INT13
>> AH=08) will most likely break under QEMU/SeaBIOS if it has non-standard
>> logical geometries - for example 56 SPT (sectors per track).
>> No matter what QEMU will guess - SeaBIOS, for large enough disks - will
>> use LBA translation, which will report 63 SPT instead.
>> 
>> In addition we can not enforce SeaBIOS to rely on phyiscal geometries at
>> all. A virtio-blk-pci virtual disk with 255 phyiscal heads can not
>> report more than 16 physical heads when moved to an IDE controller, the
>> ATA spec allows a maximum of 16 heads - this is an artifact of
>> virtualization.
>> 
>> By supplying the logical geometies directly we are able to support such
>> "exotic" disks.
>> 
>> We will use fw_cfg to do just that.
>> 
>> v2:
>> 
>> Fix missing parenthesis check in
>>    "hd-geo-test: Add tests for lchs override"
>> 
>> v3:
>> 
>> * Rename fw_cfg key to "bios-geometry".
>> * Remove "extendible" interface.
>> * Add cpu_to_le32 fix as Laszlo suggested or big endian hosts
>> * Fix last qtest commit - automatic docker tester for some reason does not 
>> have qemu-img set
>> 
>> v4:
>> 
>> * Change fw_cfg interface from mixed textual/binary to textual only
>> 
>> v5:
>> 
>> * Fix line > 80 chars in tests/hd-geo-test.c
> 
> Reviewed-by: Gerd Hoffmann <kra...@redhat.com>
> 
> cheers,
>  Gerd
> 


Reply via email to