Hi Vladimir,

On Mon,  4 May 2020 00:10:33 +0300, Vladimir Oltean <olte...@gmail.com> wrote:
> +             case FLOW_ACTION_REDIRECT: {
> +                     struct dsa_port *to_dp;
> +
> +                     if (!dsa_slave_dev_check(act->dev)) {
> +                             NL_SET_ERR_MSG_MOD(extack,
> +                                                "Destination not a switch 
> port");
> +                             return -EOPNOTSUPP;
> +                     }
> +
> +                     to_dp = dsa_slave_to_port(act->dev);

Instead of exporting two DSA core internal functions, I would rather expose
a new helper for drivers, such as this one:

    struct dsa_port *dsa_dev_to_port(struct net_device *dev)
    {
        if (!dsa_slave_dev_check(dev))
            return -EOPNOTSUPP;
    
        return dsa_slave_to_port(dev);
    }

The naming might not be the best, this helper could even be mirroring-specific,
I didn't really check the requirements for this functionality yet.


Thank you,

        Vivien

Reply via email to