From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:50277) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TQXQ7-00041c-LT for qemu-devel@nongnu.org; Tue, 23 Oct 2012 01:52:56 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TQXQ6-0001iK-M7 for qemu-devel@nongnu.org; Tue, 23 Oct 2012 01:52:55 -0400 Received: from mail-la0-f45.google.com ([209.85.215.45]:53556) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TQXQ6-0001i9-CP for qemu-devel@nongnu.org; Tue, 23 Oct 2012 01:52:54 -0400 Received: by mail-la0-f45.google.com with SMTP id m13so2026442lah.4 for ; Mon, 22 Oct 2012 22:52:52 -0700 (PDT) MIME-Version: 1.0 In-Reply-To: <50852299.8090109@redhat.com> References: <1350897839-29593-1-git-send-email-pingfank@linux.vnet.ibm.com> <1350897839-29593-14-git-send-email-pingfank@linux.vnet.ibm.com> <50852299.8090109@redhat.com> From: liu ping fan Date: Tue, 23 Oct 2012 13:52:32 +0800 Message-ID: Content-Type: text/plain; charset=ISO-8859-1 Subject: Re: [Qemu-devel] [patch v4 13/16] e1000: add busy flag to anti broken device state List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Avi Kivity Cc: Liu Ping Fan , Stefan Hajnoczi , Marcelo Tosatti , qemu-devel@nongnu.org, Anthony Liguori , Jan Kiszka , Paolo Bonzini On Mon, Oct 22, 2012 at 6:40 PM, Avi Kivity wrote: > On 10/22/2012 11:23 AM, Liu Ping Fan wrote: >> The broken device state is caused by releasing local lock before acquiring >> big lock. To fix this issue, we have two choice: >> 1.use busy flag to protect the state >> The drawback is that we will introduce independent busy flag for each >> independent device's logic unit. >> 2.reload the device's state >> The drawback is if the call chain is too deep, the action to reload will >> touch each layer. Also the reloading means to recaculate the intermediate >> result based on device's regs. >> >> This patch adopt the solution 1 to fix the issue. > > Doesn't the nested mmio patch detect this? > It will only record and fix the issue on one thread. But guest can touch the emulated device on muti-threads. > > -- > error compiling committee.c: too many arguments to function >