Date: Thu, 8 Sep 2011 11:44:07 -0400 From: George Neville-Neil <gnn@neville-neil.com> To: K. Macy <kmacy@freebsd.org> Cc: Takuya ASADA <syuu@dokukino.com>, John Baldwin <jhb@freebsd.org>, freebsd-net@freebsd.org, jfv@freebsd.org, Navdeep Parhar <np@freebsd.org>, Ben Hutchings <bhutchings@solarflare.com> Subject: Re: Adding Flow Director sysctls to ixgbe(4) Message-ID: <221A0471-8D58-43F8-B850-873EE2DE2B2F@neville-neil.com> In-Reply-To: <CAHM0Q_POUXeEBH2T00zDbzGh-4iuN2iML8L87_xreHr_O%2B29rg@mail.gmail.com> References: <CALG4x-W99OZxd=1ZDvW4=MBqeE3RPOazc7jc_3O30X-Pou3k8Q@mail.gmail.com> <1315221674.3092.282.camel@deadeye> <201109080834.11607.jhb@freebsd.org> <CAHM0Q_POUXeEBH2T00zDbzGh-4iuN2iML8L87_xreHr_O%2B29rg@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sep 8, 2011, at 10:48 , K. Macy wrote: > On Thu, Sep 8, 2011 at 2:34 PM, John Baldwin <jhb@freebsd.org> wrote: >> On Monday, September 05, 2011 7:21:12 am Ben Hutchings wrote: >>> On Mon, 2011-09-05 at 15:51 +0900, Takuya ASADA wrote: >>>> Hi, >>>>=20 >>>> I implemented Ethernet Flow Director sysctls to ixgbe(4), here's a = detail: >>>>=20 >>>> - Adding removing signature filter >>>> On linux version of ixgbe driver, it has ability to set/remove = perfect >>>> filter from userland using ethtool command. >>>> I implemented similar feature, but on sysctl, and not perfect = filter >>>> but signature filter(which means hash collision may occurs). >>> [...] >>>=20 >>> Linux also has a generic interface to RX filtering and hashing >>> (ethtool_rxnfc) which ixgbe supports; wouldn't it be better for = FreeBSD >>> to support something like that? >>=20 >> Some sort of shared interface might be nice. The cxgb(4) and = cxgbe(4) drivers >> both provide their own tools to manipulate filters, though they do = not >> provide explicit steering IIRC. >>=20 >> We would need to come up with some sort of standard interface = (ioctls?) for >> adding filters however. >=20 > I know this must sound like nitpicking, but please don't add more > ioctls if you can avoid it. If you want to add new interfaces try to > stick with sysctl as it tends to be less prone to breakage across > releases. >=20 >=20 > The biggest problem in defining a new API is the lack of anyone with a > global overview of the functionality provided by NIC vendors and their > near-term roadmaps. It doesn't make sense to add an API that we only > know works for one or two vendors. >=20 I think this is doable. I've seen enough of these cards to know a bit of what we'd want. This is a subject we've covered in a few different BSDCans but it's probably time for a straw man. I'm not against the sysctl approach but I'll have to give this a bit more thought. The only real options are sockets, ioctls and sysctls, that I can see. Best, George
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?221A0471-8D58-43F8-B850-873EE2DE2B2F>