On 19 January 2016 at 12:24, Hans Petter Selasky <h...@selasky.org> wrote: > On 01/19/16 21:05, Adrian Chadd wrote: >> >> Erm, ok. So I'm confused about the state of how the streams are >> tracked. So not all mbufs are in a stream, but they're in some single >> LRO mbuf list? >> > > Hi, > > The streams are typically tracked using the hardware generated Toeplitz hash > value. The mbufs are sorted according to the hash value and the hash type. > The list of mbufs is scanned, flushing the LRO entries every time we see a > change in the hash value or hash type. OK?
Sure, but TCP fragments and non-fragments can hash to different values, so suddenly you get interleaved packets. You can't rely on the toeplitz hash 100% hashing /all packets in a stream/ reliably, because it's highly dependent upon the NIC config. This is why I did all that effort in the RSS code to handle things. -a _______________________________________________ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"