cam: remove sim callout

Nothing is using the sim callout to unfreeze the queue. Remove it to
simplify the SIM. This was introduced in the original CAM commit in 1998
but setting the CAM_SIM_REL_TIMEOUT_PENDING flag was removed in 1999 in
commit 87cfaf0e1f which reworked how bus reset worked. That work was
merged just after 3.2R was released. Remove the unused residuals.

Sponsored by:		Netflix
Reviewed by:		scottl@, mav@
Differential Revision:	https://reviews.freebsd.org/D30383
This commit is contained in:
Warner Losh 2021-05-25 09:14:32 -06:00
parent 27f09959d5
commit 28027f28e6
3 changed files with 0 additions and 12 deletions

View File

@ -126,7 +126,6 @@ cam_sim_alloc(sim_action_func sim_action, sim_poll_func sim_poll,
sim->refcount = 1;
sim->devq = queue;
sim->mtx = mtx;
callout_init(&sim->callout, 1);
return (sim);
}

View File

@ -102,8 +102,6 @@ struct cam_sim {
int max_tagged_dev_openings;
int max_dev_openings;
u_int32_t flags;
#define CAM_SIM_REL_TIMEOUT_PENDING 0x01
struct callout callout;
struct cam_devq *devq; /* Device Queue to use for this SIM */
int refcount; /* References to the SIM. */
device_t sim_dev; /* For attached peripherals. */

View File

@ -4607,15 +4607,6 @@ xpt_release_simq(struct cam_sim *sim, int run_queue)
} else
devq->send_queue.qfrozen_cnt--;
if (devq->send_queue.qfrozen_cnt == 0) {
/*
* If there is a timeout scheduled to release this
* sim queue, remove it. The queue frozen count is
* already at 0.
*/
if ((sim->flags & CAM_SIM_REL_TIMEOUT_PENDING) != 0){
callout_stop(&sim->callout);
sim->flags &= ~CAM_SIM_REL_TIMEOUT_PENDING;
}
if (run_queue) {
/*
* Now that we are unfrozen run the send queue.