From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:55046) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1R5yth-0007uE-O3 for qemu-devel@nongnu.org; Tue, 20 Sep 2011 07:54:01 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1R5ytg-0000dY-GO for qemu-devel@nongnu.org; Tue, 20 Sep 2011 07:53:57 -0400 Received: from mx1.redhat.com ([209.132.183.28]:6707) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1R5ytg-0000dO-4d for qemu-devel@nongnu.org; Tue, 20 Sep 2011 07:53:56 -0400 Date: Tue, 20 Sep 2011 14:55:04 +0300 From: "Michael S. Tsirkin" Message-ID: <20110920115504.GA18393@redhat.com> References: <20110904181313.GA14020@redhat.com> <4E7007D6.8030102@cn.fujitsu.com> <4E784A33.7040302@cn.fujitsu.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <4E784A33.7040302@cn.fujitsu.com> Subject: Re: [Qemu-devel] [PATCH] pci: implement bridge filtering List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Wen Congyang , avi@redhat.com Cc: Kevin Wolf , Isaku Yamahata , qemu-devel@nongnu.org On Tue, Sep 20, 2011 at 04:09:23PM +0800, Wen Congyang wrote: > At 09/14/2011 09:48 AM, Wen Congyang Write: > > At 09/05/2011 02:13 AM, Michael S. Tsirkin Write: > >> Support bridge filtering on top of the memory > >> API as suggested by Avi Kivity: > >> > >> Create a memory region for the bridge's address space. This region is > >> not directly added to system_memory or its descendants. Devices under > >> the bridge see this region as its pci_address_space(). The region is > >> as large as the entire address space - it does not take into account > >> any windows. > >> > >> For each of the three windows (pref, non-pref, vga), create an alias > >> with the appropriate start and size. Map the alias into the bridge's > >> parent's pci_address_space(), as subregions. > >> > >> Signed-off-by: Michael S. Tsirkin > >> --- > >> > >> The below seems to work fine for me so I applied this. > >> Still need to test bridge filtering, any help with this > >> appreciated. > >> > > > > > > I test bridge filtering, and the BAR still can be visible on guest even if > > I change the memory region. > > Hi Michael S. Tsirkin: > I test pci bridge filtering on real hardware, and I find that I can mmap > the resource after I change the memory base and memory limit(The BAR should > be not visible on OS after changing the memory region). > > So I try to write and read to the BAR. Here is my test result: > 1. Before changing the pci bridge's memory region, I can read and write to the memory, and > I can get the same value that I write. > > 2. After changing the pci bridge's memory region, I can still read and write to the memory, > but it is very slow, and I can not get the same value that I write(The value is always 0). > > Does this result means that pci bridge filtering works fine? > > Thanks > Wen Congyang Sounds more or less right except I expect to get ffffffff and not 0. Avi, any idea? -- MST