[PATCH v2] ip_tunnel: enclose a code block in macro IS_ENABLED(CONFIG_IPV6)

Subsystems: networking [general], networking [ipv4/ipv6], the rest

STALE3760d

4 messages, 3 authors, 2016-05-24 · open the first message on its own page

[PATCH v2] ip_tunnel: enclose a code block in macro IS_ENABLED(CONFIG_IPV6)

From: Haishuang Yan <hidden>
Date: 2016-05-24 02:40:13

For ipv6 case, enclose the code block in macro IS_ENABLED(CONFIG_IPV6).

---
Changes in v2:
  - Place the "#if IS_ENABLED" block before the "} else if
(..) {" piece and the "#endif" before the closing brace and this
becomes much easier to look at.

Signed-off-by: Haishuang Yan <redacted>
---
 net/ipv4/ip_tunnel.c | 2 ++
 1 file changed, 2 insertions(+)
diff --git a/net/ipv4/ip_tunnel.c b/net/ipv4/ip_tunnel.c
index a69ed94..4256349 100644
--- a/net/ipv4/ip_tunnel.c
+++ b/net/ipv4/ip_tunnel.c
@@ -665,9 +665,11 @@ void ip_tunnel_xmit(struct sk_buff *skb, struct net_device *dev,
 		if (skb->protocol == htons(ETH_P_IP)) {
 			tos = inner_iph->tos;
 			connected = false;
+#if IS_ENABLED(CONFIG_IPV6)
 		} else if (skb->protocol == htons(ETH_P_IPV6)) {
 			tos = ipv6_get_dsfield((const struct ipv6hdr *)inner_iph);
 			connected = false;
+#endif
 		}
 	}
 
-- 
1.8.3.1

Re: [PATCH v2] ip_tunnel: enclose a code block in macro IS_ENABLED(CONFIG_IPV6)

From: Eric Dumazet <hidden>
Date: 2016-05-24 03:14:22

On Tue, 2016-05-24 at 10:39 +0800, Haishuang Yan wrote:
For ipv6 case, enclose the code block in macro IS_ENABLED(CONFIG_IPV6).

---
Changes in v2:
  - Place the "#if IS_ENABLED" block before the "} else if
(..) {" piece and the "#endif" before the closing brace and this
becomes much easier to look at.
_Why_ is this patch needed ?

Please describe in the changelog what _actual_ problem you are trying to
address.

We have many points in the kernel using ipv6_get_dsfield() even if
CONFIG_IPV6=n, and it seems fine to me at least.

Thanks.

Re: [PATCH v2] ip_tunnel: enclose a code block in macro IS_ENABLED(CONFIG_IPV6)

From: 严海双 <hidden>
Date: 2016-05-24 03:55:38

On May 24, 2016, at 11:14 AM, Eric Dumazet [off-list ref] wrote:

On Tue, 2016-05-24 at 10:39 +0800, Haishuang Yan wrote:
quoted
For ipv6 case, enclose the code block in macro IS_ENABLED(CONFIG_IPV6).

---
Changes in v2:
 - Place the "#if IS_ENABLED" block before the "} else if
(..) {" piece and the "#endif" before the closing brace and this
becomes much easier to look at.
_Why_ is this patch needed ?

Please describe in the changelog what _actual_ problem you are trying to
address.

We have many points in the kernel using ipv6_get_dsfield() even if
CONFIG_IPV6=n, and it seems fine to me at least.

Thanks.

Yes, you’re right, but I think add this patch seems more reasonable in coding.

Thanks for your reviewing.

Re: [PATCH v2] ip_tunnel: enclose a code block in macro IS_ENABLED(CONFIG_IPV6)

From: David Miller <davem@davemloft.net>
Date: 2016-05-24 04:09:17

From: 严海双 <redacted>
Date: Tue, 24 May 2016 11:55:31 +0800
quoted
On May 24, 2016, at 11:14 AM, Eric Dumazet [off-list ref] wrote:

On Tue, 2016-05-24 at 10:39 +0800, Haishuang Yan wrote:
quoted
For ipv6 case, enclose the code block in macro IS_ENABLED(CONFIG_IPV6).

---
Changes in v2:
 - Place the "#if IS_ENABLED" block before the "} else if
(..) {" piece and the "#endif" before the closing brace and this
becomes much easier to look at.
_Why_ is this patch needed ?

Please describe in the changelog what _actual_ problem you are trying to
address.

We have many points in the kernel using ipv6_get_dsfield() even if
CONFIG_IPV6=n, and it seems fine to me at least.

Thanks.

Yes, you’re right, but I think add this patch seems more reasonable in coding.
No, it isn't more reasonable at all.

We have the backup implementations when CONFIG_IPV6 is disabled
_EXACTLY_ to avoid ifdef crap like this in C files.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help