On 07/19/2016 07:20 AM, Andrew Lunn wrote: > On Mon, Jul 18, 2016 at 09:26:00PM -0700, Florian Fainelli wrote: >> Le 18/07/2016 à 20:24, Andrew Lunn a écrit : >>> On Mon, Jul 18, 2016 at 08:45:38PM -0400, Vivien Didelot wrote: >>>> Add a new function for DSA drivers to handle the switchdev >>>> SWITCHDEV_ATTR_ID_BRIDGE_AGEING_TIME attribute. >>>> >>>> The ageing time is passed as milliseconds. >>>> >>>> Also because we can have multiple logical bridges on top of a physical >>>> switch and ageing time are switch-wide, call the driver function with >>>> the fastest ageing time in use on the chip instead of the requested one. >>>> >>>> Signed-off-by: Vivien Didelot <vivien.dide...@savoirfairelinux.com> >>>> --- >>>> include/net/dsa.h | 2 ++ >>>> net/dsa/slave.c | 41 +++++++++++++++++++++++++++++++++++++++++ >>> >> >> Hi Andrew, >> >>> Hi Florian >>> >>> It looks like the SF2 can do fast ageing per port. What i don't see if >>> what configuration options you have. Can you get the fast and the >>> normal age time per port? Or is it global? >> >> The normal ageing is global and the value needs to be programmed in >> seconds, can can range from 10 to 1,048,575 (encoded on 20 bits). The >> fast-ageing can actually be per-port, per-VLAN id, for just dynamic or >> static entries etc. and is just a poor name for a flush based on any of >> these criteria. > > Hi Florian > > So fast ageing does not have a timer value associated to it? It is > just a flush?
Correct, it's a flush operation which is internally implemented/named as a fast aging, as in fast enough it is almost instantenous from the programmer's perspective. > > If so, the code Vivien is proposing in DSA slave is O.K. If however > there was a per port timer, Vivien's code is too high in the stack, > blocking SF2 from being able to use per-port timers. That is what i'm > trying to get at. Browsing through all the generations, there does not seem to be any per-port aging, it's always global. -- Florian