[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 11:29:37AM +0100, Gerd Hoffmann wrote:

> One suggestion from the summit was to allocate some "struct page" for
> foreign pages and tag them somehow (new page flag + grant table handle
> in page->private maybe).  The xenified kernel's DMA mapping
> implementation can check the flag then and do the "right thing".  I'm
> not fully aware what other consequences this has for the linux memory
> management,

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.

At the moment we simply use the struct page to pass information
between the Xen aware backends and the non-Xen-aware Linux drivers
that do the actual DMA. This requires however that the struct page
point to an actual physical page, which ideally wouldn't be required
at all - Linux is never going to look at the page (kmap it). Having
said that, changing the DMA-API to take something other than a virtual
address (that then gets translated to physical, then to machine) is
not a trivial undertaking.

> asking on lkml how to deal with that (and maybe get
> other/better suggestions) is probably not a bad idea.  At least one
> place which must also be touched for that is kmap()+friends.

Sure, I'd be interested in the response.

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®.