linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Andrea Arcangeli <andrea@suse.de>
To: Arjan van de Ven <arjanv@redhat.com>
Cc: Thibaut Laurent <thibaut@celestix.com>, linux-kernel@vger.kernel.org
Subject: Re: PROBLEM: [2.4.6] kernel BUG at softirq.c:206!
Date: Thu, 5 Jul 2001 18:15:44 +0200	[thread overview]
Message-ID: <20010705181544.Y17051@athlon.random> (raw)
In-Reply-To: <20010704232816.B590@marvin.mahowi.de> <20010705162035.Q17051@athlon.random> <3B447B6D.C83E5FB9@redhat.com> <20010705164046.S17051@athlon.random> <20010705233200.7ead91d5.thibaut@celestix.com> <20010705114633.A1787@devserv.devel.redhat.com>
In-Reply-To: <20010705114633.A1787@devserv.devel.redhat.com>; from arjanv@redhat.com on Thu, Jul 05, 2001 at 11:46:33AM -0400

On Thu, Jul 05, 2001 at 11:46:33AM -0400, Arjan van de Ven wrote:
> On Thu, Jul 05, 2001 at 11:32:00PM +0800, Thibaut Laurent wrote:
> > And the winner is... Andrea. Kudos to you, I've just applied these patches,
> > recompiled and it seems to work fine.
> > Too bad, this was the perfect excuse for getting rid of those good old Cyrix
> > boxen ;)
> 
> As Andrea's patches don't actually fix anything Cyrix related it's obvious
> that they just avoid the real bug instead of fixing it.
> It's a very useful datapoint though.

I repeat an hardware issue cannot cause that BUG(), I assume you are
worried about the software device driver. The softirq stuff in mainline
is pretty broken, to make an example think if atomic_read(&t->count) is
> 0 and another cpu enables the tasklet before the tasklet_unlock but
after the test_bit(TASKLET_STATE_SCHED), the following
test_bit(TASKLET_STATE_SCHED) will trigger but tasklet_hi_schedule won't
do anything because TASKLET_STATE_SCHED is just set and you will break
badly if you don't use my patches. The new code breaks the invariant
that when irq are locally enabled and the TASKLET_STATE_SCHED is set the
tasklet is guaranteed to be just queued and that can have side effects,
possibly the BUG() you are seeing, I didn't checked the new code too
closely because I simply don't agree with the "infinite loop into atomic
context" design, ksoftirqd solves the latency bugs just fine without
losing robusteness that way.

But of course if the driver has all the power to be able to be the buggy
piece of code, in that case I will be more than willing to add some
BUG() to my variant of the softirq handling to trigger it too. But at
the moment it is not obvious to me this is not a bug in the softirq
code.

Andrea

  parent reply	other threads:[~2001-07-05 16:16 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-07-04 21:28 PROBLEM: [2.4.6] kernel BUG at softirq.c:206! Manfred H. Winter
2001-07-05  7:46 ` Mircea Damian
2001-07-05 11:18   ` Alan Cox
2001-07-05 12:10     ` Bob_Tracy
2001-07-05 13:04     ` Mircea Damian
2001-07-05 14:15     ` Manfred H. Winter
2001-07-05 10:52 ` Thibaut Laurent
2001-07-05 13:00   ` Mircea Damian
2001-07-05 11:04 ` Manfred H. Winter
2001-07-05 14:20 ` Andrea Arcangeli
2001-07-05 14:30   ` Alan Cox
2001-07-05 14:36   ` Arjan van de Ven
2001-07-05 14:40     ` Andrea Arcangeli
2001-07-05 15:32     ` Thibaut Laurent
2001-07-05 15:46       ` Arjan van de Ven
2001-07-05 15:56         ` Andrew Morton
2001-07-05 16:04           ` Alan Cox
2001-07-05 16:11             ` Andrew Morton
2001-07-05 16:15         ` Andrea Arcangeli [this message]
2001-07-05 22:40           ` Bob_Tracy
2001-07-06  3:42             ` Andrew Morton
2001-07-06 10:58         ` Manfred H. Winter
2001-07-06 12:43       ` Andrea Arcangeli
2001-07-06 14:18       ` Thibaut Laurent
2001-07-06 15:02         ` Andrea Arcangeli
2001-07-05 15:19   ` Manfred H. Winter
2001-07-05 12:14 Bob_Tracy
2001-07-05 13:42 ` Alan Cox
2001-07-05 14:02   ` Bob_Tracy
     [not found] <E15I8gj-0002W7-00@the-village.bc.nu>
2001-07-05 13:59 ` Bob_Tracy
     [not found] <3B4450DF.82EEC851@uow.edu.au>
2001-07-05 14:28 ` Manfred H. Winter
2001-07-05 15:23   ` Andrew Morton
2001-07-05 17:31     ` Manfred H. Winter

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=20010705181544.Y17051@athlon.random \
    --to=andrea@suse.de \
    --cc=arjanv@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=thibaut@celestix.com \
    /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;
as well as URLs for NNTP newsgroup(s).