Skip to contentSkip to conversation

Revert "ipv4: Make INET_LRO a bool instead of tristate."

PATCH In review Ben Hutchings 2 participants 5 messages Oct 4, 2010

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

PATCH 1/2 Revert "ipv4: Make INET_LRO a bool instead of tristate."

This reverts commit e81963b180ac502fda0326edf059b1e29cdef1a2.

LRO is now deprecated in favour of GRO, and only a few drivers use it, so it is desirable to build it as a module in distribution kernels.

The original change to prevent building it as a module was made in an attempt to avoid the case where some dependents are set to y and some to m, and INET_LRO can be set to m rather than y. However, the Kconfig system will reliably set INET_LRO=y in this case.

---
Dave,

You made the change I want to revert in response to
<http://article.gmane.org/gmane.linux.kernel/825646>. The real problem with its configuration is actually that CONFIG_INET is not set but CONFIG_INET_LRO=m, and the fix is to make CONFIG_PASEMI_MAC depend on CONFIG_INET.

Ben.

 net/ipv4/Kconfig |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
net/ipv4/Kconfig +1 -1
index 94e0b51..704a0cf 100644
@@ -420,7 +420,7 @@ config INET_XFRM_MODE_BEET
 	  If unsure, say Y.
 
 config INET_LRO
-	bool "Large Receive Offload (ipv4/tcp)"
+	tristate "Large Receive Offload (ipv4/tcp)"
 	default y
 	---help---
 	  Support for Large Receive Offload (ipv4/tcp).
Signature · 1 line
1.7.1
#1 lore raw

PATCH 2/2 netdev: Depend on INET before selecting INET_LRO

Since 'select' ignores dependencies, drivers that select INET_LRO must depend on INET. This fixes the broken configuration reported in
<http://article.gmane.org/gmane.linux.kernel/825646>.

---
 drivers/net/Kconfig |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
drivers/net/Kconfig +2 -2
index ef683a9..13d01f3 100644
@@ -2428,7 +2428,7 @@ config UGETH_TX_ON_DEMAND
 
 config MV643XX_ETH
 	tristate "Marvell Discovery (643XX) and Orion ethernet support"
-	depends on MV64X60 || PPC32 || PLAT_ORION
+	depends on (MV64X60 || PPC32 || PLAT_ORION) && INET
 	select INET_LRO
 	select PHYLIB
 	help
@@ -2815,7 +2815,7 @@ config NIU
 
 config PASEMI_MAC
 	tristate "PA Semi 1/10Gbit MAC"
-	depends on PPC_PASEMI && PCI
+	depends on PPC_PASEMI && PCI && INET
 	select PHYLIB
 	select INET_LRO
 	help
Signature · 1 line
1.7.1
maintainer
#2 lore raw
In reply to Ben Hutchings

From: Ben Hutchings <[email protected]>
Date: Mon, 04 Oct 2010 02:37:42 +0100

Quoted 5 lines

You made the change I want to revert in response to
<http://article.gmane.org/gmane.linux.kernel/825646>. The real problem with its configuration is actually that CONFIG_INET is not set but CONFIG_INET_LRO=m, and the fix is to make CONFIG_PASEMI_MAC depend on CONFIG_INET.

Ben, you can't just revert this by itself.

That knowingly breaks the build.

If you want the tristate back, you must do it after or at the same time as fixing the driver deps.

Thanks.

#3 lore raw
Quoted 9 lines · David Miller

From: Ben Hutchings <[email protected]>
Date: Mon, 04 Oct 2010 02:37:42 +0100

Quoted 5 lines

You made the change I want to revert in response to
<http://article.gmane.org/gmane.linux.kernel/825646>. The real problem with its configuration is actually that CONFIG_INET is not set but CONFIG_INET_LRO=m, and the fix is to make CONFIG_PASEMI_MAC depend on CONFIG_INET.

Quoted 6 lines

Ben, you can't just revert this by itself.

That knowingly breaks the build.

If you want the tristate back, you must do it after or at the same time as fixing the driver deps.

The fact that the driver dependencies are broken has nothing to do with whether CONFIG_INET_LRO is boolean or tristate. You fixed a problem that didn't exist rather than the problem that did.

Ben.

Signature · 2 lines
Ben Hutchings
Once a job is fouled up, anything done to improve it makes it worse.
maintainer
#4 lore raw

From: Ben Hutchings <[email protected]>
Date: Mon, 04 Oct 2010 04:54:55 +0100

Quoted 12 lines · David Miller
Quoted 11 lines

From: Ben Hutchings <[email protected]>
Date: Mon, 04 Oct 2010 02:37:42 +0100

Quoted 5 lines

You made the change I want to revert in response to
<http://article.gmane.org/gmane.linux.kernel/825646>. The real problem with its configuration is actually that CONFIG_INET is not set but CONFIG_INET_LRO=m, and the fix is to make CONFIG_PASEMI_MAC depend on CONFIG_INET.

Ben, you can't just revert this by itself.

Quoted 8 lines
Quoted 4 lines

That knowingly breaks the build.

If you want the tristate back, you must do it after or at the same time as fixing the driver deps.

The fact that the driver dependencies are broken has nothing to do with whether CONFIG_INET_LRO is boolean or tristate. You fixed a problem that didn't exist rather than the problem that did.

Oh, I see, ok I'll apply your patches thanks for explaining Ben.