Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
authorLinus Torvalds <torvalds@g5.osdl.org>
Wed, 27 Jul 2005 23:37:59 +0000 (16:37 -0700)
committerLinus Torvalds <torvalds@g5.osdl.org>
Wed, 27 Jul 2005 23:37:59 +0000 (16:37 -0700)
drivers/net/Kconfig
net/core/sock.c
net/core/utils.c
net/ipv4/Kconfig
net/ipv4/Makefile
net/ipv4/netfilter/ip_conntrack_core.c
net/ipv4/utils.c [deleted file]

index 534b598..8a835eb 100644 (file)
@@ -23,9 +23,12 @@ config NETDEVICES
 
          If unsure, say Y.
 
+# All the following symbols are dependent on NETDEVICES - do not repeat
+# that for each of the symbols.
+if NETDEVICES
+
 config DUMMY
        tristate "Dummy net driver support"
-       depends on NETDEVICES
        ---help---
          This is essentially a bit-bucket device (i.e. traffic you send to
          this device is consigned into oblivion) with a configurable IP
@@ -45,7 +48,6 @@ config DUMMY
 
 config BONDING
        tristate "Bonding driver support"
-       depends on NETDEVICES
        depends on INET
        ---help---
          Say 'Y' or 'M' if you wish to be able to 'bond' multiple Ethernet
@@ -63,7 +65,6 @@ config BONDING
 
 config EQUALIZER
        tristate "EQL (serial line load balancing) support"
-       depends on NETDEVICES
        ---help---
          If you have two serial connections to some other computer (this
          usually requires two modems and two telephone lines) and you use
@@ -83,7 +84,6 @@ config EQUALIZER
 
 config TUN
        tristate "Universal TUN/TAP device driver support"
-       depends on NETDEVICES
        select CRC32
        ---help---
          TUN/TAP provides packet reception and transmission for user space
@@ -107,7 +107,7 @@ config TUN
 
 config NET_SB1000
        tristate "General Instruments Surfboard 1000"
-       depends on NETDEVICES && PNP
+       depends on PNP
        ---help---
          This is a driver for the General Instrument (also known as
          NextLevel) SURFboard 1000 internal
@@ -129,16 +129,14 @@ config NET_SB1000
 
          If you don't have this card, of course say N.
 
-if NETDEVICES
        source "drivers/net/arcnet/Kconfig"
-endif
 
 #
 #      Ethernet
 #
 
 menu "Ethernet (10 or 100Mbit)"
-       depends on NETDEVICES && !UML
+       depends on !UML
 
 config NET_ETHERNET
        bool "Ethernet (10 or 100Mbit)"
@@ -1137,7 +1135,7 @@ config IBMLANA
 
 config IBMVETH
        tristate "IBM LAN Virtual Ethernet support"
-       depends on NETDEVICES && NET_ETHERNET && PPC_PSERIES
+       depends on NET_ETHERNET && PPC_PSERIES
        ---help---
          This driver supports virtual ethernet adapters on newer IBM iSeries
          and pSeries systems.
@@ -1760,7 +1758,7 @@ endmenu
 #
 
 menu "Ethernet (1000 Mbit)"
-       depends on NETDEVICES && !UML
+       depends on !UML
 
 config ACENIC
        tristate "Alteon AceNIC/3Com 3C985/NetGear GA620 Gigabit support"
@@ -2091,7 +2089,7 @@ endmenu
 #
 
 menu "Ethernet (10000 Mbit)"
-       depends on NETDEVICES && !UML
+       depends on !UML
 
 config IXGB
        tristate "Intel(R) PRO/10GbE support"
@@ -2186,11 +2184,11 @@ source "drivers/s390/net/Kconfig"
 
 config ISERIES_VETH
        tristate "iSeries Virtual Ethernet driver support"
-       depends on NETDEVICES && PPC_ISERIES
+       depends on PPC_ISERIES
 
 config FDDI
        bool "FDDI driver support"
-       depends on NETDEVICES && (PCI || EISA)
+       depends on (PCI || EISA)
        help
          Fiber Distributed Data Interface is a high speed local area network
          design; essentially a replacement for high speed Ethernet. FDDI can
@@ -2239,7 +2237,7 @@ config SKFP
 
 config HIPPI
        bool "HIPPI driver support (EXPERIMENTAL)"
-       depends on NETDEVICES && EXPERIMENTAL && INET && PCI
+       depends on EXPERIMENTAL && INET && PCI
        help
          HIgh Performance Parallel Interface (HIPPI) is a 800Mbit/sec and
          1600Mbit/sec dual-simplex switched or point-to-point network. HIPPI
@@ -2271,7 +2269,7 @@ config ROADRUNNER_LARGE_RINGS
 
 config PLIP
        tristate "PLIP (parallel port) support"
-       depends on NETDEVICES && PARPORT
+       depends on PARPORT
        ---help---
          PLIP (Parallel Line Internet Protocol) is used to create a
          reasonably fast mini network consisting of two (or, rarely, more)
@@ -2307,7 +2305,6 @@ config PLIP
 
 config PPP
        tristate "PPP (point-to-point protocol) support"
-       depends on NETDEVICES
        ---help---
          PPP (Point to Point Protocol) is a newer and better SLIP.  It serves
          the same purpose: sending Internet traffic over telephone (and other
@@ -2443,7 +2440,6 @@ config PPPOATM
 
 config SLIP
        tristate "SLIP (serial line) support"
-       depends on NETDEVICES
        ---help---
          Say Y if you intend to use SLIP or CSLIP (compressed SLIP) to
          connect to your Internet service provider or to connect to some
@@ -2510,7 +2506,7 @@ config SLIP_MODE_SLIP6
 
 config NET_FC
        bool "Fibre Channel driver support"
-       depends on NETDEVICES && SCSI && PCI
+       depends on SCSI && PCI
        help
          Fibre Channel is a high speed serial protocol mainly used to connect
          large storage devices to the computer; it is compatible with and
@@ -2523,7 +2519,7 @@ config NET_FC
 
 config SHAPER
        tristate "Traffic Shaper (EXPERIMENTAL)"
-       depends on NETDEVICES && EXPERIMENTAL
+       depends on EXPERIMENTAL
        ---help---
          The traffic shaper is a virtual network device that allows you to
          limit the rate of outgoing data flow over some other network device.
@@ -2544,11 +2540,13 @@ config SHAPER
 
 config NETCONSOLE
        tristate "Network console logging support (EXPERIMENTAL)"
-       depends on NETDEVICES && INET && EXPERIMENTAL
+       depends on EXPERIMENTAL
        ---help---
        If you want to log kernel messages over the network, enable this.
        See <file:Documentation/networking/netconsole.txt> for details.
 
+endif #NETDEVICES
+
 config NETPOLL
        def_bool NETCONSOLE
 
index 8b35ccd..12f6d9a 100644 (file)
@@ -206,13 +206,14 @@ int sock_setsockopt(struct socket *sock, int level, int optname,
         */
 
 #ifdef SO_DONTLINGER           /* Compatibility item... */
-       switch (optname) {
-               case SO_DONTLINGER:
-                       sock_reset_flag(sk, SOCK_LINGER);
-                       return 0;
+       if (optname == SO_DONTLINGER) {
+               lock_sock(sk);
+               sock_reset_flag(sk, SOCK_LINGER);
+               release_sock(sk);
+               return 0;
        }
-#endif 
-               
+#endif
+       
        if(optlen<sizeof(int))
                return(-EINVAL);
        
index e11a865..88eb8b6 100644 (file)
 #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
   based on code from GNU Scientific Library 1.5 (30 Jun 2004)
@@ -153,3 +153,38 @@ int net_ratelimit(void)
 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);
index fc561c0..0b3d9f1 100644 (file)
@@ -124,7 +124,7 @@ config IP_ROUTE_MULTIPATH
 
 config IP_ROUTE_MULTIPATH_CACHED
        bool "IP: equal cost multipath with caching support (EXPERIMENTAL)"
-       depends on: IP_ROUTE_MULTIPATH
+       depends on IP_ROUTE_MULTIPATH
        help
          Normally, equal cost multipath routing is not supported by the
          routing cache. If you say Y here, alternative routes are cached
index 5718cdb..55dc6cc 100644 (file)
@@ -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 \
index 63bf882..86f04e4 100644 (file)
@@ -510,7 +510,7 @@ init_conntrack(const struct ip_conntrack_tuple *tuple,
                /* Welcome, Mr. Bond.  We've been expecting you... */
                __set_bit(IPS_EXPECTED_BIT, &conntrack->status);
                conntrack->master = exp->master;
-#if CONFIG_IP_NF_CONNTRACK_MARK
+#ifdef CONFIG_IP_NF_CONNTRACK_MARK
                conntrack->mark = exp->master->mark;
 #endif
                nf_conntrack_get(&conntrack->master->ct_general);
diff --git a/net/ipv4/utils.c b/net/ipv4/utils.c
deleted file mode 100644 (file)
index 6aecd7a..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * INET                An implementation of the TCP/IP protocol suite for the LINUX
- *             operating system.  INET is implemented using the  BSD Socket
- *             interface as the means of communication with the user level.
- *
- *             Various kernel-resident INET utility functions; mainly
- *             for format conversion and debugging output.
- *
- * Version:    $Id: utils.c,v 1.8 2000/10/03 07:29:01 anton Exp $
- *
- * Author:     Fred N. van Kempen, <waltje@uWalt.NL.Mugnet.ORG>
- *
- * Fixes:
- *             Alan Cox        :       verify_area check.
- *             Alan Cox        :       removed old debugging.
- *             Andi Kleen      :       add net_ratelimit()  
- *
- *             This program is free software; you can redistribute it and/or
- *             modify it under the terms of the GNU General Public License
- *             as published by the Free Software Foundation; either version
- *             2 of the License, or (at your option) any later version.
- */
-
-#include <linux/module.h>
-#include <linux/types.h>
-#include <asm/byteorder.h>
-
-/*
- *     Convert an ASCII string to binary IP. 
- */
-__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);