Re: [PATCH net-next v2 3/6] net: dsa: remove dsa_uses_tagged_protocol

From: Florian Fainelli
Date: Tue May 30 2017 - 16:48:11 EST


On 05/30/2017 11:33 AM, Vivien Didelot wrote:
> Since dev->dsa_ptr is a pointer to a dsa_switch_tree, there is no need
> to have another inline helper just to check rcv.
>
> Remove dsa_uses_tagged_protocol and check dsa_ptr && dsa_ptr->rcv
> together at the same time.
>
> Signed-off-by: Vivien Didelot <vivien.didelot@xxxxxxxxxxxxxxxxxxxx>

FYI, the part that matters here is that we know whether the master
network device actually uses a tagged DSA protocol, this is important
for e.g: bridge (see 8db0a2ee2c6302a1dcbcdb93cb731dfc6c0cdb5e). Some
drivers like bcmsysport.c also care about that in order to enable
specific switch tagging protocol parsing hints.

Reviewed-by: Florian Fainelli <f.fainelli@xxxxxxxxx>

> ---
> include/net/dsa.h | 8 +-------
> 1 file changed, 1 insertion(+), 7 deletions(-)
>
> diff --git a/include/net/dsa.h b/include/net/dsa.h
> index 58297e4c6b31..4675b52c964c 100644
> --- a/include/net/dsa.h
> +++ b/include/net/dsa.h
> @@ -467,16 +467,10 @@ struct mii_bus *dsa_host_dev_to_mii_bus(struct device *dev);
> struct net_device *dsa_dev_to_net_device(struct device *dev);
>
> /* Keep inline for faster access in hot path */
> -static inline bool dsa_uses_tagged_protocol(struct dsa_switch_tree *dst)
> -{
> - return dst->rcv != NULL;
> -}
> -
> static inline bool netdev_uses_dsa(struct net_device *dev)
> {
> #if IS_ENABLED(CONFIG_NET_DSA)
> - if (dev->dsa_ptr != NULL)
> - return dsa_uses_tagged_protocol(dev->dsa_ptr);
> + return dev->dsa_ptr && dev->dsa_ptr->rcv;
> #endif
> return false;
> }
>


--
Florian