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

RE: [Xen-devel] new hypercall implementation question



> On 07/23/09 07:31, Dan Magenheimer wrote:
> > Is it safe to pass three guest virtual addresses via a hypercall
> > to Xen and expect Xen to safely copy data (two scalars and one
> > array of pagesize-bytes... not necessarily aligned on a page
> > boundary) back to the guest, or do I need to do something fancy
> > to avoid weird corner cases, e.g. to ensure restartabililty
> > in case of guest page fault?
> >
> > This is a privileged-only hypercall used only as part of
> > save/restore/live-migrate (for tmem) if that is relevant.
> >   
> 
> For x86 its OK to pass kernel vaddrs to Xen and have it interpret them
> with the current pagetable.  There should be no pagefaults, or rather,
> the hypercall will fail with EFAULT.
> 
> I think ia64 has problems with anything other than physical addresses
> being passed, and has to do all that handle stuff to convert.

Thanks for the reply.  After sending, I remembered that
the "proper" way to do this in Xen tools is to bracket
the hypercall with lock_pages/unlock_pages for any vaddr
passed to the hypercall.  I hope that's not too horribly
expensive.

Thanks,
Dan

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

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