DF-4243 / fix.diff
--- a/sys/dev/raid/dpt/dpt_scsi.c +++ b/sys/dev/raid/dpt/dpt_scsi.c @@ -779,6 +779,7 @@ dptexecuteccb(void *arg, bus_dma_segment_t *dm_segs, int nseg, int error) if (dpt_send_eata_command(dpt, &dccb->eata_ccb, dccb->eata_ccb.cp_busaddr, EATA_CMD_DMA_SEND_CP, 0, 0, 0, 0) != 0) { + callout_stop(ccb->ccb_h.timeout_ch); /* armed at :778 */ ccb->ccb_h.status = CAM_NO_HBA; /* HBA dead or just busy?? */ if (nseg != 0) bus_dmamap_unload(dpt->buffer_dmat, dccb->dmamap); |