Re: [PATCH RFC v7 10/12] megaraid_sas: switch fusion adapters to MQ

Hannes Reinecke
2020-07-06T08:45:10Z

On 7/6/20 10:23 AM, John Garry wrote:
> On 02/07/2020 11:23, Kashyap Desai wrote:
[ .. ]
>> My understanding is
>> - This RFC + patch set from above link is required for it. I could not
>> see
>> above series is committed.
>
> It is committed and part of 5.8-rc1
>
> The latest rc should have some scheduler fixes also.
>
> I also note that there has been much churn on blk-mq tag code lately,
> and something may be broken, so I plan to verify latest rc myself soon.
>
>> Am I missing anything. ?
>
> You could also add this from Hannes (and add megaraid sas support):
>
> https://lore.kernel.org/linux-scsi/20200629072021.9864-1-hare@suse.de/T/#t
>
> That is, if it is required. I am not sure if megaraid sas uses
> "internal" commands which needs to be guarded against cpu hotplug. Nor
> would any of these commands be used during a test. For hisi_sas testing,
> I did not bother adding support, and I guess that you don't need to either.
>
Oh, it certainly uses internal commands, most notably to set up the
queue mapping :-)

The idea of the 'internal command' patchset is to let the block-layer
control _all_ tags, be it for internal or 'normal' I/O.
With that we can do away with all the tag mapping etc these drivers have
to do (cf the hpsa conversion for an example).
And only then we can safely use the blk layer busy iterators, knowing
that all tags are accounted for and a 1:1 mapping between tags and
internal hardware resources exist.
Originally I thought it would help for CPU hotplug, too, but typically
the internal commands are not bound to any specific CPU, so they
typically will not accounted for when looking at the CPU-related resources.
But that depends on the driver etc, so it's hard to give a guideline.

Cheers,

Hannes
--
Dr. Hannes Reinecke Kernel Storage Architect
hare@suse.de +49 911 74053 688
SUSE Software Solutions Germany GmbH, Maxfeldstr. 5, 90409 Nürnberg
HRB 36809 (AG Nürnberg), GF: Felix Imendörffer