[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <yq135p6q8k3.fsf@ca-mkp.ca.oracle.com>
Date: Tue, 12 Oct 2021 17:27:41 -0400
From: "Martin K. Petersen" <martin.petersen@...cle.com>
To: Dexuan Cui <decui@...rosoft.com>
Cc: "Martin K. Petersen" <martin.petersen@...cle.com>,
KY Srinivasan <kys@...rosoft.com>,
Stephen Hemminger <sthemmin@...rosoft.com>,
"wei.liu@...nel.org" <wei.liu@...nel.org>,
"jejb@...ux.ibm.com" <jejb@...ux.ibm.com>,
Haiyang Zhang <haiyangz@...rosoft.com>,
"ming.lei@...hat.com" <ming.lei@...hat.com>,
"bvanassche@....org" <bvanassche@....org>,
"john.garry@...wei.com" <john.garry@...wei.com>,
"linux-scsi@...r.kernel.org" <linux-scsi@...r.kernel.org>,
"linux-hyperv@...r.kernel.org" <linux-hyperv@...r.kernel.org>,
Long Li <longli@...rosoft.com>,
Michael Kelley <mikelley@...rosoft.com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"stable@...r.kernel.org" <stable@...r.kernel.org>
Subject: Re: [PATCH v3] scsi: core: Fix shost->cmd_per_lun calculation in
scsi_add_host_with_dma()
Dexuan,
> Regarding this patch, I'm not sure if it's a "workaround": if it's
> incorrect to set a bigger-than-SHRT_MAX scsi_driver.can_queue value,
> probably we should change scsi_driver.can_queue from "int" to "u16"?
> BTW, I guess the "cmd_per_lun" should also be "u16" rather than
> "short"?
I agree that it would be nice to get all this cleaned up. Several,
somewhat peculiar, 25-year old design choices.
cmd_per_lun has traditionally been in the ballpark of low hundreds,
can_queue typically in the low thousands. And the block layer currently
caps at ~10K. Happy to take patches fixing this up, although I am a bit
worried about how much churn it will generate.
That said, I do think that cleaning this up is somewhat orthogonal to
the issue with storvsc. I suspect that allowing a huge amount of
concurrent outstanding commands is going to be detrimental to
performance for most workloads. And from that perspective I think that
the short->int fix, while valid given the type discrepancy, is just
treating the symptom.
Therefore I consider the short->int fix a workaround. And the proper fix
involves looking closely at things are scaled in the storvsc case. Which
I have noted that Michael is working on.
--
Martin K. Petersen Oracle Linux Engineering
Powered by blists - more mailing lists