From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:58803) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Rjs5d-00080I-9P for qemu-devel@nongnu.org; Sun, 08 Jan 2012 07:43:10 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Rjs5c-0000c8-3r for qemu-devel@nongnu.org; Sun, 08 Jan 2012 07:43:09 -0500 Received: from mx1.redhat.com ([209.132.183.28]:1026) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Rjs5b-0000c4-S0 for qemu-devel@nongnu.org; Sun, 08 Jan 2012 07:43:08 -0500 Date: Sun, 8 Jan 2012 14:45:17 +0200 From: "Michael S. Tsirkin" Message-ID: <20120108124516.GC26189@redhat.com> References: <1325687322-6797-1-git-send-email-avi@redhat.com> <20120104144721.GA5961@redhat.com> <4F05BE55.8030209@weilnetz.de> <20120108091706.GA25444@redhat.com> <4F0969BB.7080208@redhat.com> <20120108101242.GA26189@redhat.com> <4F097465.8090103@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <4F097465.8090103@redhat.com> Subject: Re: [Qemu-devel] [PATCH master/stable-1.0] pci: fix corrupted pci conf index register by unaligned write List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Avi Kivity Cc: Stefan Weil , qemu-devel@nongnu.org On Sun, Jan 08, 2012 at 12:48:05PM +0200, Avi Kivity wrote: > On 01/08/2012 12:12 PM, Michael S. Tsirkin wrote: > > > > > > > > > And the check for unaligned writes is, well, unusual :-) > > > > > > What's unusual? > > > > > > > > > > This seems to be how memory API behaves ... right, Avi? > > > > Maybe this should be documented somewhere. > > > > > > Document what? > > > > That address passed to callbacks is in fact an offset > > from start of the region. > > > > It's documented already (and it's not new - since 8da3ff18097, Dec 2008). True, memory.h explicitly says: @addr is relative to @mr But now that's mentioned, I have a question: we could also specify min access size and disable unaligned access in ops.valid structure. That would trigger machine checks on access errors instead of ignoring them as we do now. Anyone knows offhand what does real hardware do? > -- > error compiling committee.c: too many arguments to function