lkml.org 
[lkml]   [2003]   [Dec]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: 'bad: scheduling while atomic!', preempt kernel, 2.6.1-test11, reading an apparently duff DVD-R
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.

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

\
 
 \ /
  Last update: 2005-03-22 13:59    [from the cache]
©2003-2011 Jasper Spaans. Advertise on this site