qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] selecting VIRTIO_INPUT and VIRTIO_VGA


From: Peter Maydell
Subject: Re: [Qemu-devel] selecting VIRTIO_INPUT and VIRTIO_VGA
Date: Sun, 26 Jul 2015 11:40:51 +0100

On 26 July 2015 at 11:17, Peter Maydell <address@hidden> wrote:
> On 26 July 2015 at 10:31, Laszlo Ersek <address@hidden> wrote:
>> On 07/25/15 11:49, Gerd Hoffmann wrote:
>>> virtio-vga in vga-compat mode uses a framebuffer with the usual dirty
>>> tracking logic in pci bar 0 (simliar to stdvga).  Which is exactly the
>>> thing causing the cache coherency issues on aarch64 if I understand
>>> things correctly.
>>
>> Yes. :(
>
> The question for cache-coherency of an emulated framebuffer with
> KVM is simply "does the guest set up this region of physical address
> space as Normal Cacheable memory, or does it set it up as Device
> or some other non-cacheable memory attribute type?". Whether the
> framebuffer is part of a PCI BAR or shared with "guest RAM" doesn't
> matter for this. (Of course it may matter for the guest if the
> guest makes assumptions about what kind of mapping it needs to
> use for any PCI BAR.)

...and note also that it doesn't matter for this whether the
guest expects the graphics device to automatically notice
writes via dirty-tracking or whether it explicitly says "hey
I wrote to the framebuffer" somehow -- if the guest and QEMU
disagree about whether the memory is cacheable then you are
potentially going to run into corruption problems.

-- PMM



reply via email to

[Prev in Thread] Current Thread [Next in Thread]