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:
parent
27f09959d5
commit
28027f28e6
@ -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);
|
||||
}
|
||||
|
||||
|
@ -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. */
|
||||
|
@ -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.
|
||||
|
Loading…
Reference in New Issue
Block a user