On Mon, Oct 12, 2015 at 02:08:04PM -0600, Jens Axboe wrote: >> No that's definitely fine with me, imho most error handling callbacks >> should be in process context for ease of use in the driver. > > Took a closer look. The patch looks incomplete. The hot path for blk-mq is > blk_add_timer(), looks like you left that one alone in the conversion? Oh, damn. I had that part in my initial version that also crudely converted the old request code and dropped a bit too much. That should defintively do the queue_deayed_work. > Might be easier to just leave the timer alone, and if it actually fires > _and_ we have to do something, punt to a workqueue instead of invoking the > timeout handler directly. queue_delayed_work just assigns two additional fields, then sets timer->experies and does an add_timer. So it's the generic implementation of your above scheme. I'd much rather use the generic version if possible instead of trying to recreate it. -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html