Re: 2.5.8 IDE oops (TCQ breakage?)

Jens Axboe (axboe@suse.de)
Wed, 17 Apr 2002 14:08:17 +0200


On Wed, Apr 17 2002, Martin Dalecki wrote:
> Mikael Pettersson wrote:
> >I have a 486 box which ran 2.5.7 fine, but 2.5.8 oopses during
> >boot at the BUG_ON() in drivers/ide/ide-disk.c, line 360:
> >
> > if (drive->using_tcq) {
> > int tag = ide_get_tag(drive);
> >
> > BUG_ON(drive->tcq->active_tag != -1);
>
> OK it could be that the tca goesn't get allocated if there
> was no chipset selected. Lets have a look...

Add a drive->using_dma check to ide_dma_queued_on in ide-tcq.c, it needs
to look like this:

ide_tcq_dmaproc()
{

...

case ide_dma_queued_off:
enable_tcq = 0;
case ide_dma_queued_on:
if (!drive->using_dma)
return 1;
return ide_enable_queued(drive, enable_tcq);
default:
break;
}

that should fix it.

-- 
Jens Axboe

- 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/