All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bart De Schuymer <bdschuym@pandora.be>
To: Andi Kleen <ak@suse.de>
Cc: Crazy AMD K7 <snort2004@mail.ru>,
	linux-kernel@vger.kernel.org, netdev@oss.sgi.com
Subject: Re: do_IRQ: stack overflow: 872..
Date: Sat, 18 Dec 2004 12:51:30 +0100	[thread overview]
Message-ID: <1103370690.3566.33.camel@localhost.localdomain> (raw)
In-Reply-To: <20041218111420.GE338@wotan.suse.de>

Op za, 18-12-2004 te 12:14 +0100, schreef Andi Kleen:
> > The bridge-nf code does not use recursive function calls and there is no
> > long consecutive function calling. Furthermore, there is no function in
> > the bridge-nf code that uses a large part of the stack.
> 
> Just take a look at the backtrace in the original post. It clearly
> shows a problem. And it points strongly towards br-netfilter.

I don't doubt you are a much better reader of such backtraces than me.
However, let's count the number of times a function from
net/bridge/br_netfilter.c is in the backtrace:
1. br_nf*: 6 times
2. *sabotage*: 3 times
Seriously, out of 222 lines, only 9 from bridge-nf.
The function ip_queue_xmit, OTOH, is 8 times in the trace.

Anyway, as I already suspected weeks ago, AMD must be seeing some
incompatibility between ip_queue (he's using snort) and the bridge-nf
patch.

He is using the patch (I gave it to him) below on top of the bridge-nf
patch. Before using that patch he got a kernel panic occasionally.
However he seems not to get a message in his syslog.

Bart


--- linux-2.4.28-ebt-brnf/net/bridge/br_netfilter.c.old 2004-11-27 23:43:18.000000000 +0100
+++ linux-2.4.28-ebt-brnf/net/bridge/br_netfilter.c     2004-11-27
23:52:05.000000000 +0100
@@ -870,6 +870,10 @@ static unsigned int ip_sabotage_out(unsi
 {
        struct sk_buff *skb = *pskb;
 
+if (!skb) {
+       printk("TROUBLE IN IP_SABOTAGE_OUT: skb==NULL\n");
+       goto in_trouble;
+}
 #ifdef CONFIG_SYSCTL
        if (!skb->nf_bridge) {
                struct vlan_ethhdr *hdr =
@@ -884,6 +888,10 @@ static unsigned int ip_sabotage_out(unsi
        }
 #endif
 
+if (!out) {
+       printk("TROUBLE IN IP_SABOTAGE_OUT: out == NULL\n");
+       goto in_trouble;
+}
        if ((out->hard_start_xmit == br_dev_xmit &&
            okfn != br_nf_forward_finish &&
            okfn != br_nf_local_out_finish &&
@@ -920,6 +928,9 @@ static unsigned int ip_sabotage_out(unsi
        }
 
        return NF_ACCEPT;
+in_trouble:
+       dump_stack();
+       return NF_DROP;
 }
 
 /* For br_nf_local_out we need (prio = NF_BR_PRI_FIRST), to insure that
innocent




  reply	other threads:[~2004-12-18 11:48 UTC|newest]

Thread overview: 53+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1131604877.20041218092730@mail.ru.suse.lists.linux.kernel>
2004-12-18  7:50 ` do_IRQ: stack overflow: 872 Andi Kleen
2004-12-18 11:12   ` Bart De Schuymer
2004-12-18 11:14     ` Andi Kleen
2004-12-18 11:51       ` Bart De Schuymer [this message]
2004-12-18 13:53         ` Andi Kleen
2004-12-18 16:07           ` Re[2]: " Crazy AMD K7
2004-12-18 16:46             ` Bart De Schuymer
2005-01-07 17:05   ` David Woodhouse
2005-01-07 18:00     ` Stephen Hemminger
2005-01-07 18:00       ` [Bridge] " Stephen Hemminger
2005-01-07 18:06       ` David Woodhouse
2005-01-07 18:06         ` [Bridge] " David Woodhouse
2005-01-07 21:27       ` Bart De Schuymer
2005-01-07 21:27         ` [Bridge] " Bart De Schuymer
2005-01-18 21:57         ` David S. Miller
2005-01-18 21:57           ` [Bridge] " David S. Miller
2005-01-22 22:30           ` [PATCH/RFC] Reduce call chain length in netfilter (was: Re: do_IRQ: stack overflow: 872..) Bart De Schuymer
2005-01-22 22:30             ` [Bridge] " Bart De Schuymer
2005-01-22 23:22             ` Martin Josefsson
2005-01-22 23:22               ` [Bridge] " Martin Josefsson
2005-01-23 12:40               ` Bart De Schuymer
2005-01-23 12:40                 ` [Bridge] " Bart De Schuymer
2005-01-23 16:08                 ` Martin Josefsson
2005-01-23 16:08                   ` [Bridge] " Martin Josefsson
2005-01-26  6:05                   ` David S. Miller
2005-01-26  6:05                     ` [Bridge] " David S. Miller
2005-01-26  9:08                     ` Bart De Schuymer
2005-01-26  9:08                       ` [Bridge] " Bart De Schuymer
2005-01-26 23:49                       ` [PATCH/RFC] Reduce call chain length in netfilter Patrick McHardy
2005-01-26 23:49                         ` [Bridge] " Patrick McHardy
2005-01-27  7:18                         ` David S. Miller
2005-01-27  7:18                           ` [Bridge] " David S. Miller
2005-01-27 17:50                           ` Patrick McHardy
2005-01-27 17:50                             ` [Bridge] " Patrick McHardy
2005-01-27 19:47                             ` David S. Miller
2005-01-27 19:47                               ` [Bridge] " David S. Miller
2005-01-27 21:16                               ` Bart De Schuymer
2005-01-27 21:16                                 ` [Bridge] " Bart De Schuymer
2005-01-27 22:48                               ` Patrick McHardy
2005-01-27 22:48                                 ` [Bridge] " Patrick McHardy
2005-01-27 23:24                                 ` David S. Miller
2005-01-27 23:24                                   ` [Bridge] " David S. Miller
2005-01-28  0:08                                   ` Patrick McHardy
2005-01-28  0:08                                     ` [Bridge] " Patrick McHardy
2005-01-28  0:29                                   ` Rusty Russell
2005-01-28  0:29                                     ` [Bridge] " Rusty Russell
2005-01-28  1:10                                     ` David S. Miller
2005-01-28  1:10                                       ` [Bridge] " David S. Miller
2005-01-28  1:32                                       ` Rusty Russell
2005-01-28  1:32                                         ` [Bridge] " Rusty Russell
2005-01-28  1:35                                         ` Patrick McHardy
2005-01-28  1:35                                           ` [Bridge] " Patrick McHardy
2004-12-18  6:27 do_IRQ: stack overflow: 872 Crazy AMD K7

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1103370690.3566.33.camel@localhost.localdomain \
    --to=bdschuym@pandora.be \
    --cc=ak@suse.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=netdev@oss.sgi.com \
    --cc=snort2004@mail.ru \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.