netdev
[Top] [All Lists]

[PATCH] 2.4.16 won't compile without TCP/IP

To: netdev@xxxxxxxxxxx
Subject: [PATCH] 2.4.16 won't compile without TCP/IP
From: Tommi Virtanen <tv@xxxxxxxxxx>
Date: 04 Dec 2001 22:19:48 +0200
Sender: owner-netdev@xxxxxxxxxxx
User-agent: Gnus/5.0808 (Gnus v5.8.8) XEmacs/21.4 (Artificial Intelligence)
        Disabling CONFIG_INET makes 2.4.16 fail at compile due to
        include/net/tcp_ecn.h using macros INET_ECN_xmit and
        INET_ECN_xmit. They try to access the af_inet member of a
        union

#define INET_ECN_xmit(sk) do { (sk)->protinfo.af_inet.tos |= 2; } while (0)
#define INET_ECN_dontxmit(sk) do { (sk)->protinfo.af_inet.tos &= ~3; } while (0)

        but without CONFIG_INET, the union has no af_inet field.
        Here's a patch that disables the whole header if CONFIG_INET
        is not set. You may prefer some other approach; please just fix
        the symptoms :)

--- linux-2.4.16.orig/include/net/tcp_ecn.h     Sat Nov  3 03:43:26 2001
+++ linux-2.4.16/include/net/tcp_ecn.h  Tue Dec  4 21:54:34 2001
@@ -1,6 +1,8 @@
 #ifndef _NET_TCP_ECN_H_
 #define _NET_TCP_ECN_H_ 1
 
+#ifdef CONFIG_INET
+
 #include <net/inet_ecn.h>
 
 #define TCP_HP_BITS (~(TCP_RESERVED_BITS|TCP_FLAG_PSH))
@@ -128,5 +130,7 @@
        if (sysctl_tcp_ecn && th->ece && th->cwr)
                req->ecn_ok = 1;
 }
+
+#endif
 
 #endif


        And just to be sure, here's a minimal config that triggers the
        failure. Everything else is unset.

CONFIG_X86=y
CONFIG_ISA=y
CONFIG_UID16=y
CONFIG_M386=y
CONFIG_X86_L1_CACHE_SHIFT=4
CONFIG_RWSEM_GENERIC_SPINLOCK=y
CONFIG_NOHIGHMEM=y
CONFIG_NET=y
CONFIG_BINFMT_ELF=y
CONFIG_MSDOS_PARTITION=y

-- 
tv@{{hq.yok.utu,havoc,gaeshido}.fi,{debian,wanderer}.org,stonesoft.com}
double a,b=4,c;main(){for(;++a<2e6;c-=(b=-b)/a++);printf("%f\n",c);}

<Prev in Thread] Current Thread [Next in Thread>
  • [PATCH] 2.4.16 won't compile without TCP/IP, Tommi Virtanen <=