From owner-freebsd-net@FreeBSD.ORG Mon Mar 23 23:42:15 2015 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 2EF8DCA5; Mon, 23 Mar 2015 23:42:15 +0000 (UTC) Received: from mail.strugglingcoder.info (strugglingcoder.info [65.19.130.35]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 0F71ED8; Mon, 23 Mar 2015 23:42:14 +0000 (UTC) Received: from localhost (unknown [10.1.1.3]) (Authenticated sender: hiren@strugglingcoder.info) by mail.strugglingcoder.info (Postfix) with ESMTPSA id 5CF11106EF7; Mon, 23 Mar 2015 16:42:14 -0700 (PDT) Date: Mon, 23 Mar 2015 16:42:14 -0700 From: hiren panchasara To: freebsd-net@freebsd.org, jfv@freebsd.org, erj@freebsd.org Subject: Full 32bit flowid from igb(4) Message-ID: <20150323234214.GU53237@strugglingcoder.info> References: <20150323233908.GT53237@strugglingcoder.info> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="R7Dyui215VKdTDYA" Content-Disposition: inline In-Reply-To: <20150323233908.GT53237@strugglingcoder.info> User-Agent: Mutt/1.5.23 (2014-03-12) Cc: Adrian Chadd , Jason Wolfe X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 23 Mar 2015 23:42:15 -0000 --R7Dyui215VKdTDYA Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Correcting Eric's email and subject line. On 03/23/15 at 04:39P, hiren panchasara wrote: > scottl@freebsd.org > Bcc:=20 > Subject: Full 32bit flowid from igb(4) [was: Re: Unbalanced LACP link] > Reply-To:=20 > In-Reply-To: <20150319175145.GH53237@strugglingcoder.info> >=20 > On 03/19/15 at 10:51P, hiren panchasara wrote: > > On 03/17/15 at 12:34P, Adrian Chadd wrote: > > > On 17 March 2015 at 11:33, Jason Wolfe wrote: > > > > On Mon, Mar 16, 2015 at 2:43 AM, Hans Petter Selasky wrote: > > > >> On 03/16/15 10:37, Vitalii Duk wrote: > > > >>> > > > >>> I've changed use_flowid to 0 and it helped! But isn't it setting > > > >>> significant? In a description it says "Shift flowid bits to preve= nt > > > >>> multiqueue collisions". > > > >> > > > >> > > > >> Hi, > > > >> > > > >> Maybe your ethernet hardware is not properly setting the m_flowid = =2E.. > > > >> > > > >> --HPS > > > >> > > > > > > > > Flip use_flowid back to 1 and try setting > > > > net.link.lagg.default_flowid_shift / net.link.lagg.X.flowid_shift t= o 0 > > > > as Hiren suggested. r260179 added this shift, which has caused us > > > > balancing issues with the i350/igb. > > > > > > > > https://svnweb.freebsd.org/base?view=3Drevision&revision=3D260179 > > > > > > > > Based on Adrian's comment about igb/ixgbe not setting the 'full > > > > flowid' under normal conditions, does that mean this shift should b= e 0 > > > > by default to ensure we don't break balancing for devices that only > > > > set the CPU/MSIX queue? > > >=20 > > > Or we can just see if there's anything wrong with putting the full 32 > > > bit RSS flowid in received packets that have them. > >=20 > > It'd be nice to have but for now I am proposing following to fix a known > > broken case because of an optimization: > > https://reviews.freebsd.org/D2098 >=20 > Turns out, setting flowid_shift to 0 is not the correct solution. Please > look at the review above for more details.=20 >=20 > Looking at the code, we have a way to get full flowid but it's hidden > under "ifdef RSS": > rxr->fmp->m_pkthdr.flowid =3D le32toh(cur->wb.lower.hi_dword.rss); >=20 > Using just this line gives me good hash on I350 igb(4) chipset that we > have. >=20 > Is it possible to expose this outside RSS? Would this break other > things/chips? >=20 > Cheers, > Hiren --R7Dyui215VKdTDYA Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.22 (FreeBSD) iQF8BAEBCgBmBQJVEKTVXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXRBNEUyMEZBMUQ4Nzg4RjNGMTdFNjZGMDI4 QjkyNTBFMTU2M0VERkU1AAoJEIuSUOFWPt/lomgIAKIvM6TwFTT+PaFvN8TPRdNc LJ1iY+8iAeGkwz1YJZ1oOVYONScc/zl4rYQdxzKvYwMges0eHTdJFEltwbSGGyzG BkYZR/BzvMzpLzGe/aDqATbotxOCBzbMdoWNuY3mwhmNfNLphoOq/YLb9y/202SY d9642VJInhtURcrD2t1isOzXg9bNzQISpN4Ti1I/+x+p2Cptzx4UwjOPoiJVd59s HxolAbawUckOW+3Ze4SOyP+nM470rlmWuRx+ifmh6uJgl0lsjD/3AtqY/dHaE88a rh+tYU9cHwo4PRuNUE7wiQekCXaVwEYwf4A5jb7cTE+8CbB/O5tJna9lgZz4HkA= =F6OG -----END PGP SIGNATURE----- --R7Dyui215VKdTDYA--