> I would very much like to be able to mmap multiple pages
> in xenaccess. I believe this is possible using the same
> function xenaccess employs, xc_map_foreign_range, and
> changing the argument for size.
>
> However, this function seems to have very strange failure
> semantics, since some pages in a range sometimes cannot
> be mapped. Does anybody understand how partial failures
> work with this function?
I haven't played with this, but it sounds like it could be nasty. For
example, if you need to check for a failed page mapping anyway, then
you might not see much savings over just mapping the pages manually as
you need them.
> Bryan, would you have a problem if I added something like
> xa_access_virtual_range to the API?
This is fine with me. We will, of course, need to make sure that the
semantics make sense and that failed page mappings are detectable and
such. If this were c++, I'd say that we should just override the []
operator to transparently handle mapping pages as needed. In c, I'm
not sure if there's an equally transparent solution. At any rate, I'm
open to ideas, and if you'd like to play with this and code something
up, then I'm happy to add the patch into the system.
Thanks,
-bryan
--
Bryan D. Payne
Graduate Student, Computer Science
Georgia Tech Information Security Center
http://www.bryanpayne.org
|