Jordan,

On 08/26/14 11:52, Gerd Hoffmann wrote:
> On Di, 2014-08-26 at 10:22 +0200, Laszlo Ersek wrote:
>> When setting up the list of GOP modes offered on QEMU's stdvga ("VGA")
>> and
>> QXL ("qxl-vga") video devices, QemuVideoBochsModeSetup() filters those
>> modes against the available framebuffer size. (Refer to SVN r15288 /
>> git
>> commit ec88061e.)
>>
>> The VBE_DISPI_INDEX_VIDEO_MEMORY_64K register of both stdvga and QXL
>> is
>> supposed to report the size of the drawable, VGA-compatibility
>> framebuffer. Instead, up to and including qemu-2.1, this register
>> actually
>> reports the full video RAM (PCI BAR 0) size.
>>
>> In case of stdvga, this happens to be correct, because on that card
>> the
>> full PCI BAR 0 is usable for drawing; there is no difference between
>> "drawable framebuffer size" and "video RAM (PCI BAR 0) size".
>>
>> However, on the QXL card, only an initial portion of the video RAM is
>> suitable for drawing, as compatibility framebuffer; and the value
>> currently reported by VBE_DISPI_INDEX_VIDEO_MEMORY_64K overshoots the
>> valid size. Beyond the drawable range, the video RAM contains buffers
>> and
>> structures for the QXL guest-host protocol.
>>
>> Luckily, the size of the drawable QXL framebuffer can also be read
>> from a
>> register in the QXL ROM BAR (PCI BAR 2), so let's retrieve it from
>> there.
>>
>> Without this fix, OVMF offers too large resolutions on the QXL card
>> (up to
>> the full size of the video RAM). If a GOP client selects such a
>> resolution
>> and draws into the video RAM past the compatibility segment, then the
>> guest corrupts its communication structures (which is invalid guest
>> behavior).
>>
>> Contributed-under: TianoCore Contribution Agreement 1.0
>> Signed-off-by: Laszlo Ersek <ler...@redhat.com>
> 
> Reviewed-by: Gerd Hoffmann <kra...@redhat.com>

can you please apply this?

Thanks,
Laszlo


------------------------------------------------------------------------------
Slashdot TV.  
Video for Nerds.  Stuff that matters.
http://tv.slashdot.org/
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-devel

Reply via email to