diff mbox

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

Message ID 1464057597-3648-1-git-send-email-yanhaishuang@cmss.chinamobile.com
State Rejected, archived
Delegated to: David Miller
Headers show

Commit Message

Haishuang Yan May 24, 2016, 2:39 a.m. UTC
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 <yanhaishuang@cmss.chinamobile.com>
---
 net/ipv4/ip_tunnel.c | 2 ++
 1 file changed, 2 insertions(+)

Comments

Eric Dumazet May 24, 2016, 3:14 a.m. UTC | #1
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.
Haishuang Yan May 24, 2016, 3:55 a.m. UTC | #2
> On May 24, 2016, at 11:14 AM, Eric Dumazet <eric.dumazet@gmail.com> wrote:
> 
> 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.
> 
> 
> 

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

Thanks for your reviewing.
David Miller May 24, 2016, 4:09 a.m. UTC | #3
From: 严海双 <yanhaishuang@cmss.chinamobile.com>

Date: Tue, 24 May 2016 11:55:31 +0800

> 

>> On May 24, 2016, at 11:14 AM, Eric Dumazet <eric.dumazet@gmail.com> wrote:

>> 

>> 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.

>> 

>> 

>> 

> 

> 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.
diff mbox

Patch

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
 		}
 	}