summaryrefslogtreecommitdiff
path: root/backport/backport-include/linux/netdevice.h
diff options
context:
space:
mode:
authorLuca Coelho <luciano.coelho@intel.com>2017-07-18 15:58:34 +0300
committerLuca Coelho <luciano.coelho@intel.com>2017-07-28 11:33:37 +0300
commit97b8d7c49f441b45c532c3fac7f173430fcae66d (patch)
tree364614ce82889a1848fbc6d111ac7d9b7f6f8b3d /backport/backport-include/linux/netdevice.h
parent71ae07b7e7e753a1414dd5ee11c20373c469071a (diff)
backport: fix netdev destructor backport
The commit that changed the netdev destructor was also applied in v4.12-rc6, so we need to update the backport. Another issue was that when the default free_netdev() destructor was supposed to be used, we would get compilation errors, such as this one in hwsim: In file included from ./include/net/dst.h:12:0, from /home/luca/iwlwifi/stack-dev/drivers/net/wireless/mac80211_hwsim.c:22: /home/luca/iwlwifi/stack-dev/drivers/net/wireless/mac80211_hwsim.c: In function hwsim_mon_setup': /home/luca/iwlwifi/stack-dev/backport-include/linux/netdevice.h:325:23: error: '__free_netdev' undeclared (first use in this function) (_dev)->destructor = __ ## _destructor ^ /home/luca/iwlwifi/stack-dev/drivers/net/wireless/mac80211_hwsim.c:2977:2: note: in expansion of macro 'netdev_set_priv_destructor' netdev_set_priv_destructor(dev, free_netdev); ^~~~~~~~~~~~~~~~~~~~~~~~~~ /home/luca/iwlwifi/stack-dev/backport-include/linux/netdevice.h:325:23: note: each undeclared identifier is reported only once for each function it appears in (_dev)->destructor = __ ## _destructor ^ /home/luca/iwlwifi/stack-dev/drivers/net/wireless/mac80211_hwsim.c:2977:2: note: in expansion of macro 'netdev_set_priv_destructor' netdev_set_priv_destructor(dev, free_netdev); ^~~~~~~~~~~~~~~~~~~~~~~~~~ scripts/Makefile.build:300: recipe for target '/home/luca/iwlwifi/stack-dev/drivers/net/wireless/mac80211_hwsim.o' failed To fix this, add a new macro, netdev_set_def_destructor(), that handles this special case. Change-Id: Ifcf1f19690487aee67e776b5700ff496c779e86c Fixes: 721ae78f9355 ("backport: handle change in netdevice destructor usage") Reviewed-by: Arend van Spriel <arend.vanspriel@broadcom.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
Diffstat (limited to 'backport/backport-include/linux/netdevice.h')
-rw-r--r--backport/backport-include/linux/netdevice.h9
1 files changed, 6 insertions, 3 deletions
diff --git a/backport/backport-include/linux/netdevice.h b/backport/backport-include/linux/netdevice.h
index 98e781ee..d22eec2d 100644
--- a/backport/backport-include/linux/netdevice.h
+++ b/backport/backport-include/linux/netdevice.h
@@ -320,14 +320,17 @@ static inline void netif_trans_update(struct net_device *dev)
}
#endif
-#if LINUX_VERSION_IS_LESS(4,13,0)
+#if LINUX_VERSION_IS_LESS(4,12,0)
#define netdev_set_priv_destructor(_dev, _destructor) \
(_dev)->destructor = __ ## _destructor
+#define netdev_set_def_destructor(_dev) \
+ (_dev)->destructor = free_netdev
#else
#define netdev_set_priv_destructor(_dev, _destructor) \
(_dev)->needs_free_netdev = true; \
- if ((_destructor) != free_netdev) \
- (_dev)->priv_destructor = (_destructor);
+ (_dev)->priv_destructor = (_destructor);
+#define netdev_set_def_destructor(_dev) \
+ (_dev)->needs_free_netdev = true;
#endif
#endif /* __BACKPORT_NETDEVICE_H */