diff options
| author | Scott Long <scottl@FreeBSD.org> | 2013-09-25 17:16:21 +0000 |
|---|---|---|
| committer | Scott Long <scottl@FreeBSD.org> | 2013-09-25 17:16:21 +0000 |
| commit | eb8a7632ba2a674b697cfedeba54ccb941a446b9 (patch) | |
| tree | ebaa28f9cc2c11e9c0022f0db7fff2cc3e92b88c /sys/dev/hptrr | |
| parent | f564de00f794fb33bf22a8c4fba818a8bee8a71e (diff) | |
Notes
Diffstat (limited to 'sys/dev/hptrr')
| -rw-r--r-- | sys/dev/hptrr/hptrr_osm_bsd.c | 5 | ||||
| -rw-r--r-- | sys/dev/hptrr/os_bsd.h | 1 |
2 files changed, 4 insertions, 2 deletions
diff --git a/sys/dev/hptrr/hptrr_osm_bsd.c b/sys/dev/hptrr/hptrr_osm_bsd.c index 9af256e0d9e8..3d83de60477b 100644 --- a/sys/dev/hptrr/hptrr_osm_bsd.c +++ b/sys/dev/hptrr/hptrr_osm_bsd.c @@ -440,7 +440,7 @@ static void os_cmddone(PCOMMAND pCmd) KdPrint(("os_cmddone(%p, %d)", pCmd, pCmd->Result)); - untimeout(hpt_timeout, pCmd, ccb->ccb_h.timeout_ch); + untimeout(hpt_timeout, pCmd, ext->timeout_ch); switch(pCmd->Result) { case RETURN_SUCCESS: @@ -519,7 +519,7 @@ static void hpt_io_dmamap_callback(void *arg, bus_dma_segment_t *segs, int nsegs BUS_DMASYNC_PREWRITE); } } - ext->ccb->ccb_h.timeout_ch = timeout(hpt_timeout, pCmd, HPT_OSM_TIMEOUT); + ext->timeout_ch = timeout(hpt_timeout, pCmd, HPT_OSM_TIMEOUT); ldm_queue_cmd(pCmd); } @@ -1058,6 +1058,7 @@ static void hpt_final_init(void *dummy) os_printk("Can't create dma map(%d)", i); return ; } + callout_handle_init(&ext->timeout_ch); } if ((devq = cam_simq_alloc(os_max_queue_comm)) == NULL) { diff --git a/sys/dev/hptrr/os_bsd.h b/sys/dev/hptrr/os_bsd.h index ec221f39b90a..1c6760e8edaa 100644 --- a/sys/dev/hptrr/os_bsd.h +++ b/sys/dev/hptrr/os_bsd.h @@ -174,6 +174,7 @@ typedef struct _os_cmdext { struct _os_cmdext *next; union ccb *ccb; bus_dmamap_t dma_map; + struct callout_handle timeout_ch; SG psg[os_max_sg_descriptors]; } OS_CMDEXT, *POS_CMDEXT; |
