[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

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

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



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.