Support offloading of TC rules that mirror/redirect egress traffic to a
MACVLAN device, which is attached to bond device which master mlx5 devices.
Signed-off-by: Maor Dickman <maord@nvidia.com>
Reviewed-by: Roi Dayan <roid@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
Link: https://lore.kernel.org/r/20230314054234.267365-16-saeed@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
        if (mlx5_lag_mpesw_do_mirred(priv->mdev, out_dev, extack))
                return -EOPNOTSUPP;
 
+       if (netif_is_macvlan(out_dev))
+               out_dev = macvlan_dev_real_dev(out_dev);
+
        out_dev = get_fdb_out_dev(uplink_dev, out_dev);
        if (!out_dev)
                return -ENODEV;
                        return err;
        }
 
-       if (netif_is_macvlan(out_dev))
-               out_dev = macvlan_dev_real_dev(out_dev);
-
        err = verify_uplink_forwarding(priv, attr, out_dev, extack);
        if (err)
                return err;