netdev
[Top] [All Lists]

PROBLEM: PATCH for 2.4.23-pre4 and up hang on one system

To: linux-kernel@xxxxxxxxxxxxxxx
Subject: PROBLEM: PATCH for 2.4.23-pre4 and up hang on one system
From: "Beau E. Cox" <beau@xxxxxxxxxxx>
Date: Sat, 8 Nov 2003 18:27:28 -1000
Cc: Marcelo Tosatti <marcelo.tosatti@xxxxxxxxxxxx>
Organization: BeauCox.com
Resent-date: Sat, 8 Nov 2003 21:53:22 -0800 (PST)
Resent-from: Linus Torvalds <torvalds@xxxxxxxx>
Resent-message-id: <Pine.LNX.4.44.0311082153220.1648@xxxxxxxxxxxxx>
Resent-subject: PROBLEM: PATCH for 2.4.23-pre4 and up hang on one system
Resent-to: netdev@xxxxxxxxxxx
Sender: netdev-bounce@xxxxxxxxxxx
User-agent: KMail/1.5.4
submitted Sat Nov  8 13:08:55 HST 2003 by Beau E. Cox <beau@xxxxxxxxxxx>

[1.] One line summary of the problem:

Patch that fixes my problem:
Starting with 2.4.23-pre4 my system hangs during startup and/or is
generally unstable (see patch in [ X. ] below.)

[2.] Full description of the problem/report:

Origionally I had catagorized this problem with the startup sequence;
the system always seemed to hang when squid was started before
mysql, etc. Moving squid near the end of the startup process, I
thought the problem was in hand. However, the system (pre9) proved
unstable (would not stay up for longer than one day.)

The problem exhibits itself with a solid 'hang'; no oops, no dumps,
nada.

[ 3. ] - [ 7. ]

See previous posting; no hardware or configuration changes.

[X.] Other notes, patches, fixes, workarounds:

This patch to net/ipv4/netfilter/ip_nat_core.c fixed my problem
in all 2.4.23 versions pre4 - pre9:

--- linux-2.4.23-pre4/net/ipv4/netfilter/ip_nat_core.c  2003-11-08 
03:01:59.000000000 -1000
+++ linux-2.4.23-pre3/net/ipv4/netfilter/ip_nat_core.c  2003-11-08 
03:00:47.000000000 -1000
@@ -157,8 +157,8 @@
                                continue;
                }
 
-               if (!(mr->range[i].flags & IP_NAT_RANGE_PROTO_SPECIFIED)
-                   || proto->in_range(&newtuple, IP_NAT_MANIP_SRC,
+               if ((mr->range[i].flags & IP_NAT_RANGE_PROTO_SPECIFIED)
+                   && proto->in_range(&newtuple, IP_NAT_MANIP_SRC,
                                       &mr->range[i].min, &mr->range[i].max))
                        return 1;
        }

It is simply a rollback of changes to ip_nat_core.c made in
pre4.

Since my patch is to ip_nat_core.c, I should mention that I use
NAT via iptables. Here is an the relevant section if my iptables
startup script:

[...]
# setup nat
echo "  applying nat rules"
echo ""
$iptables -F FORWARD
$iptables -F -t nat
$iptables -P FORWARD DROP
$iptables -A FORWARD -i eth0 -j ACCEPT
$iptables -A INPUT -i eth0 -j ACCEPT
$iptables -A OUTPUT -o eth0 -j ACCEPT
$iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
$iptables -t nat -A POSTROUTING -s 10.0.0.0/8 -o eth1 -j SNAT --to-source 
x.x.x.x
[...]

All the information I can think of relating to this problem is at:

ftp://beaucox.com/pub/kernel/2.4.23-pre4-bug

Please see the README file.

---------------------------WARNING--------------------------
I am NOT a kernel programmer. The patch above was arrived at
by hit-or-miss. I REALLY don't know what I am doing (but
my system works now!)
---------------------------WARNING--------------------------

Aloha => Beau;

PS: Please let me know if you need more information.



-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


<Prev in Thread] Current Thread [Next in Thread>
  • PROBLEM: PATCH for 2.4.23-pre4 and up hang on one system, Beau E. Cox <=