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 <[email protected]> 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
