On 14/08/2020 22:04, Don.Brace@xxxxxxxxxxxxx wrote: Hi Don,
I cloned your branch fromhttps://github.com/hisilicon/kernel-dev and checkout branch: origin/private-topic-blk-mq-shared-tags-rfc-v7 By themselves, the branch compiled but the driver did not load. I cherry-picked the following patches from Hannes: git://git.kernel.org/pub/scm/linux/kernel/git/hare/scsi-devel.git branch: reserved-tags.v6 6a9d1a96ea41 hpsa: move hpsa_hba_inquiry after scsi_add_host() eeb5cd1fca58 hpsa: use reserved commands confict: removal of function hpsa_get_cmd_index, non-functional issue. 7df7d8382902 hpsa: use scsi_host_busy_iter() to traverse outstanding commands 485881d6d8dc hpsa: drop refcount field from CommandList c4980ad5e5cb scsi: implement reserved command handling conflict: drivers/scsi/scsi_lib.c minor context issue adding comment, non-functional issue. 34d03fa945c0 scsi: add scsi_{get,put}_internal_cmd() helper conflict: drivers/scsi/scsi_lib.c minor context issue around scsi_get_internal_cmd when adding new comment, non-functional issue 4556e50450c8 block: add flag for internal commands 138125f74b25 scsi: hpsa: Lift {BIG_,}IOCTL_Command_struct copy{in,out} into hpsa_ioctl() cb17c1b69b17 scsi: hpsa: Don't bother with vmalloc for BIG_IOCTL_Command_struct 10100ffd5f65 scsi: hpsa: Get rid of compat_alloc_user_space() 06b43f968db5 scsi: hpsa: hpsa_ioctl(): Tidy up a bit a381637f8a6e scsi: use real inquiry data when initialising devices 6e9884aefe66 scsi: Use dummy inquiry data for the host device 77dcb92c31ae scsi: revamp host device handling After the above patches were applied, the driver loaded and I ran the following tests: insmod/rmmod reboot Ran an I/O stress test consisting of: 6 SATA HBA disks 2 SAS HBA disks 2 RAID 5 volumes using 3 SAS HDDs 2 RAID 5 volumes using 3 SAS SSDs (ioaccel enabled) 1) fio tests to raw disks. 2) mke2fs tests 3) mount 4) fio to file systems 5) umount 6) fsck And running reset tests in parallel to the above 6 tests using sg_reset I ran some performance tests to HBA and LOGICAL VOLUMES and did not find a performance regression.
ok, thanks for this info. I appreciate it.
We are also reconsidering changing smartpqi over to use host tags but in some preliminary performance tests, I found a performance regression. Note: I only used your V7 patches for smartpqi. I have not had time to determine what is causing this, but wanted to make note of this.
Thanks. Please note that we have been looking at many performances improvements since v7, and these will be included in v8, so maybe I can still include smartpqi in the v8 series and you can retest if you want.
For hpsa: With all of the patches noted above, Tested-by: Don Brace<don.brace@xxxxxxxxxxxxx> For hpsa specific patches: Reviewed-by: Don Brace<don.brace@xxxxxxxxxxxxx>
Thanks. Please also note that I want to drop the RFC tag for v8 series, so I will just have to note that we still depend on Hannes' work for hpsa. We could also change the patch, but let's see how we go.
Cheers, John