[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [patch v4 00/16] push mmio dispatch out of big lock
From: |
Jan Kiszka |
Subject: |
Re: [Qemu-devel] [patch v4 00/16] push mmio dispatch out of big lock |
Date: |
Thu, 25 Oct 2012 21:00:09 +0200 |
User-agent: |
Mozilla/5.0 (X11; U; Linux i686 (x86_64); de; rv:1.8.1.12) Gecko/20080226 SUSE/2.0.0.12-1.1 Thunderbird/2.0.0.12 Mnenhy/0.7.5.666 |
On 2012-10-25 20:13, Marcelo Tosatti wrote:
> On Thu, Oct 25, 2012 at 06:13:51PM +0100, Peter Maydell wrote:
>> On 25 October 2012 18:07, Avi Kivity <address@hidden> wrote:
>>> On 10/25/2012 04:04 PM, Peter Maydell wrote:
>>>> Is there a clear up to date description somewhere of the design and
>>>> locking strategy here somewhere? I'd rather not have to try to
>>>> reconstitute it by reading the whole patchset...
>>>
>>> It was described somewhere in a document by Marcelo and myself.
>>> Basically the goal is to arrive at
>>>
>>> address_space_write():
>>> rcu_read_lock()
>>> mr = lookup()
>>> mr->ref()
>>> rcu_read_unlock()
>>>
>>> mr->dispatch()
>>>
>>> mr->unref()
>>>
>>> This is the same strategy used in many places in the kernel.
>>
>> Yes, but this is rather short on the details (eg, does every
>> device have its own lock, what are we doing with irqs, how about
>> dma from devices, etc etc). It's the details of the design I'd
>> like to see described...
>>
>> -- PMM
>
> A document should be maintained and updated to reflect ongoing
> agreement of problems and solutions... Jan/Liu, someone steps up
> to do that?
I can pick this up as I have to anyway. First results will be pushed to
the wiki, around or after the KVM forum.
Jan
>
> The original is:
> http://lists.gnu.org/archive/html/qemu-devel/2012-06/msg04315.html
>
> For one thing, inter-device DMA issue discussed on the list is not
> covered and probably large parts of it are obsolete by now (and
> should be deleted).
--
Siemens AG, Corporate Technology, CT RTC ITP SDP-DE
Corporate Competence Center Embedded Linux
- Re: [Qemu-devel] [patch v4 11/16] vcpu: push mmio dispatcher out of big lock, (continued)
- [Qemu-devel] [patch v4 15/16] e1000: introduce unmap() to fix unplug issue, Liu Ping Fan, 2012/10/22
- [Qemu-devel] [patch v4 02/16] qom: apply atomic on object's refcount, Liu Ping Fan, 2012/10/22
- [Qemu-devel] [patch v4 16/16] e1000: implement MemoryRegionOps's ref&lock interface, Liu Ping Fan, 2012/10/22
- Re: [Qemu-devel] [patch v4 00/16] push mmio dispatch out of big lock, Peter Maydell, 2012/10/25
- Re: [Qemu-devel] [patch v4 00/16] push mmio dispatch out of big lock, Avi Kivity, 2012/10/29