diff mbox series

[net-next] ipvlan: properly annotate rx_handler access

Message ID 3eef25d5e0b41aa3429ba31f87264c17e75de9e6.1520500821.git.pabeni@redhat.com
State Accepted, archived
Delegated to: David Miller
Headers show
Series [net-next] ipvlan: properly annotate rx_handler access | expand

Commit Message

Paolo Abeni March 8, 2018, 9:29 a.m. UTC
The rx_handler field is rcu-protected, but I forgot to use the
proper accessor while refactoring netif_is_ipvlan_port(). Such
function only check the rx_handler value, so it is safe, but we need
to properly read rx_handler via rcu_access_pointer() to avoid sparse
warnings.

Fixes: 1ec54cb44e67 ("net: unpollute priv_flags space")
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
---
 drivers/net/ipvlan/ipvlan.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

David Miller March 8, 2018, 4:12 p.m. UTC | #1
From: Paolo Abeni <pabeni@redhat.com>
Date: Thu,  8 Mar 2018 10:29:30 +0100

> The rx_handler field is rcu-protected, but I forgot to use the
> proper accessor while refactoring netif_is_ipvlan_port(). Such
> function only check the rx_handler value, so it is safe, but we need
> to properly read rx_handler via rcu_access_pointer() to avoid sparse
> warnings.
> 
> Fixes: 1ec54cb44e67 ("net: unpollute priv_flags space")
> Signed-off-by: Paolo Abeni <pabeni@redhat.com>

Applied.
diff mbox series

Patch

diff --git a/drivers/net/ipvlan/ipvlan.h b/drivers/net/ipvlan/ipvlan.h
index c818b9bdab6e..adb826f55e60 100644
--- a/drivers/net/ipvlan/ipvlan.h
+++ b/drivers/net/ipvlan/ipvlan.h
@@ -180,7 +180,7 @@  int ipvlan_link_register(struct rtnl_link_ops *ops);
 
 static inline bool netif_is_ipvlan_port(const struct net_device *dev)
 {
-	return dev->rx_handler == ipvlan_handle_frame;
+	return rcu_access_pointer(dev->rx_handler) == ipvlan_handle_frame;
 }
 
 #endif /* __IPVLAN_H */