From: Jeff Garzik <jgarzik@pobox.com>
To: Linus Torvalds <torvalds@osdl.org>
Cc: Toad <toad@amphibian.dyndns.org>, linux-kernel@vger.kernel.org
Subject: Re: 'bad: scheduling while atomic!', preempt kernel, 2.6.1-test11, reading an apparently duff DVD-R
Date: Mon, 15 Dec 2003 10:54:11 -0500 [thread overview]
Message-ID: <3FDDD923.30509@pobox.com> (raw)
In-Reply-To: <Pine.LNX.4.58.0312150715410.1488@home.osdl.org>
Linus Torvalds wrote:
>
> On Mon, 15 Dec 2003, Toad wrote:
>
>>I got the following when trying to mount a particular DVD-R on Linux
>>2.6.0-test11, using an IDE DVD-RW drive, using SCSI emulation, with the
>>preempt kernel option enabled, and taskfile I/O:
>>(the middle bit was repeated several times):
>
>
> ide-scsi does
>
> spin_lock_irqsave(&ide_lock, flags);
> while (HWGROUP(drive)->handler) {
> HWGROUP(drive)->handler = NULL;
> schedule_timeout(1);
> }
>
> which is obvious crap. Scheduling while holding a spinlock is not a good
> idea.
>
> You could try dropping the lock over the schedule and re-aquire it
> afterwards, but the comment tries to say that it is required for avoiding
> new requests.
>
> This is why ide-scsi needs a maintainer, btw - somebody who cares about
> it, and actually tries to resolve the current mess.
Pardon me for asking a dumb and possibly impertinent question, but why
keep it around at all?
In 2.6 it just seems like it's causing more problems than it's worth. I
mean, replacing ide-scsi with a simple 4-line driver would suffice...
int init_module(void)
{
printk(KERN_INFO "fix your app to use SG_IO\n");
}
Since the major app, cdrecord, has already been fixed, that just leaves
a few IMO minor apps out there that (a) should be using SG IO and (b)
are depending on an unmaintained and perpetually broken driver anyway.
Jeff
P.S. Yes, libata will probably (not definite) use the SCSI layer to
drive ATAPI devices... but that's a long way off, and will not be using
the ide-scsi code. ide-scsi is basically a glue driver specifically for
drivers/ide.
next prev parent reply other threads:[~2003-12-15 15:54 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-12-15 13:58 'bad: scheduling while atomic!', preempt kernel, 2.6.1-test11, reading an apparently duff DVD-R Toad
2003-12-15 15:20 ` Linus Torvalds
2003-12-15 15:54 ` Jeff Garzik [this message]
2003-12-15 17:49 ` Toad
2003-12-15 17:54 ` David T Hollis
2003-12-15 17:57 ` grundig
2003-12-15 17:59 ` Jeff Garzik
2003-12-16 8:00 ` Martin Schlemmer
2003-12-15 18:22 ` Linus Torvalds
2003-12-16 22:34 ` bill davidsen
2003-12-15 15:46 ` Toad
2003-12-15 18:52 ` Linus Torvalds
2003-12-15 18:46 ` Linus Torvalds
2003-12-15 19:13 ` Jens Axboe
2003-12-15 19:52 ` Linus Torvalds
2003-12-15 20:04 ` Jens Axboe
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=3FDDD923.30509@pobox.com \
--to=jgarzik@pobox.com \
--cc=linux-kernel@vger.kernel.org \
--cc=toad@amphibian.dyndns.org \
--cc=torvalds@osdl.org \
/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