unsigned long sl;
/*
- * SSD device without seek penalty, disable idling
+ * SSD device without seek penalty, disable idling. But only do so
+ * for devices that support queuing, otherwise we still have a problem
+ * with sync vs async workloads.
*/
- if (blk_queue_nonrot(cfqd->queue))
+ if (blk_queue_nonrot(cfqd->queue) && cfqd->hw_tag)
return;
WARN_ON(!RB_EMPTY_ROOT(&cfqq->sort_list));