Re: [PATCH] xen-gnttab: do not add m2p override entries for blkbackmappings

From: David Vrabel
Date: Wed Nov 13 2013 - 05:37:15 EST


On 13/11/13 01:48, Anthony Liguori wrote:
> From: Anthony Liguori <aliguori@xxxxxxxxxx>
>
> Commit 5dc03639 switched blkback to also add m2p override entries
> when mapping grant pages but history seems to have forgotten why
> this is useful if it ever was.
>
> The blkback driver does not need m2p override entries to exist
> and there is significant overhead due to the locking in the m2p
> override table. We see about a 10% improvement in IOP rate with
> this patch applied running FIO in the guest.
>
> See http://article.gmane.org/gmane.linux.kernel/1590932 for a full
> analysis of current users.

I think it would be better if it was made clearer what
m2p_add/remove_override() is for (i.e., allowing get_user_pages_fast()
to work) so there isn't this confusion in the future. Please add some
comments for this and move the calls into the gntdev driver.

In the future I would like to see the grant map/unmap done in
m2p_add/remove_override() moved into gntdev as well, but this isn't a
requirement for this performance fix.

As a prerequiste, the call to dma_mark_clean() in xen_swiotlb_unmap()
needs to be removed and replaced with a comment explaining why this now
differs from the generic implementation. i.e., the necessary
phys_to_virt() will not work for foreign pages and dma_mark_clean() is a
nop on all Xen supported architectures.

David
--
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/