forked from Minki/linux
switchdev: update documentation on FDB ageing_time
Signed-off-by: Scott Feldman <sfeldma@gmail.com> Reviewed-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com> Acked-by: Jiri Pirko <jiri@resnulli.us> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
dcd45e0649
commit
45ffda75e1
@ -239,20 +239,20 @@ The driver should initialize the attributes to the hardware defaults.
|
||||
FDB Ageing
|
||||
^^^^^^^^^^
|
||||
|
||||
There are two FDB ageing models supported: 1) ageing by the device, and 2)
|
||||
ageing by the kernel. Ageing by the device is preferred if many FDB entries
|
||||
are supported. The driver calls call_switchdev_notifiers(SWITCHDEV_FDB_DEL,
|
||||
...) to age out the FDB entry. In this model, ageing by the kernel should be
|
||||
turned off. XXX: how to turn off ageing in kernel on a per-port basis or
|
||||
otherwise prevent the kernel from ageing out the FDB entry?
|
||||
The bridge will skip ageing FDB entries marked with NTF_EXT_LEARNED and it is
|
||||
the responsibility of the port driver/device to age out these entries. If the
|
||||
port device supports ageing, when the FDB entry expires, it will notify the
|
||||
driver which in turn will notify the bridge with SWITCHDEV_FDB_DEL. If the
|
||||
device does not support ageing, the driver can simulate ageing using a
|
||||
garbage collection timer to monitor FBD entries. Expired entries will be
|
||||
notified to the bridge using SWITCHDEV_FDB_DEL. See rocker driver for
|
||||
example of driver running ageing timer.
|
||||
|
||||
In the kernel ageing model, the standard bridge ageing mechanism is used to age
|
||||
out stale FDB entries. To keep an FDB entry "alive", the driver should refresh
|
||||
the FDB entry by calling call_switchdev_notifiers(SWITCHDEV_FDB_ADD, ...). The
|
||||
To keep an NTF_EXT_LEARNED entry "alive", the driver should refresh the FDB
|
||||
entry by calling call_switchdev_notifiers(SWITCHDEV_FDB_ADD, ...). The
|
||||
notification will reset the FDB entry's last-used time to now. The driver
|
||||
should rate limit refresh notifications, for example, no more than once a
|
||||
second. If the FDB entry expires, fdb_delete is called to remove entry from
|
||||
the device.
|
||||
second. (The last-used time is visible using the bridge -s fdb option).
|
||||
|
||||
STP State Change on Port
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
Loading…
Reference in New Issue
Block a user