• Anatolii Gerasymenko's avatar
    ice: Handle LLDP MIB Pending change · 7d8d7754
    Anatolii Gerasymenko authored
    If the number of Traffic Classes (TC) is decreased, the FW will no
    longer remove TC nodes, but will send a pending change notification. This
    will allow RDMA to destroy corresponding Control QP markers. After RDMA
    finishes outstanding operations, the ice driver will send an execute MIB
    Pending change admin queue command to FW to finish DCB configuration
    change.
    
    The FW will buffer all incoming Pending changes, so there can be only
    one active Pending change.
    
    RDMA driver guarantees to remove Control QP markers within 5000 ms.
    Hence, LLDP response timeout txTTL (default 30 sec) will be met.
    
    In the case of a Pending change, LLDP MIB Change Event (opcode 0x0A01) will
    contain the whole new MIB. But Get LLDP MIB (opcode 0x0A00) AQ call would
    still return an old MIB, as the Pending change hasn't been applied yet.
    Add ice_get_dcb_cfg_from_mib_change() function to retrieve DCBX config
    from LLDP MIB Change Event's buffer for Pending changes.
    Co-developed-by: default avatarDave Ertman <david.m.ertman@intel.com>
    Signed-off-by: default avatarDave Ertman <david.m.ertman@intel.com>
    Signed-off-by: default avatarAnatolii Gerasymenko <anatolii.gerasymenko@intel.com>
    Tested-by: Arpana Arland <arpanax.arland@intel.com> (A Contingent worker at Intel)
    Signed-off-by: default avatarTony Nguyen <anthony.l.nguyen@intel.com>
    7d8d7754
ice_dcb.h 5.71 KB