[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <6035A0D088A63A46850C3988ED045A4B3880B5B5@BITCOM1.int.sbss.com.au>
Date: Tue, 26 Mar 2013 11:15:13 +0000
From: James Harper <james.harper@...digoit.com.au>
To: David Vrabel <david.vrabel@...rix.com>
CC: Wei Liu <wei.liu2@...rix.com>,
Ian Campbell <Ian.Campbell@...rix.com>,
"konrad.wilk@...cle.com" <konrad.wilk@...cle.com>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>,
Wei Liu <liuw@...w.name>,
"xen-devel@...ts.xen.org" <xen-devel@...ts.xen.org>,
"annie.li@...cle.com" <annie.li@...cle.com>
Subject: RE: [Xen-devel] [PATCH 5/6] xen-netback: coalesce slots before
copying
>
> On 26/03/13 10:52, James Harper wrote:
> >>> It's not clear why 19 or 20 were suggested as possible values.
> >>> I checked back to 2.6.18 and MAX_SKB_FRAGS there is
> >>> (65536/PAGE_SIZE + 2)
> >>
> >> Because the check is >= MAX_SKB_FRAGS originally and James Harper
> >> told me that "Windows stops counting on 20".
> >>
> >
> > I've obviously not been clear enough here... GPLPV stopped counting
> > at 20 (only needed to know if <20 or not). Windows itself can submit
> > a packet to NDIS with hundreds of buffers. It doesn't really matter
> > if it's 21 or 1021, I just didn't want to be misquoted.
>
> This still isn't clear. What's the maximum number of ring entries that
> GPLPV driver will use per packet? Are you saying it's 20? If so how
> has the GPLPV driver ever worked well with Linux's netback (with its
> historical limit of 18)?
>
GPLPV will limit to 19, which I thought was the historic Linux limit but obviously not. I'd better look in to that.
I added a debug statement to catch what Windows would give to GPLPV, and it seemed that the maximum was 20, but then I double checked and GPLPV only needs to know if there are >19 frags or not, so it stops counting at 20. The actual number Windows will use internally is not limited so coalescing is required, and no sane amount of bumping up the Linux limit will reduce the requirement that a Windows driver will need to coalesce.
James
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists