lkml.org 
[lkml]   [2017]   [Jan]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: Device or HBA level QD throttling creates randomness in sequetial workload
Date
On Mon, 2017-01-30 at 19:22 +0530, Kashyap Desai wrote:
> - if (atomic_inc_return(&instance->fw_outstanding) >
> - instance->host->can_queue) {
> - atomic_dec(&instance->fw_outstanding);
> - return SCSI_MLQUEUE_HOST_BUSY;
> - }
> + if (atomic_inc_return(&instance->fw_outstanding) > safe_can_queue) {
> + is_nonrot = blk_queue_nonrot(scmd->device->request_queue);
> + /* For rotational device wait for sometime to get fusion command
> from pool.
> + * This is just to reduce proactive re-queue at mid layer which is
> not
> + * sending sorted IO in SCSI.MQ mode.
> + */
> + if (!is_nonrot)
> + udelay(100);
> + }

The SCSI core does not allow to sleep inside the queuecommand() callback
function.

Bart.
\
 
 \ /
  Last update: 2017-01-30 17:31    [W:0.084 / U:0.116 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site