• Anjali Singhai Jain's avatar
    i40e: start up in VEPA mode by default · fc60861e
    Anjali Singhai Jain authored
    The patch fixes a bug in the default configuration which
    prevented a software bridge loaded on the PF interface from
    working correctly because broadcast packets are incorrectly
    looped back.
    
    Fix the general case, by loading the driver in VEPA mode Until a
    VF or VMDq VSI is added. This way loopback on the Main VSI is
    turned off until needed and can resolve the issue of unnecessary
    reflection for users that do not have VF or VMDq VSIs setup.
    
    The driver must now coordinate the loopback setting for the Flow
    Director (FDIR) VSI to make sure it is in sync with the current
    VEB or VEPA mode setting.
    
    The user can still switch bridge modes from the bridge commands and
    choose to be in VEPA mode with VF VSIs. Because of hardware
    requirements, the call to switch to VEB mode when no VF/VMDqs are
    present will be rejected.
    
    NOTE: This patch uses BIT_ULL as that is preferred going forward,
    a followup patch in the lower priority queue to net-next will fix
    up the remaining 1 << usages.
    
    Change-ID: Ib121ddb18fe4b3c4f52e9deda6fcbeb9105683d1
    Signed-off-by: default avatarAnjali Singhai Jain <anjali.singhai@intel.com>
    Signed-off-by: default avatarJesse Brandeburg <jesse.brandeburg@intel.com>
    Tested-by: default avatarJim Young <james.m.young@intel.com>
    Signed-off-by: default avatarJeff Kirsher <jeffrey.t.kirsher@intel.com>
    fc60861e
i40e_main.c 280 KB