public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: george anzinger <george@mvista.com>
To: Zwane Mwaikambo <zwane@linuxpower.ca>
Cc: Trond Myklebust <trond.myklebust@fys.uio.no>,
	Linux Kernel <linux-kernel@vger.kernel.org>
Subject: Re: odd memory corruption in 2.5.27?
Date: Tue, 23 Jul 2002 13:32:11 -0700	[thread overview]
Message-ID: <3D3DBD4B.4EFD3543@mvista.com> (raw)
In-Reply-To: Pine.LNX.4.44.0207231053190.32636-100000@linux-box.realnet.co.sz

Zwane Mwaikambo wrote:
> 
> On Tue, 23 Jul 2002, Trond Myklebust wrote:
> 
> > Just means that some RPC message reply from the server was crap. We should
> > deal fine with that sort of thing...
> >
> > AFAICS The Oops itself happened deep down in the socket layer in the part
> > which has to do with reassembling fragments into packets. The garbage
> > collector tried to release a fragment that had timed out and Oopsed.
> >
> > Suggests either memory corruption or else that the networking driver is doing
> > something odd ('cos at that point in the socket layer *only* the driver + the
> > fragment handler should have touched the skb).
> 
> Thanks, that helps quite a bit, i'll see if i can pinpoint it and send it
> to the relevant people.
> 
I just spent a month tracking down this issue.  It comes
down to the slab allocater using per cpu data structures and
protecting them with a combination of interrupt disables and
spin_locks.  Preemption is allowed (incorrectly) if
interrupts are off and preempt_count goes to zero on the
spin_unlock.  I will wager that this is an SMP machine. 
After the preemption interrupts will be on (schedule() does
that) AND you could be on a different cpu.  Either of these
is a BAD thing.

The proposed fix is to catch the attempted preemption in
preempt_schedule() and just return if the interrupt system
is off.  (Of course there is more that this to it, but I do
believe that the problem is known.  You could blow this
assertion out of the water by asserting that the machine is
NOT smp.)
-- 
George Anzinger   george@mvista.com
High-res-timers: 
http://sourceforge.net/projects/high-res-timers/
Real time sched:  http://sourceforge.net/projects/rtsched/
Preemption patch:
http://www.kernel.org/pub/linux/kernel/people/rml

  reply	other threads:[~2002-07-23 20:29 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-07-23  6:23 odd memory corruption in 2.5.27? Zwane Mwaikambo
2002-07-23  6:24 ` Zwane Mwaikambo
2002-07-23  6:26   ` Zwane Mwaikambo
2002-07-23  7:57     ` Trond Myklebust
2002-07-23  8:54       ` Zwane Mwaikambo
2002-07-23 20:32         ` george anzinger [this message]
2002-07-23 20:47           ` William Lee Irwin III
2002-07-23 23:28           ` [patch] irqlock patch -G3. [was Re: odd memory corruption in 2.5.27?] Ingo Molnar
2002-07-23 23:53             ` george anzinger
2002-07-23 23:56             ` Linus Torvalds
2002-07-24  0:07               ` Ingo Molnar
2002-07-24  2:15                 ` Linus Torvalds
2002-07-24  8:59                   ` [patch] irqlock patch 2.5.27-H3 Ingo Molnar
2002-07-24  1:08             ` [patch] irqlock patch -G3. [was Re: odd memory corruption in 2.5.27?] Robert Love
2002-07-24  3:13               ` [patch] irqlock patch -G3. [was Re: odd memory corruption in2.5.27?] Andrew Morton
2002-07-24  3:18                 ` Linus Torvalds
2002-07-24  7:13                   ` Ingo Molnar
2002-07-24  7:34                 ` Ingo Molnar
2002-07-24  8:00                   ` [patch] irqlock patch -G3. [was Re: odd memory corruptionin2.5.27?] Andrew Morton
2002-07-24  7:54                     ` Ingo Molnar
2002-07-24  8:03                     ` William Lee Irwin III
2002-07-24  8:06                       ` Ingo Molnar
2002-07-24  8:15                         ` William Lee Irwin III
2002-07-24  8:17                           ` Ingo Molnar
2002-07-24 16:40                     ` Linus Torvalds
2002-07-24 16:49                       ` Robert Love
2002-07-24 20:56                         ` [patch] irqlock patch -G3. [was Re: odd memorycorruptionin2.5.27?] george anzinger
2002-07-24  7:37                 ` [patch] irqlock patch -G3. [was Re: odd memory corruption in2.5.27?] Ingo Molnar
2002-07-24  6:52           ` odd memory corruption in 2.5.27? Zwane Mwaikambo

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=3D3DBD4B.4EFD3543@mvista.com \
    --to=george@mvista.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=trond.myklebust@fys.uio.no \
    --cc=zwane@linuxpower.ca \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox