• Jacob Keller's avatar
    i40e: make use of __dev_uc_sync and __dev_mc_sync · 6622f5cd
    Jacob Keller authored
    The kernel provides __dev_uc_sync and __dev_mc_sync in order for drivers
    which need individual notification of add and delete for each filter.
    These functions allow us to vastly simplify our .set_rx_mode handler. We
    need to implement two functions for sync and unsync which add and remove
    filters respectively.
    
    This change avoids a very complex and inefficient algorithm which
    resulted in an abnormal latency for the .set_rx_mode NDO operation. The
    resulting code after this change is more readable, more efficient, and
    less code.
    
    Due to the callback signature used by these functions we also must
    update several other functions to take a const u8 * pointer.
    
    Change-Id: I2ca7fd4e10c0c07ed2291db1ea41bf5987fc6474
    Signed-off-by: default avatarJacob Keller <jacob.e.keller@intel.com>
    Tested-by: default avatarAndrew Bowers <andrewx.bowers@intel.com>
    Signed-off-by: default avatarJeff Kirsher <jeffrey.t.kirsher@intel.com>
    6622f5cd
i40e.h 28.2 KB