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

Re: [Xen-devel] Rebooting domu fails in nfs share exported from another domu on the same dom0

On 2014/7/17 11:49, Roger Pau Monné wrote:
On 16/07/14 22:36, annie li wrote:

I hit a problem in such scenario: vm1 is running and export nfs service,
dom0 mount this nfs, and vm2 is booted in this nfs location. vm1 and vm2
are running on the same dom0.

When this bug happens, the data flow is:  vm2 blkfront-> vm2 blkback->
loop -> nfs file -> nfs client -> bridge priv1 -> vm1 vif -> vm1 netback
-> vm1 netfront.

In above data flow, nfs implements direct io, blkfront and blkback uses
grantmap. This makes page mapping works well through vm2 blkfront to vm1
netback. However, when netback does grant copy, the error happens in
this routine:
If it's the same error I was seeing (which I think it is), the problem
is due to trying to do a grant_copy with the PFN of a grant mapped page
in Dom0, which Xen refuses to perform.

I've never followed it up, but I think the problem should be fixed in
Linux, so that netback realises it is trying to perform a grant_copy to
a granted page, and use the grant ref instead of the PFN.

I guess the routine is similar if using grant ref. See __gnttab_copy function, The routine goes into __acquire_grant_for_copy for grant ref, and then __get_paged_frame->get_page_from_gfn->get_page. get_page is where the checking page owner fails.


Xen-devel mailing list



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