Skip site navigation (1)Skip section navigation (2)
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>