NETCONSOLE must depend on INET
Subsystems (2)
PATCH 1/1 NETCONSOLE must depend on INET
NETCONSOLE=y and INET=n results in the following compile error:
<-- snip -->
...
LD .tmp_vmlinux1net/built-in.o: In function `netpoll_parse_options':
: undefined reference to in_aton' net/built-in.o: In function netpoll_parse_options':
: undefined reference to `in_aton'
make: *** [.tmp_vmlinux1] Error 1
<-- snip -->
drivers/net/Kconfig renamed from drivers/net/Kconfig.old +1 -1
@@ -2544,7 +2544,7 @@ config NETCONSOLE tristate "Network console logging support (EXPERIMENTAL)" - depends on NETDEVICES && EXPERIMENTAL + depends on NETDEVICES && INET && EXPERIMENTAL ---help--- If you want to log kernel messages over the network, enable this. See <file:Documentation/networking/netconsole.txt> for details.
David S. Miller
maintainerFrom: Adrian Bunk <[email protected]>
Date: Tue, 19 Jul 2005 20:29:19 +0200
Quoted 1 line
NETCONSOLE=y and INET=n results in the following compile error:
Also applied, thanks Adrian.
Quoted 6 lines · David S. Miller
From: Adrian Bunk <[email protected]>
Date: Tue, 19 Jul 2005 20:29:19 +0200Quoted 1 line
NETCONSOLE=y and INET=n results in the following compile error:
Also applied, thanks Adrian.
I should have been cc:ed on this.
This problem also exists in PKTGEN. And this fix is incorrect as neither is dependent on the IP part of the networking stack in any substantive way. The right fix is to make inet_aton available outside of CONFIG_INET (preferred) or making private copies of inet_aton.
Signature · 1 line
Mathematics is the supreme nostalgia of our time.
David S. Miller
maintainerFrom: Matt Mackall <[email protected]>
Date: Tue, 26 Jul 2005 16:20:43 -0700
Quoted 4 lines
This problem also exists in PKTGEN. And this fix is incorrect as neither is dependent on the IP part of the networking stack in any substantive way. The right fix is to make
inet_atonavailable outside ofCONFIG_INET(preferred) or making private copies ofinet_aton.
Adrian posted a fix, you whine, that's why Adrian's fix went in :-)
More seriously, please submit a version of whatever you believe to be the more correct fix so it can be reviewed and integrated.
Quoted 10 lines · David S. Miller
From: Matt Mackall <[email protected]>
Date: Tue, 26 Jul 2005 16:20:43 -0700Quoted 4 lines
This problem also exists in PKTGEN. And this fix is incorrect as neither is dependent on the IP part of the networking stack in any substantive way. The right fix is to make
inet_atonavailable outside ofCONFIG_INET(preferred) or making private copies ofinet_aton.Adrian posted a fix, you whine, that's why Adrian's fix went in :-)
Adrian's fix is the moral equivalent of throwing in a cast to shut up a compiler warning for a legitimate bug.
Quoted 3 lines
More seriously, please submit a version of whatever you believe to be the more correct fix so it can be reviewed and integrated.
Do you have a preferred location to put this function or shall I invent one?
Signature · 1 line
Mathematics is the supreme nostalgia of our time.
David S. Miller
maintainerFrom: Matt Mackall <[email protected]>
Date: Tue, 26 Jul 2005 16:58:24 -0700
Quoted 7 lines · David S. Miller
Quoted 3 lines
More seriously, please submit a version of whatever you believe to be the more correct fix so it can be reviewed and integrated.
Do you have a preferred location to put this function or shall I invent one?
I actually can't wait to see where you're going to to put a function that transforms "IPV4 addresses" from ascii other than some place protected by CONFIG_INET. :-)
[sch added to cc: as I think he's the effective pktgen maintainer]
Quoted 8 lines · David S. Miller
From: Matt Mackall <[email protected]>
Date: Tue, 26 Jul 2005 16:58:24 -0700Quoted 5 lines · David S. Miller
Quoted 3 lines
More seriously, please submit a version of whatever you believe to be the more correct fix so it can be reviewed and integrated.
Quoted 7 lines
Quoted 2 lines
Do you have a preferred location to put this function or shall I invent one?
I actually can't wait to see where you're going to to put a function that transforms "IPV4 addresses" from ascii other than some place protected by
CONFIG_INET. :-)
# HG changeset patch
# User [email protected]
# Node ID 6cdd6f36d53678a016cfbf5ce667cbd91504d538 # Parent 75716ae25f9d87ee2a5ef7c4df2d8f86e0f3f762 Move in_aton from net/ipv4/utils.c to net/core/utils.c
Move in_aton to allow netpoll and pktgen to work without the rest of the IPv4 stack. Fix whitespace and add comment for the odd placement.
Delete now-empty net/ipv4/utils.c
Re-enable netpoll/netconsole without CONFIG_INET
drivers/net/Kconfig +1 -1
@@ -2544,7 +2544,7 @@ config NETCONSOLE tristate "Network console logging support (EXPERIMENTAL)" - depends on NETDEVICES && INET && EXPERIMENTAL + depends on NETDEVICES && EXPERIMENTAL ---help--- If you want to log kernel messages over the network, enable this. See <file:Documentation/networking/netconsole.txt> for details.
net/core/utils.c +36 -1
@@ -23,9 +23,9 @@#include <linux/percpu.h> #include <linux/init.h> +#include <asm/byteorder.h> #include <asm/system.h> #include <asm/uaccess.h> -/* This is a maximally equidistributed combined Tausworthe generator
@@ -153,3 +153,38 @@EXPORT_SYMBOL (net_random);EXPORT_SYMBOL (net_ratelimit);EXPORT_SYMBOL (net_srandom); + +/* +* Convert an ASCII string to binary IP. +* This is outside of net/ipv4/ because various code that uses IP addresses +* is otherwise not dependent on the TCP/IP stack. +*/ + +__u32 in_aton (const char *str) +{ +unsigned long l; +unsigned int val; +int i; + + l =0 ; +for (i =0 ; i <4 ; i++) + { + l <<=8 ; +if (*str !='\0' ) + { + val =0 ; +while (*str !='\0' && *str !='.' ) + { + val *=10 ; + val += *str -'0' ; + str++; + } + l |= val; +if (*str !='\0' ) + str++; + } + } +return (htonl (l)); +} + +EXPORT_SYMBOL (in_aton);
net/ipv4/Makefile +1 -1
@@ -2,7 +2,7 @@ # Makefile for the Linux TCP/IP (INET) layer. # -obj-y := utils.o route.o inetpeer.o protocol.o \ +obj-y := route.o inetpeer.o protocol.o \ ip_input.o ip_fragment.o ip_forward.o ip_options.o \ ip_output.o ip_sockglue.o \ tcp.o tcp_input.o tcp_output.o tcp_timer.o tcp_ipv4.o \
net/ipv4/utils.c deleted +0 -59
59 lines not on this page · raw message
Signature · 1 line
Mathematics is the supreme nostalgia of our time.
David S. Miller
maintainerFrom: Matt Mackall <[email protected]>
Date: Tue, 26 Jul 2005 19:36:37 -0700
Quoted 1 line
[sch added to cc: as I think he's the effective pktgen maintainer]
No, that would be Robert Olsson.
Quoted 1 line
Move
in_atonfromnet/ipv4/utils.ctonet/core/utils.c
Fair enough.
David S. Miller
maintainerFrom: Matt Mackall <[email protected]>
Date: Tue, 26 Jul 2005 19:36:37 -0700
Quoted 5 lines
# HG changeset patch
# User [email protected]
# Node ID6cdd6f36d53678a016cfbf5ce667cbd91504d538# Parent75716ae25f9d87ee2a5ef7c4df2d8f86e0f3f762Movein_atonfromnet/ipv4/utils.ctonet/core/utils.c
This patch doesn't apply, in the current 2.6.x GIT tree NETCONSOLE does not depend on NETDEVICES.
Please fix up this patch so that I can apply it.
Thanks.
Quoted 11 lines · David S. Miller
From: Matt Mackall <[email protected]>
Date: Tue, 26 Jul 2005 19:36:37 -0700Quoted 5 lines
# HG changeset patch
# User [email protected]
# Node ID6cdd6f36d53678a016cfbf5ce667cbd91504d538# Parent75716ae25f9d87ee2a5ef7c4df2d8f86e0f3f762Movein_atonfromnet/ipv4/utils.ctonet/core/utils.cThis patch doesn't apply, in the current 2.6.x GIT tree NETCONSOLE does not depend on NETDEVICES.
Odd, gitweb of Linus' tree seems to disagree. I see it depends on NETDEVICES && INET && EXPERIMENTAL. NETDEVICES has been there since the beginning of git history and according to my Mercurial import from BKCVS, it's been dependent on NETDEVICES since I first submitted it.
Signature · 1 line
Mathematics is the supreme nostalgia of our time.
David S. Miller
maintainerFrom: Matt Mackall <[email protected]>
Date: Wed, 27 Jul 2005 13:46:22 -0700
Quoted 4 lines
Odd, gitweb of Linus' tree seems to disagree. I see it depends on NETDEVICES && INET && EXPERIMENTAL. NETDEVICES has been there since the beginning of git history and according to my Mercurial import from BKCVS, it's been dependent on NETDEVICES since I first submitted it.
Sorry, that's a result of a local change I just added to fix up presentation the net device family Kconfig's.