Adding Flow Director sysctls to ixgbe(4)
George Neville-Neil
gnn at neville-neil.com
Fri Sep 9 00:31:54 UTC 2011
On Sep 8, 2011, at 10:48 , K. Macy wrote:
> On Thu, Sep 8, 2011 at 2:34 PM, John Baldwin <jhb at 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,
>>>>
>>>> I implemented Ethernet Flow Director sysctls to ixgbe(4), here's a detail:
>>>>
>>>> - 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).
>>> [...]
>>>
>>> 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?
>>
>> 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.
>>
>> We would need to come up with some sort of standard interface (ioctls?) for
>> adding filters however.
>
> 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.
>
>
> 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.
>
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
More information about the freebsd-net
mailing list