Subject: Re: [PATCH RFC 2/2] net: dsa: bcm_sf2: implement HW bridging operations

From: roopa <[email-masked]>
Date: Thu, 19 Feb 2015 18:41:34 -0800

On 2/19/15, 6:00 PM, Florian Fainelli wrote:
> On 19/02/15 17:46, roopa wrote:
>> On 2/19/15, 5:03 PM, Guenter Roeck wrote:
>>> On Thu, Feb 19, 2015 at 04:51:30PM -0800, roopa wrote:
>>>>> Not sure yet what to do about setting the fdb aging time. I don't see a
>>>>> mechanism to do that. No idea how important that is.
>>>> rocker, the only consumer today relies on the bridge driver aging of
>>>> learnt
>>>> entries.
>>>> You could do the same.
>>>>
>>> Remember that we are dealing with hardware switch chips. Those chips
>>> won't time out fdb entries just because the kernel's bridge driver
>>> thinks that it should.
>> Oh, they dont..?. sorry,  I dont know the details about your hardware.
>> But, if these are entries learnt by hw, there should be a hw config to
>> age them (I guess that is what you are talking about). Which the swicth
>> driver can set.
>> If you disable hw aging, you can sync these entries to the bridge
>> driver, and make the bridge driver age them followed by a subsequent
>> delete in hw.
> The SF2 HW has and aging and a valid bit available, I guess my question
> would be, do we have anything today in "net-next" that allows
> configuring HW aging vs. SW aging (implying doing a HW to SW sync)?

There is no config parameter to set HW aging vs SW aging. But if you 
want SW aging, an example is the rocker implementation today.
And there is BR_LEARNING_SYNC per bridge port flag to sync HW to SW 
using notifiers (see rocker).

There is no netlink based age time sets AFAIK. But there is age time 
sets from sysctl. And there is no offload support for this today.
The offload support has been discussed previously and there was no need 
to add it immediately.