Marc Schiffbauer wrote: > >>EIP; e0a7b3a7 <[aic7xxx]ahc_match_scb+17/c0> <===== > Trace; e0a7b79d <[aic7xxx]ahc_search_qinfifo+14d/6b0> > Trace; e0a7c226 <[aic7xxx]ahc_abort_scbs+66/300> > Trace; c0234ce3 <__delay+13/30> > Trace; e0a7c81d <[aic7xxx]ahc_reset_channel+25d/370> > Trace; e0a70990 <[aic7xxx]ahc_linux_isr+0/270> > Trace; e0a812a9 <[aic7xxx].rodata.start+c89/157c> > Trace; e0a7dca7 <[aic7xxx]ahc_pci_config+497/4b0> > Trace; c0230000 <rpc_new_task+f0/170> > Trace; e0a6f93e <[aic7xxx]ahc_linux_initialize_scsi_bus+3e/1d0> > Trace; e0a78855 <[aic7xxx]ahc_set_name+15/30> I'm curious what happens with the attached patch? It adds some debugging checks which will halt your kernel with "BUG! at <file>:line"... -- Jeff Garzik | Disbelief, that's why you fail. Building 1024 | MandrakeSoft |
Index: linux_2_4/drivers/scsi/aic7xxx/aic7xxx.c diff -u linux_2_4/drivers/scsi/aic7xxx/aic7xxx.c:1.1.1.26 linux_2_4/drivers/scsi/aic7xxx/aic7xxx.c:1.1.1.26.36.1 --- linux_2_4/drivers/scsi/aic7xxx/aic7xxx.c:1.1.1.26 Tue May 8 21:50:17 2001 +++ linux_2_4/drivers/scsi/aic7xxx/aic7xxx.c Sat May 26 19:35:04 2001 @@ -4837,6 +4837,10 @@ #if AHC_TARGET_MODE int group; + if (!scb->io_ctx) + BUG(); + if (!scb->hscb) + BUG(); group = XPT_FC_GROUP(scb->io_ctx->ccb_h.func_code); if (role == ROLE_INITIATOR) { match = (group != XPT_FC_GROUP_TMODE) @@ -4848,6 +4852,8 @@ || (tag == SCB_LIST_NULL)); } #else /* !AHC_TARGET_MODE */ + if (!scb->hscb) + BUG(); match = ((tag == scb->hscb->tag) || (tag == SCB_LIST_NULL)); #endif /* AHC_TARGET_MODE */ }