tmscsim: remove superflous global host list
PATCH 1/1 tmscsim: remove superflous global host list
It's only used to "verify" the host pointer in the interrupt handler, which better had to be correct or else 90% of the drivers would break.
drivers/scsi/scsiiom.c +1 -9
@@ -225,7 +225,7 @@static irqreturn_t __inline__DC390_Interrupt (int irq,void *dev_id,struct pt_regs *regs) { -struct dc390_acb *pACB, *pACB2; +struct dc390_acb *pACB = (struct dc390_acb *)dev_id;struct dc390_dcb *pDCB;struct dc390_srb *pSRB;u8 sstatus=0 ;
@@ -236,14 +236,6 @@u8 dstatus;#endif - pACB = (struct dc390_acb *)dev_id; -for (pACB2 = dc390_pACB_start; (pACB2 && pACB2 != pACB); pACB2 = pACB2->pNextACB); -if (!pACB2) - { -printk ("DC390: IRQ called with foreign dev_id %p!\n" , pACB); -return IRQ_NONE ; - } - sstatus =DC390_read8 (Scsi_Status);if ( !(sstatus &INTERRUPT ) )return IRQ_NONE ;
drivers/scsi/tmscsim.c +1 -15
@@ -279,8 +279,6 @@static void dc390_updateDCB (struct dc390_acb * pACB,struct dc390_dcb * pDCB); -static struct dc390_acb * dc390_pACB_start=NULL ; -static struct dc390_acb * dc390_pACB_current =NULL ;static u32 dc390_laststatus =0 ;static u8 dc390_adapterCnt =0 ;
@@ -1202,7 +1200,7 @@static int __devinit dc390_probe_one (struct pci_dev *pdev,const struct pci_device_id *id) { -struct dc390_acb *pACB, *pACB2; +struct dc390_acb *pACB;struct Scsi_Host *shost;unsigned long io_port;int error = -ENODEV , i;
@@ -1279,18 +1277,6 @@ "tmscsim", pACB)) {printk (KERN_ERR "DC390: register IRQ error!\n" ); goto out_release_region; - } - -if (!dc390_pACB_start) { - pACB2 =NULL ; - dc390_pACB_start = pACB; - dc390_pACB_current = pACB; - pACB->pNextACB =NULL ; - }else { - pACB2 = dc390_pACB_current; - dc390_pACB_current->pNextACB = pACB; - dc390_pACB_current = pACB; - pACB->pNextACB =NULL ; }dc390_init_hw (pACB, dc390_adapterCnt);
drivers/scsi/tmscsim.h +0 -1
@@ -140,7 +140,6 @@struct dc390_acb {struct Scsi_Host *pScsiHost; -struct dc390_acb *pNextACB;u16 IOPortBase;u8 IRQLevel;u8 status;
Quoted 2 lines · Christoph Hellwig
It's only used to "verify" the host pointer in the interrupt handler, which better had to be correct or else 90% of the drivers would break.
Thanks! Looks good to me.
Guennadi
---
Guennadi Liakhovetski