net: set name_assign_type in alloc_netdev()
Commit Message
From: Tom Gundersen <teg@jklm.no>
Extend alloc_netdev{,_mq{,s}}() to take name_assign_type as argument, and convert
all users to pass NET_NAME_UNKNOWN.
Coccinelle patch:
@@
expression sizeof_priv, name, setup, txqs, rxqs, count;
@@
(
-alloc_netdev_mqs(sizeof_priv, name, setup, txqs, rxqs)
+alloc_netdev_mqs(sizeof_priv, name, NET_NAME_UNKNOWN, setup, txqs, rxqs)
|
-alloc_netdev_mq(sizeof_priv, name, setup, count)
+alloc_netdev_mq(sizeof_priv, name, NET_NAME_UNKNOWN, setup, count)
|
-alloc_netdev(sizeof_priv, name, setup)
+alloc_netdev(sizeof_priv, name, NET_NAME_UNKNOWN, setup)
)
v9: move comments here from the wrong commit
Signed-off-by: Tom Gundersen <teg@jklm.no>
Reviewed-by: David Herrmann <dh.herrmann@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
[sw: added compat code]
Signed-off-by: Simon Wunderlich <sw@simonwunderlich.de>
---
compat.h | 14 ++++++++++++++
soft-interface.c | 2 +-
2 files changed, 15 insertions(+), 1 deletion(-)
Comments
On Monday 21 July 2014 15:42:05 Simon Wunderlich wrote:
> From: Tom Gundersen <teg@jklm.no>
>
> Extend alloc_netdev{,_mq{,s}}() to take name_assign_type as argument, and
> convert all users to pass NET_NAME_UNKNOWN.
>
> Coccinelle patch:
>
> @@
> expression sizeof_priv, name, setup, txqs, rxqs, count;
> @@
>
> (
> -alloc_netdev_mqs(sizeof_priv, name, setup, txqs, rxqs)
> +alloc_netdev_mqs(sizeof_priv, name, NET_NAME_UNKNOWN, setup, txqs, rxqs)
>
> -alloc_netdev_mq(sizeof_priv, name, setup, count)
> +alloc_netdev_mq(sizeof_priv, name, NET_NAME_UNKNOWN, setup, count)
>
> -alloc_netdev(sizeof_priv, name, setup)
> +alloc_netdev(sizeof_priv, name, NET_NAME_UNKNOWN, setup)
> )
>
> v9: move comments here from the wrong commit
>
> Signed-off-by: Tom Gundersen <teg@jklm.no>
> Reviewed-by: David Herrmann <dh.herrmann@gmail.com>
> Signed-off-by: David S. Miller <davem@davemloft.net>
> [sw: added compat code]
> Signed-off-by: Simon Wunderlich <sw@simonwunderlich.de>
> ---
> compat.h | 14 ++++++++++++++
> soft-interface.c | 2 +-
> 2 files changed, 15 insertions(+), 1 deletion(-)
Applied in revision df768d7.
Thanks,
Marek
@@ -446,4 +446,18 @@ static int __batadv_interface_kill_vid(struct net_device *dev, __be16 proto,\
#endif /* < KERNEL_VERSION(3, 16, 0) */
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 17, 0)
+
+/* alloc_netdev() was defined differently before 2.6.38 */
+#undef alloc_netdev
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 38)
+#define alloc_netdev(sizeof_priv, name, name_assign_type, setup) \
+ alloc_netdev_mq(sizeof_priv, name, setup, 1)
+#else
+#define alloc_netdev(sizeof_priv, name, name_assign_type, setup) \
+ alloc_netdev_mqs(sizeof_priv, name, setup, 1, 1)
+#endif /* nested < KERNEL_VERSION(2, 6, 38) */
+
+#endif /* < KERNEL_VERSION(3, 17, 0) */
+
#endif /* _NET_BATMAN_ADV_COMPAT_H_ */
@@ -933,7 +933,7 @@ struct net_device *batadv_softif_create(const char *name)
int ret;
soft_iface = alloc_netdev(sizeof(struct batadv_priv), name,
- batadv_softif_init_early);
+ NET_NAME_UNKNOWN, batadv_softif_init_early);
if (!soft_iface)
return NULL;