Re: [PATCH] KVM: x86: fix vcpu->mmio_fragments overflow

From: Avi Kivity
Date: Mon Oct 22 2012 - 08:56:40 EST


On 10/22/2012 02:45 PM, Jan Kiszka wrote:
> On 2012-10-22 14:18, Avi Kivity wrote:
>> On 10/22/2012 01:45 PM, Jan Kiszka wrote:
>>
>>>> Indeed. git pull, recheck and call for kvm_flush_coalesced_mmio_buffer()
>>>> is gone. So this will break new userspace, not old. By global you mean
>>>> shared between devices (or memory regions)?
>>>
>>> Yes. We only have a single ring per VM, so we cannot flush multi-second
>>> VGA access separately from other devices. In theory solvable by
>>> introducing per-region rings that can be driven separately.
>>
>> But in practice unneeded. Real time VMs can disable coalescing and not
>> use planar VGA modes.
>
> A) At least right now, we do not differentiate between the VGA modes and
> if flushing is needed. So that device is generally taboo for RT cores of
> the VM.

In non-planar modes the memory will be direct mapped, which overrides
coalescing (since kvm or qemu never see an exit).

> B) We need to disable coalescing in E1000 as well - if we want to use
> that model.

True.

--
error compiling committee.c: too many arguments to function
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/