• Mitch Williams's avatar
    i40e: re-enable VFLR interrupt sooner · c5c2f7c3
    Mitch Williams authored
    VF interrupt processing takes a looooong time, and it's possible that we
    could lose a VFLR event if it happens while we're processing a VFLR on
    another VF. This would leave the VF in a semi-permanent reset state,
    which would not be cleared until yet another VF experiences a VFLR.
    
    To correct this situation, we enable the VFLR interrupt cause before we
    begin processing any pending resets. This means that any VFLR that
    occurs during reset processing will generate another interrupt and this
    routine will get called again.
    
    This change may cause a spurious interrupt when multiple VFLRs occur
    very close together in time. If this happens, then this routine will be
    called again and it will detect no outstanding VFLR events and do
    nothing. No harm, no foul.
    
    Change-ID: Id0451f3e6e73a2cf6db1668296c71e129b59dc19
    Signed-off-by: default avatarMitch Williams <mitch.a.williams@intel.com>
    Signed-off-by: default avatarJeff Kirsher <jeffrey.t.kirsher@intel.com>
    c5c2f7c3
i40e_virtchnl_pf.c 63.2 KB