Re: [Xen-devel] [PATCH v6] xen/grant-table: Avoid m2p_override duringmapping

From: Stefano Stabellini
Date: Fri Jan 24 2014 - 07:28:07 EST


On Thu, 23 Jan 2014, Matt Wilson wrote:
> On Thu, Jan 23, 2014 at 09:23:44PM +0000, Zoltan Kiss wrote:
> > The grant mapping API does m2p_override unnecessarily: only gntdev needs it,
> > for blkback and future netback patches it just cause a lock contention, as
> > those pages never go to userspace. Therefore this series does the following:
> > - the original functions were renamed to __gnttab_[un]map_refs, with a new
> > parameter m2p_override
> > - based on m2p_override either they follow the original behaviour, or just set
> > the private flag and call set_phys_to_machine
> > - gnttab_[un]map_refs are now a wrapper to call __gnttab_[un]map_refs with
> > m2p_override false
> > - a new function gnttab_[un]map_refs_userspace provides the old behaviour
> >
> > It also removes a stray space from page.h and change ret to 0 if
> > XENFEAT_auto_translated_physmap, as that is the only possible return value
> > there.
> >
> > v2:
> > - move the storing of the old mfn in page->index to gnttab_map_refs
> > - move the function header update to a separate patch
> >
> > v3:
> > - a new approach to retain old behaviour where it needed
> > - squash the patches into one
> >
> > v4:
> > - move out the common bits from m2p* functions, and pass pfn/mfn as parameter
> > - clear page->private before doing anything with the page, so m2p_find_override
> > won't race with this
> >
> > v5:
> > - change return value handling in __gnttab_[un]map_refs
> > - remove a stray space in page.h
> > - add detail why ret = 0 now at some places
> >
> > v6:
> > - don't pass pfn to m2p* functions, just get it locally
> >
> > Signed-off-by: Zoltan Kiss <zoltan.kiss@xxxxxxxxxx>
> > Suggested-by: David Vrabel <david.vrabel@xxxxxxxxxx>
>
> Apologies for coming in late on this thread. I'm quite behind on
> xen-devel mail that isn't CC: to me.
>
> It seems to have been forgotten that Anthony and I proposed a similar
> change last November.
>
> https://lkml.kernel.org/r/1384307336-5328-1-git-send-email-anthony@xxxxxxxxxxxxx
>
> Or am I misunderstanding the change?

Matt, you are correct, it is very similar. I had forgotten about
Anthony's patch, otherwise I would have CC'ed him in the discussion.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/