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.dide...@savoirfairelinux.com>

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.faine...@gmail.com>

> ---
>  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

Reply via email to