• Ben Hutchings's avatar
    sfc: Add flag for stack-owned RX MAC filters · 8803e150
    Ben Hutchings authored
    MAC filters inserted on request from the stack (ndo_set_rx_mode)
    should allow manual steering but not removal.  Currently we have a
    special case for Siena's all-multicast and all-unicast MAC filters,
    but on EF10 we need to allow for steering of precise MAC filters as
    well.
    
    The EFX_FILTER_FLAG_RX_STACK flag changes the behaviour of replacement
    and removal requests:
    
    - Replacement *of* a filter with this flag never clears the flag but
      does change steering and saved priority
    - Replacement *by* a filter with this flag only sets the flag but does
      not change steering
    - Removal with priority < EFX_FILTER_PRI_REQUIRED really resets RX
      steering and saved priority
    
    This could support precise MAC filtering on Siena in future.
    
    As a side-benefit, the default MAC filters are hidden from ethtool
    until they are steered.
    Signed-off-by: default avatarBen Hutchings <bhutchings@solarflare.com>
    8803e150
farch.c 85.7 KB