This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


Re: [Xen-devel] VP problematic for backend drivers on IA64?

To: Gerd Hoffmann <kraxel@xxxxxxx>
Subject: Re: [Xen-devel] VP problematic for backend drivers on IA64?
From: Muli Ben-Yehuda <mulix@xxxxxxxxx>
Date: Wed, 25 Jan 2006 18:46:18 +0200
Cc: "Magenheimer, Dan \(HP Labs Fort Collins\)" <dan.magenheimer@xxxxxx>, xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxx>, okrieg@xxxxxxxxxx
Delivery-date: Wed, 25 Jan 2006 16:55:10 +0000
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <43D7A658.4020105@xxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <20060120015505.GB8504@xxxxxxxxxxxxxxxxxxx> <43D75311.3040808@xxxxxxx> <20060125143732.GE24849@xxxxxxxxxxxxxxxxxxx> <43D7A658.4020105@xxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mutt/1.5.11
On Wed, Jan 25, 2006 at 05:24:56PM +0100, Gerd Hoffmann wrote:
>   Hi,
> > I think it's a pretty ugly hack; struct page has a very specific
> > meaning in Linux. Minimizing changes in Linux by subverting this
> > meaning does not strike me as the right thing to do.
> Well, not exactly nice indeed, but any other solution involves touching
> all block drivers ...

Right. I've been thinking about this sporadically since the summit and
don't have a good answer yet.

> Depends.  If it's actually DMA'ing directly it doesn't, which should be
> true in 99% of all cases.  But there are some corner cases:  If the
> block layer needs bounce buffers it will attempt to kmap() the page to
> copy the data.  The same is true for drivers which don't DMA (floppy.c
> for example).

That's a good point. Since Xen provides its own "IOMMU" (swiotlb at
the moment), I think we should set PCI_DMA_BUS_IS_PHYS so that the
block layer never does bounce buffers on its own - unless doing it
there is more efficient?

As for drivers that don't use DMA - we only care about
para-virtualized drivers. I doubt we'll see any PV drivers where the
real drivers don't do DMA.

Muli Ben-Yehuda
http://www.mulix.org | http://mulix.livejournal.com/

Xen-devel mailing list