• Dave Ertman's avatar
    ice: Change pf state behavior to protect reset path · 5df7e45d
    Dave Ertman authored
    Currently, there is no bit, or set of bits, that protect the entirety
    of the reset path.
    
    If the reset is originated by the driver, then the relevant
    one of the following bits will be set when the reset is scheduled:
    __ICE_PFR_REQ
    __ICE_CORER_REQ
    __ICE_GLOBR_REQ
    This bit will not be cleared until after the rebuild has completed.
    
    If the reset is originated by the FW, then the first the driver knows of
    it will be the reception of the OICR interrupt.  The __ICE_RESET_OICR_RECV
    bit will be set in the interrupt handler.  This will also be the indicator
    in a SW originated reset that we have completed the pre-OICR tasks and
    have informed the FW that a reset was requested.
    
    To utilize these bits, change the function:
    ice_is_reset_recovery_pending()
    	to be:
    ice_is_reset_in_progress()
    
    The new function will check all of the above bits in the pf->state and
    will return a true if one or more of these bits are set.
    Signed-off-by: default avatarDave Ertman <david.m.ertman@intel.com>
    Signed-off-by: default avatarAnirudh Venkataramanan <anirudh.venkataramanan@intel.com>
    Tested-by: default avatarAndrew Bowers <andrewx.bowers@intel.com>
    Signed-off-by: default avatarJeff Kirsher <jeffrey.t.kirsher@intel.com>
    5df7e45d
ice_main.c 95.6 KB