net: switchdev: add SET_SWITCHDEV_OPS helper
authorSimon Horman <simon.horman@netronome.com>
Thu, 29 Jun 2017 20:08:11 +0000 (22:08 +0200)
committerDavid S. Miller <davem@davemloft.net>
Sat, 1 Jul 2017 15:51:32 +0000 (08:51 -0700)
Add a helper to allow switchdev ops to be set if NET_SWITCHDEV is configured
and do nothing otherwise. This allows for slightly cleaner code which
uses switchdev but does not select NET_SWITCHDEV.

Signed-off-by: Simon Horman <simon.horman@netronome.com>
Acked-by: Ivan Vecera <ivecera@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/switchdev.h

index c784a6ac6ef1b95fa6252e694427b895d42dd76c..8ae9e3b6392e3c74ce93a5cf089fea1749f81619 100644 (file)
@@ -217,6 +217,8 @@ void switchdev_port_fwd_mark_set(struct net_device *dev,
 
 bool switchdev_port_same_parent_id(struct net_device *a,
                                   struct net_device *b);
+
+#define SWITCHDEV_SET_OPS(netdev, ops) ((netdev)->switchdev_ops = (ops))
 #else
 
 static inline void switchdev_deferred_process(void)
@@ -322,6 +324,8 @@ static inline bool switchdev_port_same_parent_id(struct net_device *a,
        return false;
 }
 
+#define SWITCHDEV_SET_OPS(netdev, ops) do {} while (0)
+
 #endif
 
 #endif /* _LINUX_SWITCHDEV_H_ */