On 10/08/2020 17:38, Kashyap Desai wrote:
Functional Test -
I cover overnight IO testing using <fio> script which sends 4K rand read,
read, rand write and write IOs to the 24 SAS JBOD drives.
Some of the JBOD has ioscheduler=none and some of the JBOD has
ioscheduler=mq-deadline
I used additional script which change sdev->queue_depth of each device
from 2 to 16 range at the interval of 5 seconds.
I used additional script which toggle "rq_affinity=1" and "rq_affinity=2"
at the interval of 5 seconds.
I did not noticed any IO hang.
Thanks, Kashyap
Nice work. I think v8 series can now be prepared, since this final
performance issue reported looks resolved. But I still don't know what's
going on for "[PATCHv6 00/21] scsi: enable reserved commands for LLDDs",
which current hpsa patch relies on for basic functionality :(
From 06993ddf5c5dbe0e772cc38342919eb61a57bc50 Mon Sep 17 00:00:00
2001
From: Ming Lei<ming.lei@xxxxxxxxxx>
Date: Wed, 5 Aug 2020 16:35:53 +0800
Subject: [PATCH] scsi: core: only re-run queue in scsi_end_request() if
device
queue is busy
Ming, I assume that you will send this directly to SCSI maintainers when
the merge window closes.
Now the request queue is run in scsi_end_request() unconditionally if
both
target queue and host queue is ready. We should have re-run request
queue
only after this device queue becomes busy for restarting this LUN only.
Recently Long Li reported that cost of run queue may be very heavy in
case of
high queue depth. So improve this situation by only running the request
queue
when this LUN is busy.