On Jan 11, 2008 7:16 AM, James Bottomley <James.Bottomley@xxxxxxxxxxxxxxxxxxxxx> wrote: > > On Fri, 2008-01-04 at 02:18 +0200, Filippos Papadopoulos wrote: > > First of all let me wish a happy new year. > > I come back from the vacations and i compiled the initio driver with > > > > #define DEBUG_INTERRUPT 1 > > #define DEBUG_QUEUE 1 > > #define DEBUG_STATE 1 > > #define INT_DISC 1 > > > > I used the sources from 2.6.24-rc6-git9 kernel. At kernel boot time the initio > > driver prints the following: > > > > " scsi: Initio INI-9X00U/UW SCSI device driver > > Find scb at c0c00000 > > Append pend scb c0c00000;" > > > > After 3 seconds the whole system freezes there and i have to reboot. > > > > > > > > P.S here is the info from 'lspci -vv' running 2.6.16.13 kernel: > > > > "00:08.0 SCSI storage controller: Initio Corporation 360P (rev 02) > > Subsystem: Unknown device 9292:0202 > > Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- > > ParErr- Stepping- SERR- FastB2B- > > Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium > > >TAbort- <TAbort- <MAbort- >SERR- <PERR- > > Latency: 32, Cache Line Size 08 > > Interrupt: pin A routed to IRQ 11 > > Region 0: I/O ports at d000 [size=256] > > This proves the BAR0 to be non zero, but I also take it from your report > that the > > initio: I/O port range 0x0 is busy. > > message is also gone? > I havent reported "initio: I/O port range 0x0 is busy." > > Region 1: Memory at ef000000 (32-bit, non-prefetchable) [size=4K] > > [virtual] Expansion ROM at 50000000 [disabled] [size=128K] > > " > > I think there's still one remaining bug from the sg_list conversion, > namely that cblk->sglen is never set, but it is used to count the number > of elements in the sg array. Could you try this patch (on top of > everything else) and see if the problem is finally fixed? > I applied the patch on 2.6.24-rc6-git9 but unfortunatelly same thing happens. > Thanks, > > James > > --- > diff --git a/drivers/scsi/initio.c b/drivers/scsi/initio.c > index 01bf018..d038459 100644 > --- a/drivers/scsi/initio.c > +++ b/drivers/scsi/initio.c > @@ -2603,6 +2603,7 @@ static void initio_build_scb(struct initio_host * host, struct scsi_ctrl_blk * c > nseg = scsi_dma_map(cmnd); > BUG_ON(nseg < 0); > if (nseg) { > + cblk->sglen = nseg; > dma_addr = dma_map_single(&host->pci_dev->dev, &cblk->sglist[0], > sizeof(struct sg_entry) * TOTAL_SG_ENTRY, > DMA_BIDIRECTIONAL); > > > - To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html