• A
    net/mlx5_core: Flow counters infrastructure · 43a335e0
    Amir Vadai 提交于
    If a counter has the aging flag set when created, it is added to a list
    of counters that will be queried periodically from a workqueue.  query
    result and last use timestamp are cached.
    add/del counter must be very efficient since thousands of such
    operations might be issued in a second.
    There is only a single reference to counters without aging, therefore
    no need for locks.
    But, counters with aging enabled are stored in a list. In order to make
    code as lockless as possible, all the list manipulation and access to
    hardware is done from a single context - the periodic counters query
    thread.
    
    The hardware supports multiple counters per FTE, however currently we
    are using one counter for each FTE.
    Signed-off-by: NAmir Vadai <amirva@mellanox.com>
    Signed-off-by: NDavid S. Miller <davem@davemloft.net>
    43a335e0
driver.h 23.1 KB