Thread (53 messages) 53 messages, 14 authors, 2013-04-09

RE: [Xen-devel] [PATCH 5/6] xen-netback: coalesce slots before copying

From: Paul Durrant <hidden>
Date: 2013-03-26 11:38:12

-----Original Message-----
From: James Harper [mailto:james.harper@bendigoit.com.au]
Sent: 26 March 2013 11:29
To: Paul Durrant; Wei Liu; David Vrabel
Cc: Ian Campbell; Wei Liu; netdev@vger.kernel.org;
konrad.wilk@oracle.com; xen-devel@lists.xen.org; annie.li@oracle.com
Subject: RE: [Xen-devel] [PATCH 5/6] xen-netback: coalesce slots before
copying
quoted
quoted
As stated previously, I've observed windows issuing staggering numbers
of
quoted
quoted
buffers to NDIS miniport drivers, so you will need to coalesce in a
windows
quoted
quoted
driver anyway. I'm not sure what the break even point is but I think it's
safe
quoted
quoted
to say that in the choice between using 1000 (worst case) ring slots (with
the
resulting mapping overheads) and coalescing in the frontend, coalescing
is
quoted
quoted
going to be the better option.
Oh quite, if the backend is mapping and not copying then coalescing in the
frontend is the right way to go. I guess coalescing once the frag count
reaches a full ring count is probably necessary (since we can't push a partial
packet) but it would be nice not to have to do it if the backend is going to
copy anyway.
For a 9k packet with 100 frags (not a common case, but an example), what is
the cost of mapping those 100 frags into the backend vs coalescing to three
pages in the frontend and mapping those?

I may be misremembering but wasn't there a patch floating around for
persistent mapping to avoid some of this overhead? (not applicable here but
I thought it meant that the cost wasn't insignificant)
The current version of netback does not map, it always grant-copies.

  Paul
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help