Skip to contentSkip to conversation

net:Kconfig: drop no sense dependence entry for BONDING

PATCH In review Wang YanQing 5 participants 5 messages Mar 12, 2015

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 net:Kconfig: drop no sense dependence entry for BONDING

"IPV6 || IPV6=n" means no dependence!

---
 drivers/net/Kconfig | 1 -
 1 file changed, 1 deletion(-)
drivers/net/Kconfig +0 -1
index df51d60..37b364f 100644
@@ -40,7 +40,6 @@ if NET_CORE
 config BONDING
 	tristate "Bonding driver support"
 	depends on INET
-	depends on IPV6 || IPV6=n
 	---help---
 	  Say 'Y' or 'M' if you wish to be able to 'bond' multiple Ethernet
 	  Channels together. This is called 'Etherchannel' by Cisco,
Signature · 1 line
2.2.2.dirty
#1 lore raw
Quoted 1 line · Wang YanQing

"IPV6 || IPV6=n" means no dependence!

Wow, this is all over the place..
find . -name 'Kconfig' | xargs grep 'depends on' |grep 'IPV6 || IPV6=n'

Quoted 24 lines
---
 drivers/net/Kconfig | 1 -
 1 file changed, 1 deletion(-)
drivers/net/Kconfig +0 -1
index df51d60..37b364f 100644
@@ -40,7 +40,6 @@ if NET_CORE
 config BONDING
 	tristate "Bonding driver support"
 	depends on INET
-	depends on IPV6 || IPV6=n
 	---help---
 	  Say 'Y' or 'M' if you wish to be able to 'bond' multiple Ethernet
 	  Channels together. This is called 'Etherchannel' by Cisco,
Signature · 5 lines
2.2.2.dirty
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
#2 lore raw
In reply to Wang YanQing
Quoted 1 line · On Thursday 12 March 2015 21:59:33 Wang YanQing wrote:

"IPV6 || IPV6=n" means no dependence!

IPV6 and BONDING are both tristate symbols and therefore this is not the same as no dependency. When setting IPV6 to m, the expression evaluates to

"IPV6 || IPV6=n"

"m || m=n"
"m || n"

"m"

So, if IPV6=m, then BONDING can only be n or m, but not y.

#3 lore raw
Quoted 6 lines · Martin Walch
Quoted 1 line · On Thursday 12 March 2015 21:59:33 Wang YanQing wrote:

"IPV6 || IPV6=n" means no dependence!

IPV6 and BONDING are both tristate symbols and therefore this is not the same as no dependency. When setting IPV6 to m, the expression evaluates to

Quoted 6 lines

"IPV6 || IPV6=n"

"m || m=n"
"m || n"

"m"

So, if IPV6=m, then BONDING can only be n or m, but not y.

Right.

But it looks like bonding driver no longer has IPV6 dependencies.

Patch should work, but the changelog should be changed to explain why the patch is valid, and this should be tested.

Presumably we need to make sure the following builds and runs properly

CONFIG_BONDING=y
CONFIG_IPV6=m

maintainer
#4 lore raw
In reply to Wang YanQing

From: Wang YanQing <[email protected]>
Date: Thu, 12 Mar 2015 21:59:33 +0800

Quoted 3 lines

"IPV6 || IPV6=n" means no dependence!

It is only nonsense because you don't actually understand what the statement does.

It makes sure that either IPV6 is enabled and _EQUALS_ what BONDING is set to ("y" _or_ "m"), or it is disabled.

This pattern is used all over the place and is quite common actually.

Better to first ask what a statement does, than to knee-jerk submit a patch to remove it. Because patch submissions use up people's resources and time, particularly mine.