diff mbox series

[net-next] net: don't include ndisc.h from ipv6.h

Message ID 20220203043457.2222388-1-kuba@kernel.org
State Superseded
Headers show
Series [net-next] net: don't include ndisc.h from ipv6.h | expand

Commit Message

Jakub Kicinski Feb. 3, 2022, 4:34 a.m. UTC
Nothing in ipv6.h needs ndisc.h, drop it.

Signed-off-by: Jakub Kicinski <kuba@kernel.org>
---
CC: j.vosburgh@gmail.com
CC: vfalico@gmail.com
CC: andy@greyhouse.net
CC: oliver@neukum.org
CC: yoshfuji@linux-ipv6.org
CC: dsahern@kernel.org
CC: alex.aring@gmail.com
CC: jukka.rissanen@linux.intel.com
CC: stefan@datenfreihafen.org
CC: jk@codeconstruct.com.au
CC: matt@codeconstruct.com.au
CC: linux-usb@vger.kernel.org
CC: linux-bluetooth@vger.kernel.org
CC: linux-wpan@vger.kernel.org
---
 drivers/net/bonding/bond_alb.c | 1 +
 drivers/net/usb/cdc_mbim.c     | 1 +
 include/net/ipv6.h             | 1 -
 include/net/ipv6_frag.h        | 1 +
 include/net/ndisc.h            | 1 -
 net/6lowpan/core.c             | 1 +
 net/ieee802154/6lowpan/core.c  | 1 +
 net/mctp/device.c              | 1 +
 8 files changed, 6 insertions(+), 2 deletions(-)

Comments

Jeremy Kerr Feb. 3, 2022, 4:53 a.m. UTC | #1
Hi Jakub,

> Nothing in ipv6.h needs ndisc.h, drop it.

Looks good, we lose the ARPHRD definitions without ndisc.h, but your
change to add if_arp.h addresses that:

> --- a/net/mctp/device.c
> +++ b/net/mctp/device.c
> @@ -6,6 +6,7 @@
>   * Copyright (c) 2021 Google
>   */
>  
> +#include <linux/if_arp.h>
>  #include <linux/if_link.h>
>  #include <linux/mctp.h>
>  #include <linux/netdevice.h>

So, for the net/mctp part:

Acked-by: Jeremy Kerr <jk@codeconstruct.com.au>

Cheers,


Jeremy
Stefan Schmidt Feb. 3, 2022, 3:14 p.m. UTC | #2
Hello.

On 03.02.22 05:34, Jakub Kicinski wrote:
> Nothing in ipv6.h needs ndisc.h, drop it.
> 
> Signed-off-by: Jakub Kicinski <kuba@kernel.org>
> ---
> CC: j.vosburgh@gmail.com
> CC: vfalico@gmail.com
> CC: andy@greyhouse.net
> CC: oliver@neukum.org
> CC: yoshfuji@linux-ipv6.org
> CC: dsahern@kernel.org
> CC: alex.aring@gmail.com
> CC: jukka.rissanen@linux.intel.com
> CC: stefan@datenfreihafen.org
> CC: jk@codeconstruct.com.au
> CC: matt@codeconstruct.com.au
> CC: linux-usb@vger.kernel.org
> CC: linux-bluetooth@vger.kernel.org
> CC: linux-wpan@vger.kernel.org
> ---
>   drivers/net/bonding/bond_alb.c | 1 +
>   drivers/net/usb/cdc_mbim.c     | 1 +
>   include/net/ipv6.h             | 1 -
>   include/net/ipv6_frag.h        | 1 +
>   include/net/ndisc.h            | 1 -
>   net/6lowpan/core.c             | 1 +
>   net/ieee802154/6lowpan/core.c  | 1 +

For ieee802154:

Acked-by: Stefan Schmidt <stefan@datenfreihafen.org>

regards
Stefan Schmidt
Jakub Kicinski Feb. 3, 2022, 11:10 p.m. UTC | #3
On Thu, 3 Feb 2022 15:48:28 -0700 David Ahern wrote:
> > --- a/include/net/ndisc.h
> > +++ b/include/net/ndisc.h
> > @@ -71,7 +71,6 @@ do {								\
> >  
> >  struct ctl_table;
> >  struct inet6_dev;
> > -struct net_device;  
> 
> ndisc_parse_options references net_device. This part seems unrelated to
> the patch intent.

Indeed, I'll post v2 with this fixed. The reason was this header
includes linux/netdevice.h so the forward declaration is unnecessary.
diff mbox series

Patch

diff --git a/drivers/net/bonding/bond_alb.c b/drivers/net/bonding/bond_alb.c
index c98a4b0a8453..303c8d32d451 100644
--- a/drivers/net/bonding/bond_alb.c
+++ b/drivers/net/bonding/bond_alb.c
@@ -19,6 +19,7 @@ 
 #include <linux/in.h>
 #include <net/arp.h>
 #include <net/ipv6.h>
+#include <net/ndisc.h>
 #include <asm/byteorder.h>
 #include <net/bonding.h>
 #include <net/bond_alb.h>
diff --git a/drivers/net/usb/cdc_mbim.c b/drivers/net/usb/cdc_mbim.c
index 82bb5ed94c48..a7c1434fe2da 100644
--- a/drivers/net/usb/cdc_mbim.c
+++ b/drivers/net/usb/cdc_mbim.c
@@ -21,6 +21,7 @@ 
 #include <net/ipv6.h>
 #include <net/addrconf.h>
 #include <net/ipv6_stubs.h>
+#include <net/ndisc.h>
 
 /* alternative VLAN for IP session 0 if not untagged */
 #define MBIM_IPS0_VID	4094
diff --git a/include/net/ipv6.h b/include/net/ipv6.h
index 082f30256f59..cda1f205f391 100644
--- a/include/net/ipv6.h
+++ b/include/net/ipv6.h
@@ -15,7 +15,6 @@ 
 #include <linux/refcount.h>
 #include <linux/jump_label_ratelimit.h>
 #include <net/if_inet6.h>
-#include <net/ndisc.h>
 #include <net/flow.h>
 #include <net/flow_dissector.h>
 #include <net/snmp.h>
diff --git a/include/net/ipv6_frag.h b/include/net/ipv6_frag.h
index 0a4779175a52..5052c66e22d2 100644
--- a/include/net/ipv6_frag.h
+++ b/include/net/ipv6_frag.h
@@ -1,6 +1,7 @@ 
 /* SPDX-License-Identifier: GPL-2.0 */
 #ifndef _IPV6_FRAG_H
 #define _IPV6_FRAG_H
+#include <linux/icmpv6.h>
 #include <linux/kernel.h>
 #include <net/addrconf.h>
 #include <net/ipv6.h>
diff --git a/include/net/ndisc.h b/include/net/ndisc.h
index 53cb8de0e589..07d48bd6c0bd 100644
--- a/include/net/ndisc.h
+++ b/include/net/ndisc.h
@@ -71,7 +71,6 @@  do {								\
 
 struct ctl_table;
 struct inet6_dev;
-struct net_device;
 struct net_proto_family;
 struct sk_buff;
 struct prefix_info;
diff --git a/net/6lowpan/core.c b/net/6lowpan/core.c
index a068757eabaf..7b3341cef926 100644
--- a/net/6lowpan/core.c
+++ b/net/6lowpan/core.c
@@ -5,6 +5,7 @@ 
  * (C) 2015 Pengutronix, Alexander Aring <aar@pengutronix.de>
  */
 
+#include <linux/if_arp.h>
 #include <linux/module.h>
 
 #include <net/6lowpan.h>
diff --git a/net/ieee802154/6lowpan/core.c b/net/ieee802154/6lowpan/core.c
index 2cf62718a282..2c087b7f17c5 100644
--- a/net/ieee802154/6lowpan/core.c
+++ b/net/ieee802154/6lowpan/core.c
@@ -47,6 +47,7 @@ 
 #include <linux/module.h>
 #include <linux/netdevice.h>
 #include <linux/ieee802154.h>
+#include <linux/if_arp.h>
 
 #include <net/ipv6.h>
 
diff --git a/net/mctp/device.c b/net/mctp/device.c
index ef2755f82f87..02ddc0f1bd3e 100644
--- a/net/mctp/device.c
+++ b/net/mctp/device.c
@@ -6,6 +6,7 @@ 
  * Copyright (c) 2021 Google
  */
 
+#include <linux/if_arp.h>
 #include <linux/if_link.h>
 #include <linux/mctp.h>
 #include <linux/netdevice.h>