• Alex Estrin's avatar
    IB/ipoib: Avoid multicast join attempts with invalid P_key · dd57c930
    Alex Estrin authored
    Currently, the parent interface keeps sending broadcast group join
    requests even if p_key index 0 is invalid, which is possible/common in
    virtualized environments where a VF has been probed to VM but the
    actual P_key configuration has not yet been assigned by the management
    software. This creates unnecessary noise on the fabric and in the
    kernel logs:
    
        ib0: multicast join failed for ff12:401b:8000:0000:0000:0000:ffff:ffff, status -22
    
    The original code run the multicast task regardless of the actual
    P_key value, which can be avoided. The fix is to re-init resources and
    bring interface up only if P_key index 0 is valid either when starting
    up or on PKEY_CHANGE event.
    
    Fixes: c2904141 ("IPoIB: Fix pkey change flow for virtualization environments")
    Reviewed-by: default avatarIra Weiny <ira.weiny@intel.com>
    Signed-off-by: default avatarAlex Estrin <alex.estrin@intel.com>
    Signed-off-by: default avatarRoland Dreier <roland@purestorage.com>
    dd57c930
ipoib_ib.c 27.6 KB