On Wed, Apr 17 2002, Jens Axboe wrote: > 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. Should only be done if 'enable_tcq == 1' of course, and we also need to switch off tcq when dma is being disabled. 4th patch set against 2.5.8. Note to Martin: I'll merge with IDE-XX later today. -- Jens Axboe