• J
    scsi: lpfc: Correct target queue depth application changes · f91bc594
    James Smart 提交于
    The max_scsicmpl_time parameter can be used to perform scsi cmd queue
    depth mgmt based on io completion time: the queue depth is reduced to
    make completion time shorter. However, as soon as an io completes and
    the completion time is within limits, the code immediately bumps the
    queue depth limit back up to the target queue depth. Thus the procedure
    restarts, effectively limiting the usefulness of adjusting queue depth
    to help completion time.
    
    This patch makes the following changes:
    
     - Removes the code at io completion that resets the queue depth as soon
       as within limits.
    
     - As the code removed was where the target queue depth was first
       applied, change target queue depth application so that it occurs when
       the parameter is changed.
    
     - Makes target queue depth a standard parameter: both a module
       parameter and a sysfs parameter.
    
     - Optimizes the command pending count by using atomics rather than
       locks.
    
     - Updates the debugfs nodelist stats to allow better debugging of
       pending command counts.
    Signed-off-by: NDick Kennedy <dick.kennedy@broadcom.com>
    Signed-off-by: NJames Smart <james.smart@broadcom.com>
    Reviewed-by: NHannes Reinecke <hare@suse.com>
    Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
    f91bc594
lpfc_debugfs.c 170.2 KB