[PATCH -next] scsi: megaraid_sas: Remove unused including

2019-05-31 Thread YueHaibing
Remove including that don't need it. Signed-off-by: YueHaibing --- drivers/scsi/megaraid/megaraid_sas_debugfs.c | 1 - 1 file changed, 1 deletion(-) diff --git a/drivers/scsi/megaraid/megaraid_sas_debugfs.c b/drivers/scsi/megaraid/megaraid_sas_debugfs.c index e52837bb6807..c69760775efa 100644

Re: [PATCH RFC] hisi_sas_v3: multiqueue support

2019-05-31 Thread Ming Lei
On Fri, May 31, 2019 at 12:26:56PM +0200, Hannes Reinecke wrote: > On 5/31/19 10:46 AM, Ming Lei wrote: > > On Fri, May 31, 2019 at 10:32:04AM +0200, Hannes Reinecke wrote: > >> On 5/31/19 10:21 AM, Ming Lei wrote: > >>> On Fri, May 31, 2019 at 09:41:58AM +0200, Hannes Reinecke wrote: > (Resen

Re: [PATCH RFC] hisi_sas_v3: multiqueue support

2019-05-31 Thread Ming Lei
On Fri, May 31, 2019 at 10:42:12AM +0100, John Garry wrote: > > > > > > > > > > -static int hisi_sas_slot_index_alloc(struct hisi_hba *hisi_hba, > > > > > - struct scsi_cmnd *scsi_cmnd) > > > > > +static int hisi_sas_slot_index_alloc(struct hisi_hba *hisi_hba) > >

RE: [PATCH 19/24] aacraid: move scsi_add_host()

2019-05-31 Thread Dave.Carroll
> -Original Message- > From: linux-scsi-ow...@vger.kernel.org [mailto:linux-scsi- > ow...@vger.kernel.org] On Behalf Of Hannes Reinecke > Sent: Wednesday, May 29, 2019 7:29 AM > To: Martin K. Petersen > Cc: Christoph Hellwig ; James Bottomley > ; linux-scsi@vger.kernel.org; > Hannes Reinec

Re: [PATCH RFC] hisi_sas_v3: multiqueue support

2019-05-31 Thread John Garry
On 31/05/2019 14:18, Hannes Reinecke wrote: On 5/31/19 11:42 AM, John Garry wrote: -static int hisi_sas_slot_index_alloc(struct hisi_hba *hisi_hba, - struct scsi_cmnd *scsi_cmnd) +static int hisi_sas_slot_index_alloc(struct hisi_hba *hisi_hba) { int index; void *b

Re: [PATCH RFC] hisi_sas_v3: multiqueue support

2019-05-31 Thread Hannes Reinecke
On 5/31/19 11:42 AM, John Garry wrote: > > -static int hisi_sas_slot_index_alloc(struct hisi_hba *hisi_hba, > - struct scsi_cmnd *scsi_cmnd) > +static int hisi_sas_slot_index_alloc(struct hisi_hba *hisi_hba) >  { > int index; > void *bitmap

[V3 09/10] mpt3sas: Introduce perf_mode module parameter

2019-05-31 Thread Suganath Prabu S
1. Introduce module parameter perf_mode for only Aero/Sea generation HBAs. 2. Update IOC page1 fields according to performance mode. Below are the performance modes that can be enabled with module parameter perf_mode. 0: Balanced - Few high iops reply queues will be enabled. Interrupt coale

[V3 03/10] mpt3sas: Add flag high_iops_queues

2019-05-31 Thread Suganath Prabu S
Aero controllers supports balanced performance mode and driver enables set of high iops and low latency reply queue only if, - HBA is an AERO controller, - MSIXs vector supported by the HBA is 128, - Total CPU count in the system more than high iops queue count, - Loaded driver with default ma

[V3 07/10] mpt3sas: Affinity high iops queues IRQs to local node

2019-05-31 Thread Suganath Prabu S
High iops queues are mapped to non-managed irqs. Set affinity of non-managed irqs to local numa node. Low latency queues are mapped to managed irq. Driver reserves some reply queues (pci_alloc_irq_vectors_affinity and .pre_vectors interface is used to meet the goal) for max iops and rest of queues

[V3 10/10] mpt3sas: Update driver version to 29.100.00.00

2019-05-31 Thread Suganath Prabu S
Update driver version from 28.100.00.00 to 29.100.00.00 This is equivalent to Phase 10 OOB driver. Signed-off-by: Suganath Prabu S --- drivers/scsi/mpt3sas/mpt3sas_base.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/scsi/mpt3sas/mpt3sas_base.h b/drivers/scsi/m

[V3 05/10] mpt3sas: Use highiops queues if more in-flights

2019-05-31 Thread Suganath Prabu S
Driver will use round robin method for io submission in batches within the high iops queues when in-flight ios on the target device is more than 8. If in-flight ios per SCSI device more than 8, driver will use high iops queue else driver will use low latency reply queues. Signed-off-by: Suganath

[V3 06/10] mpt3sas:save msix index and use same while posting RD

2019-05-31 Thread Suganath Prabu S
Code refactor: In the IO submission path _base_get_msix_index is called twice, one while getting the smid; msix index is saved in msix_io filed in scsiio tracker and anther while posting the request descriptor(RD). now code refactor is done to determine msix index only while posting the request de

[V3 08/10] mpt3sas: Enable interrupt coalescing on high iops

2019-05-31 Thread Suganath Prabu S
Enable interrupt coalescing only on high iops queues when high iops queues are enabled. In ioc config page 1, offset 0x14 (ProductSpecific field) is used to determine interrupt coalescing enabled/disabled on per reply descriptor post queue group(8) basis. If 31st bit is zero then interrupt coalesc

[V3 04/10] mpt3sas: change _base_get_msix_index prototype

2019-05-31 Thread Suganath Prabu S
Code refactoring. In function _base_get_msix_index add scmd as second argument. This change is required for creating function pointer in next patch, where we introduce new function to get the msix index for high iops queues Signed-off-by: Suganath Prabu S --- drivers/scsi/mpt3sas/mpt3sas_base.c

[V3 01/10] mpt3sas: function pointers of request descriptor

2019-05-31 Thread Suganath Prabu S
This code refactoring introduces function pointers. Host uses Request Descriptors of different types for posting an entry onto a request queue. Based on controller type and capabilities, host can also use atomic descriptors other than normal descriptors. Using function pointer will avoid if-else s

[V3 02/10] mpt3sas: Add Atomic RequestDescriptor support on Aero

2019-05-31 Thread Suganath Prabu S
If the Aero HBA supports Atomic Request Descriptors, it sets the Atomic Request Descriptor Capable bit in the IOCCapabilities field of the IOCFacts Reply message. Driver uses an Atomic Request Descriptor as an alternative method for posting an entry onto a request queue. The posting of an Atomic Re

[V3 00/10] mpt3sas: Aero/Sea HBA feature addition

2019-05-31 Thread Suganath Prabu S
In this patch series we are adding below two features for Aero/Sea HBA device. Aero/Sea series HBA is PCI4.0 based controllers. 1. Add Atomic Request descriptor support: Atomic Request Descriptor is an alternative method for posting an entry onto a request queue. The posting of an Atomic Request D

Re: [PATCH RFC] hisi_sas_v3: multiqueue support

2019-05-31 Thread Hannes Reinecke
On 5/31/19 10:46 AM, Ming Lei wrote: > On Fri, May 31, 2019 at 10:32:04AM +0200, Hannes Reinecke wrote: >> On 5/31/19 10:21 AM, Ming Lei wrote: >>> On Fri, May 31, 2019 at 09:41:58AM +0200, Hannes Reinecke wrote: (Resending due to missing mailing list submission) Update v3 to support

Re: [PATCH RFC] hisi_sas_v3: multiqueue support

2019-05-31 Thread John Garry
-static int hisi_sas_slot_index_alloc(struct hisi_hba *hisi_hba, -struct scsi_cmnd *scsi_cmnd) +static int hisi_sas_slot_index_alloc(struct hisi_hba *hisi_hba) { int index; void *bitmap = hisi_hba->slot_index_tags; unsigned long flags;

Re: [PATCH RFC] hisi_sas_v3: multiqueue support

2019-05-31 Thread Ming Lei
On Fri, May 31, 2019 at 10:32:04AM +0200, Hannes Reinecke wrote: > On 5/31/19 10:21 AM, Ming Lei wrote: > > On Fri, May 31, 2019 at 09:41:58AM +0200, Hannes Reinecke wrote: > >> (Resending due to missing mailing list submission) > >> > >> Update v3 to support SCSI multiqueue. > >> > >> Signed-off-b

Re: [PATCH RFC] hisi_sas_v3: multiqueue support

2019-05-31 Thread Hannes Reinecke
On 5/31/19 10:21 AM, Ming Lei wrote: > On Fri, May 31, 2019 at 09:41:58AM +0200, Hannes Reinecke wrote: >> (Resending due to missing mailing list submission) >> >> Update v3 to support SCSI multiqueue. >> >> Signed-off-by: Hannes Reinecke >> --- >> drivers/scsi/hisi_sas/hisi_sas.h | 1 - >>

Re: [PATCH RFC] hisi_sas_v3: multiqueue support

2019-05-31 Thread Ming Lei
On Fri, May 31, 2019 at 09:41:58AM +0200, Hannes Reinecke wrote: > (Resending due to missing mailing list submission) > > Update v3 to support SCSI multiqueue. > > Signed-off-by: Hannes Reinecke > --- > drivers/scsi/hisi_sas/hisi_sas.h | 1 - > drivers/scsi/hisi_sas/hisi_sas_main.c | 45

[PATCH RFC] hisi_sas_v3: multiqueue support

2019-05-31 Thread Hannes Reinecke
(Resending due to missing mailing list submission) Update v3 to support SCSI multiqueue. Signed-off-by: Hannes Reinecke --- drivers/scsi/hisi_sas/hisi_sas.h | 1 - drivers/scsi/hisi_sas/hisi_sas_main.c | 45 +- drivers/scsi/hisi_sas/hisi_sas_v3_hw.c | 44