|
|
|
|
|
|
|
|
|
|
xen-devel
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
|
|
|
|
|