From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=45105 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1P8KnR-0007Cl-Nd for qemu-devel@nongnu.org; Tue, 19 Oct 2010 18:36:42 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1P8KnQ-00073U-9s for qemu-devel@nongnu.org; Tue, 19 Oct 2010 18:36:41 -0400 Received: from mail.valinux.co.jp ([210.128.90.3]:43159) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1P8KnQ-00073P-0m for qemu-devel@nongnu.org; Tue, 19 Oct 2010 18:36:40 -0400 Date: Wed, 20 Oct 2010 07:36:37 +0900 From: Isaku Yamahata Message-ID: <20101019223637.GC30021@valinux.co.jp> References: <20101019115131.GA6752@redhat.com> <20101019151947.GA30021@valinux.co.jp> <20101019170655.GA21866@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20101019170655.GA21866@redhat.com> Subject: [Qemu-devel] Re: [PATCH v5 00/14] pcie port switch emulators List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "Michael S. Tsirkin" Cc: skandasa@cisco.com, etmartin@cisco.com, qemu-devel@nongnu.org, wexu2@cisco.com On Tue, Oct 19, 2010 at 07:06:55PM +0200, Michael S. Tsirkin wrote: > On Wed, Oct 20, 2010 at 12:19:47AM +0900, Isaku Yamahata wrote: > > On Tue, Oct 19, 2010 at 01:51:31PM +0200, Michael S. Tsirkin wrote: > > > On Tue, Oct 19, 2010 at 06:06:27PM +0900, Isaku Yamahata wrote: > > > > On uncorrectable error status register in pcie_aer_write_config(). > > > > The register is RW1CS, so making it writable and test-and-clear doesn't > > > > work. > > > > > > Sure. But isn't this what w1cmask implements? > > > > It's not simple W1C. > > Well it's also sticky, but this only affects reset. > What else is different? The bit of uncorsta that corresponds to the first error: If 1b is written, the side effects takes place. If multiple header recording is disabled, the bit is W1C. If multiple header recording is enabled, the bit may or may not be cleared depending on whether recorded errors. The next error header is pulled out from the internal log. (the first error bit moves to the one that corresponds to the pulled-out one.) The other bits of uncorsta If multiple header recording is disabled, the bit is W1C. If multiple header recording is enabled, the value isn't cleared even when 1b is written. So since we set w1cmask, we need to restore the old value. -- yamahata