When deregistering a bus, pending device bus scan timeouts are not deleted
and pending ccb's are not necessary aborted/processed prior to the sim
potentially being destroyed. Adjust AC_LOST_DEVICE to release any pending
timeouts (and it should also restart the command queue). This may interlock
against the detaching device (e.g. UMASS) having set a flag in its softc
that causes all future commands to fail immediately. Note that we have to
also run any pending ISRs synchronously before xpt_bus_deregister() can
safely return.
When freeing a device queue, print a warning if the device queue contains
active commands. If a device queue is freed while holding active commands
all sorts of bad things can happen, including the machine locking up on
boot while waiting for CAM to finish scanning its SCSI busses.