From owner-freebsd-net@FreeBSD.ORG Fri Apr 3 19:15:55 2015 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 5BDA41B9; Fri, 3 Apr 2015 19:15:55 +0000 (UTC) Received: from mail-ie0-x236.google.com (mail-ie0-x236.google.com [IPv6:2607:f8b0:4001:c03::236]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 18DB36B3; Fri, 3 Apr 2015 19:15:55 +0000 (UTC) Received: by iebmp1 with SMTP id mp1so89680043ieb.0; Fri, 03 Apr 2015 12:15:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type; bh=oD6qnnfNBDuOSvQ31j0fUg2k6ElFFE365bsJ6je/Gwo=; b=CLW2lPn213bJIUcg8LMGDJQRWxBi23SZ+RJZyAY2N6P8ZoZFq8vj5ZU+1sgNaagE2b dl8dkSibvzcMgyNUNyzJXnP42O9fjzthZBNWfI0ts/bkRlrZDgqXcWP/jszKYoVoEL3p kVY6zDUU6XdOyYt0JeLkd9/R70a+2WxboPPUPWrjbVQrE/AU+hxej/BJuTNZAr06ISys fIFDutdD+ld2Rhw+/unQ31MdXnMIibonG1d01LG5TDIrZgQ8Ykl9o41FsQE0LXy/OQh+ HBh9s+cCTK9Tb7ekQehSHm0oC42O52d+C1yZJuQ/rGHoBwjNuNGHHXvquGBX7JInpHY0 3rkg== MIME-Version: 1.0 X-Received: by 10.50.73.168 with SMTP id m8mr23382332igv.32.1428088554443; Fri, 03 Apr 2015 12:15:54 -0700 (PDT) Sender: adrian.chadd@gmail.com Received: by 10.36.17.194 with HTTP; Fri, 3 Apr 2015 12:15:54 -0700 (PDT) In-Reply-To: <20150403170239.GD72165@strugglingcoder.info> References: <20150324154931.GC53237@strugglingcoder.info> <20150330225945.GI10892@strugglingcoder.info> <20150331050628.GJ10892@strugglingcoder.info> <20150331170933.GK10892@strugglingcoder.info> <20150403165411.GC72165@strugglingcoder.info> <20150403170239.GD72165@strugglingcoder.info> Date: Fri, 3 Apr 2015 12:15:54 -0700 X-Google-Sender-Auth: vwTOLXa2cIxfAc3TOY6t22iluHY Message-ID: Subject: Re: Full 32bit flowid from igb(4) From: Adrian Chadd To: hiren panchasara Content-Type: text/plain; charset=UTF-8 Cc: Jack F Vogel , FreeBSD Net , erj@freebsd.org, Jack Vogel , 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: Fri, 03 Apr 2015 19:15:55 -0000 On 3 April 2015 at 10:02, hiren panchasara wrote: > On 04/03/15 at 10:00P, Adrian Chadd wrote: >> On 3 April 2015 at 09:54, hiren panchasara wrote: >> > On 03/31/15 at 11:15P, Adrian Chadd wrote: >> >> Yeah, I think the right thing to do is: >> >> >> >> * If the descriptor says it's RSS, then use the flowid + rss type >> > So, if we have multiqueue, we do everything needed to get RSS >> > flowid/type. That means, with num_queues > 1 we can just expose those. >> > >> >> * else, set it to queue id and set the type to opaque. >> > >> > This part becomes irrelevant as it's a single queue case. Do we care >> > about setting flowid value/type in case of single queue? >> >> My whole point with not always setting it is that people may do things >> to /other/ parts of the driver and suddenly the RSS field isn't the >> RSS field anymore. >> >> Doubly so if you start playing with multiqueue + flowdirector on ixgbe. :) >> >> So I'd rather the driver be right and correct - checking if the field >> /is/ RSS and only setting the flowid+flowtype /if/ the value in that >> register is an RSS flowid, rather than setting it to whatever's there >> and hoping it's an RSS value. :) > > Okay, I guess it doesn't hurt to read those registers again at the time > of actually assigning flowid/type. I'll do that and post a review on > phabricator. Well, the "Is this RSS flowid" bits are in the RX descriptor, so you don't have to worry about reading registers. :) -adrian