• Yuval Mintz's avatar
    mlxsw: spectrum: Prevent mirred-related crash on removal · 6399ebcc
    Yuval Mintz authored
    When removing the offloading of mirred actions under
    matchall classifiers, mlxsw would find the destination port
    associated with the offloaded action and utilize it for undoing
    the configuration.
    
    Depending on the order by which ports are removed, it's possible that
    the destination port would get removed before the source port.
    In such a scenario, when actions would be flushed for the source port
    mlxsw would perform an illegal dereference as the destination port is
    no longer listed.
    
    Since the only item necessary for undoing the configuration on the
    destination side is the port-id and that in turn is already maintained
    by mlxsw on the source-port, simply stop trying to access the
    destination port and use the port-id directly instead.
    
    Fixes: 763b4b70 ("mlxsw: spectrum: Add support in matchall mirror TC offloading")
    Signed-off-by: default avatarYuval Mintz <yuvalm@mellanox.com>
    Signed-off-by: default avatarJiri Pirko <jiri@mellanox.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    6399ebcc
spectrum.c 124 KB