From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:43909) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TRRw1-0003eT-UO for qemu-devel@nongnu.org; Thu, 25 Oct 2012 14:13:43 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TRRw0-0002KF-QH for qemu-devel@nongnu.org; Thu, 25 Oct 2012 14:13:37 -0400 Received: from mx1.redhat.com ([209.132.183.28]:61161) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TRRw0-0002Js-HP for qemu-devel@nongnu.org; Thu, 25 Oct 2012 14:13:36 -0400 Date: Thu, 25 Oct 2012 16:13:11 -0200 From: Marcelo Tosatti Message-ID: <20121025181311.GA9988@amt.cnet> References: <1350897839-29593-1-git-send-email-pingfank@linux.vnet.ibm.com> <508971E2.9050309@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: Subject: Re: [Qemu-devel] [patch v4 00/16] push mmio dispatch out of big lock List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Peter Maydell Cc: Liu Ping Fan , Stefan Hajnoczi , qemu-devel@nongnu.org, Avi Kivity , Anthony Liguori , Jan Kiszka , Paolo Bonzini On Thu, Oct 25, 2012 at 06:13:51PM +0100, Peter Maydell wrote: > On 25 October 2012 18:07, Avi Kivity 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? 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).