Re: [PATCH] MMIO: Make coalesced mmio use a device per zone

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

 



On Tue, Jul 19, 2011 at 8:23 PM, Jan Kiszka <jan.kiszka@xxxxxxxxxxx> wrote:
> On 2011-07-19 19:17, Avi Kivity wrote:
>> On 07/19/2011 08:14 PM, Jan Kiszka wrote:
>>>
>>> Another improvement - unfortunately less transparent for user space -
>>> would be to overcome the single ring buffer that forces us to hold a
>>> central lock in user space while processing the entries. We rather need
>>> per-device rings. While waiting for coalesced VGA MMIO being processed,
>>> way too many kittens are killed.
>>>
>>> I have this on our agenda, but I wouldn't be disappointed as well if
>>> someone else is faster.
>>
>> The socket mmio would have accomplished this as well.

It's possible to process the coalesced mmio ring without waiting for
an exit, no? Is the performance that bad?

I would have thought it's reasonable after seeing how well
virtio-blk/virtio-net behave.

>
> I haven't followed the outcome in all details - is that approach dead
> due to its complexity?

The ability to allow reverse direction in the socket ('read' support
instead of just write) is making it a bit complex. Hopefully it'll be
ready soon.

>
>> One thing to
>> beware of is to preserve correctness:
>>
>> 1) write to 0xa0000 (queued)
>> 2) write to 0xa0002 (queued)
>> 3) remap 0xa0000 region (executed)
>
> Obviously, there must be 3a) here: drain all affected queues.
>
>> 4) write to 0xa000 (queued)
>> 5) drain queue
>>
>> writes 1 and 2 go to the wrong place.
>>
>
> Jan
>
> --
> Siemens AG, Corporate Technology, CT T DE IT 1
> Corporate Competence Center Embedded Linux
>
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux