Print this page
XXXX introduce drv_sectohz

*** 5706,5716 **** /* HBA is no longer responsible for nodes on the barrier list. */ scsi_hba_barrier_tran_tgt_free(probe); nb = kmem_alloc(sizeof (struct scsi_hba_barrier), KM_SLEEP); mutex_enter(&scsi_hba_barrier_mutex); ! endtime = ddi_get_lbolt() + drv_usectohz(seconds * MICROSEC); for (bp = &scsi_hba_barrier_list; (b = *bp) != NULL; bp = &b->barrier_next) if (b->barrier_endtime > endtime) break; nb->barrier_next = *bp; --- 5706,5716 ---- /* HBA is no longer responsible for nodes on the barrier list. */ scsi_hba_barrier_tran_tgt_free(probe); nb = kmem_alloc(sizeof (struct scsi_hba_barrier), KM_SLEEP); mutex_enter(&scsi_hba_barrier_mutex); ! endtime = ddi_get_lbolt() + drv_sectohz(seconds); for (bp = &scsi_hba_barrier_list; (b = *bp) != NULL; bp = &b->barrier_next) if (b->barrier_endtime > endtime) break; nb->barrier_next = *bp;
*** 6209,6219 **** */ scsi_hba_devi_exit(self, *circp); mutex_enter(&DEVI(self)->devi_lock); (void) cv_timedwait(&DEVI(self)->devi_cv, &DEVI(self)->devi_lock, ! ddi_get_lbolt() + drv_usectohz(MICROSEC)); mutex_exit(&DEVI(self)->devi_lock); scsi_hba_devi_enter(self, circp); } ASSERT(probe == NULL); --- 6209,6219 ---- */ scsi_hba_devi_exit(self, *circp); mutex_enter(&DEVI(self)->devi_lock); (void) cv_timedwait(&DEVI(self)->devi_cv, &DEVI(self)->devi_lock, ! ddi_get_lbolt() + drv_sectohz(1)); mutex_exit(&DEVI(self)->devi_lock); scsi_hba_devi_enter(self, circp); } ASSERT(probe == NULL);