All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sreekanth Reddy <sreekanth.reddy@avagotech.com>
To: Johannes Thumshirn <jthumshirn@suse.de>
Cc: "jejb@kernel.org" <jejb@kernel.org>,
	Christoph Hellwig <hch@infradead.org>,
	"Martin K. Petersen" <martin.petersen@oracle.com>,
	"linux-scsi@vger.kernel.org" <linux-scsi@vger.kernel.org>,
	"James E.J. Bottomley" <JBottomley@parallels.com>,
	Sathya Prakash <Sathya.Prakash@avagotech.com>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH 01/20] [SCSI] mpt3sas: Added Combined Reply Queue feature to extend up-to 96 MSIX vector support
Date: Thu, 18 Jun 2015 15:27:26 +0530	[thread overview]
Message-ID: <CAK=zhgpqRNE00ygoC3J-QKJwUPeYW=2j0TAcz4Q0t3ie7uSfOw@mail.gmail.com> (raw)
In-Reply-To: <CAK=zhgqDYpNQvUVmjMDxhVrGWBw6zzidewPg3fe1cUSdpRnjqw@mail.gmail.com>

Hi,

Any other review comments on this patch. please let us known if any
changes are required.

Thanks,
Sreekanth

On Fri, Jun 12, 2015 at 4:46 PM, Sreekanth Reddy
<sreekanth.reddy@avagotech.com> wrote:
> Thanks Johannes, we will take care of this point in our current
> on-development mpt2sas/mpt3sas merging activity.
>
>
> Thanks,
> Sreekanth
>
> On Fri, Jun 12, 2015 at 4:39 PM, Johannes Thumshirn <jthumshirn@suse.de> wrote:
>> On Fri, Jun 12, 2015 at 03:12:13PM +0530, Sreekanth Reddy wrote:
>>> In this patch, increased the number of MSIX vector support for SAS3 C0 HBAs to up-to 96.
>>>
>>> Following are changes that are done in this patch
>>> 1. Support this feature only for SAS3 C0 cards and also only when reply post free queue count is greater than 8.
>>> 2. Instead of using single ReplyPostHostIndex system interface, here 12 ReplyPostHostIndex system interfaces are used. reply post free queues numbered from 0 to 7 use the first ReplyPostHostIndex system interface to update its corresponding ReplyPostHostIndex values, reply post free queues numbered from 8 to 15 will use the second ReplyPostHostIndex system interface and so on. These 12 ReplyPostHostIndex system interfaces address are saved in the array replyPostRegisterIndex[].
>>> 3. Update the ReplyPostHostIndex value of corresponding reply post free queue in the (its msix_index/8)th entry of replyPostRegisterIndex[] array after processing the reply post descriptor.
>>>
>>> Signed-off-by: Sreekanth Reddy <Sreekanth.Reddy@avagotech.com>
>>> ---
>>>  drivers/scsi/mpt3sas/mpt3sas_base.c | 70 +++++++++++++++++++++++++++++++++----
>>>  drivers/scsi/mpt3sas/mpt3sas_base.h |  7 +++-
>>>  2 files changed, 69 insertions(+), 8 deletions(-)
>>>
>>> diff --git a/drivers/scsi/mpt3sas/mpt3sas_base.c b/drivers/scsi/mpt3sas/mpt3sas_base.c
>>> index 14a781b..c13a365 100644
>>> --- a/drivers/scsi/mpt3sas/mpt3sas_base.c
>>> +++ b/drivers/scsi/mpt3sas/mpt3sas_base.c
>>> @@ -83,7 +83,7 @@ static int msix_disable = -1;
>>>  module_param(msix_disable, int, 0);
>>>  MODULE_PARM_DESC(msix_disable, " disable msix routed interrupts (default=0)");
>>>
>>> -static int max_msix_vectors = 8;
>>> +static int max_msix_vectors = -1;
>>>  module_param(max_msix_vectors, int, 0);
>>>  MODULE_PARM_DESC(max_msix_vectors,
>>>       " max msix vectors - (default=8)");
>>
>> When changing the default value, please also update the description reflecting
>> this change.
>>
>>> @@ -1009,8 +1009,15 @@ _base_interrupt(int irq, void *bus_id)
>>>       }
>>>
>>>       wmb();
>>> -     writel(reply_q->reply_post_host_index | (msix_index <<
>>> -         MPI2_RPHI_MSIX_INDEX_SHIFT), &ioc->chip->ReplyPostHostIndex);
>>> +     if (ioc->msix96_vector) {
>>> +             writel(reply_q->reply_post_host_index | ((msix_index  & 7) <<
>>> +                     MPI2_RPHI_MSIX_INDEX_SHIFT),
>>> +                             ioc->replyPostRegisterIndex[msix_index/8]);
>>> +     } else {
>>> +             writel(reply_q->reply_post_host_index | (msix_index <<
>>> +                     MPI2_RPHI_MSIX_INDEX_SHIFT),
>>> +                             &ioc->chip->ReplyPostHostIndex);
>>> +     }
>>>       atomic_dec(&reply_q->busy);
>>>       return IRQ_HANDLED;
>>>  }
>>> @@ -1560,8 +1567,6 @@ _base_check_enable_msix(struct MPT3SAS_ADAPTER *ioc)
>>>
>>>       pci_read_config_word(ioc->pdev, base + 2, &message_control);
>>>       ioc->msix_vector_count = (message_control & 0x3FF) + 1;
>>> -     if (ioc->msix_vector_count > 8)
>>> -             ioc->msix_vector_count = 8;
>>>       dinitprintk(ioc, pr_info(MPT3SAS_FMT
>>>               "msix is supported, vector_count(%d)\n",
>>>               ioc->name, ioc->msix_vector_count));
>>> @@ -1880,6 +1885,31 @@ mpt3sas_base_map_resources(struct MPT3SAS_ADAPTER *ioc)
>>>       if (r)
>>>               goto out_fail;
>>>
>>> +     /* Use the Combined reply queue feature only for SAS3 C0 HBAs and
>>> +      * also only when reply queue count is greater than 8
>>> +      */
>>> +     if (ioc->msix96_vector && ioc->reply_queue_count > 8) {
>>> +             /* If this is an 96 vector supported device,
>>> +             set up ReplyPostIndex addresses */
>>> +             ioc->replyPostRegisterIndex = kcalloc(12,
>>> +                     sizeof(resource_size_t *), GFP_KERNEL);
>>> +             if (!ioc->replyPostRegisterIndex) {
>>> +                     dfailprintk(ioc, printk(MPT3SAS_FMT
>>> +                     "allocation for reply Post Register Index failed!!!\n",
>>> +                                                                ioc->name));
>>> +                     r = -ENOMEM;
>>> +                     goto out_fail;
>>> +             }
>>> +
>>> +             for (i = 0; i < 12; i++) {
>>> +                     ioc->replyPostRegisterIndex[i] = (resource_size_t *)
>>> +                             ((u8 *)&ioc->chip->Doorbell +
>>> +                             MPI25_SUP_REPLY_POST_HOST_INDEX_OFFSET +
>>> +                             (i * 0x10));
>>> +             }
>>> +     } else
>>> +             ioc->msix96_vector = 0;
>>> +
>>>       list_for_each_entry(reply_q, &ioc->reply_queue_list, list)
>>>               pr_info(MPT3SAS_FMT "%s: IRQ %d\n",
>>>                   reply_q->name,  ((ioc->msix_enable) ? "PCI-MSI-X enabled" :
>>> @@ -1901,6 +1931,8 @@ mpt3sas_base_map_resources(struct MPT3SAS_ADAPTER *ioc)
>>>       pci_release_selected_regions(ioc->pdev, ioc->bars);
>>>       pci_disable_pcie_error_reporting(pdev);
>>>       pci_disable_device(pdev);
>>> +     if (ioc->msix96_vector)
>>> +             kfree(ioc->replyPostRegisterIndex);
>>>       return r;
>>>  }
>>>
>>> @@ -4522,8 +4554,16 @@ _base_make_ioc_operational(struct MPT3SAS_ADAPTER *ioc, int sleep_flag)
>>>
>>>       /* initialize reply post host index */
>>>       list_for_each_entry(reply_q, &ioc->reply_queue_list, list) {
>>> -             writel(reply_q->msix_index << MPI2_RPHI_MSIX_INDEX_SHIFT,
>>> -                 &ioc->chip->ReplyPostHostIndex);
>>> +             if (ioc->msix96_vector) {
>>> +                     writel((reply_q->msix_index & 7)<<
>>> +                        MPI2_RPHI_MSIX_INDEX_SHIFT,
>>> +                        ioc->replyPostRegisterIndex[reply_q->msix_index/8]);
>>> +             } else {
>>> +                     writel(reply_q->msix_index <<
>>> +                             MPI2_RPHI_MSIX_INDEX_SHIFT,
>>> +                                     &ioc->chip->ReplyPostHostIndex);
>>> +             }
>>> +
>>>               if (!_base_is_controller_msix_enabled(ioc))
>>>                       goto skip_init_reply_post_host_index;
>>>       }
>>> @@ -4577,6 +4617,9 @@ mpt3sas_base_free_resources(struct MPT3SAS_ADAPTER *ioc)
>>>       _base_free_irq(ioc);
>>>       _base_disable_msix(ioc);
>>>
>>> +     if (ioc->msix96_vector)
>>> +             kfree(ioc->replyPostRegisterIndex);
>>> +
>>>       if (ioc->chip_phys && ioc->chip)
>>>               iounmap(ioc->chip);
>>>       ioc->chip_phys = 0;
>>> @@ -4600,6 +4643,7 @@ mpt3sas_base_attach(struct MPT3SAS_ADAPTER *ioc)
>>>  {
>>>       int r, i;
>>>       int cpu_id, last_cpu_id = 0;
>>> +     u8 revision;
>>>
>>>       dinitprintk(ioc, pr_info(MPT3SAS_FMT "%s\n", ioc->name,
>>>           __func__));
>>> @@ -4618,6 +4662,18 @@ mpt3sas_base_attach(struct MPT3SAS_ADAPTER *ioc)
>>>               r = -ENOMEM;
>>>               goto out_free_resources;
>>>       }
>>> +     /* Check whether the controller revision is C0 or above.
>>> +         C0 and above revision controllers support 96 vectors */
>>> +     revision = ioc->pdev->revision;
>>> +
>>> +     if ((ioc->pdev->device == MPI25_MFGPAGE_DEVID_SAS3004 ||
>>> +          ioc->pdev->device == MPI25_MFGPAGE_DEVID_SAS3008 ||
>>> +          ioc->pdev->device == MPI25_MFGPAGE_DEVID_SAS3108_1 ||
>>> +          ioc->pdev->device == MPI25_MFGPAGE_DEVID_SAS3108_2 ||
>>> +          ioc->pdev->device == MPI25_MFGPAGE_DEVID_SAS3108_5 ||
>>> +          ioc->pdev->device == MPI25_MFGPAGE_DEVID_SAS3108_6) &&
>>> +          (revision >= 0x02))
>>> +             ioc->msix96_vector = 1;
>>>
>>>       ioc->rdpq_array_enable_assigned = 0;
>>>       ioc->dma_mask = 0;
>>> diff --git a/drivers/scsi/mpt3sas/mpt3sas_base.h b/drivers/scsi/mpt3sas/mpt3sas_base.h
>>> index afa8816..6b8d8f1 100644
>>> --- a/drivers/scsi/mpt3sas/mpt3sas_base.h
>>> +++ b/drivers/scsi/mpt3sas/mpt3sas_base.h
>>> @@ -728,7 +728,8 @@ typedef void (*MPT3SAS_FLUSH_RUNNING_CMDS)(struct MPT3SAS_ADAPTER *ioc);
>>>   *                           is assigned only ones
>>>   * @reply_queue_count: number of reply queue's
>>>   * @reply_queue_list: link list contaning the reply queue info
>>> - * @reply_post_host_index: head index in the pool where FW completes IO
>>> + * @msix96_vector: 96 MSI-X vector support
>>> + * @replyPostRegisterIndex: index of next position in Reply Desc Post Queue
>>>   * @delayed_tr_list: target reset link list
>>>   * @delayed_tr_volume_list: volume target reset link list
>>>   * @@temp_sensors_count: flag to carry the number of temperature sensors
>>> @@ -937,6 +938,10 @@ struct MPT3SAS_ADAPTER {
>>>       u8              reply_queue_count;
>>>       struct list_head reply_queue_list;
>>>
>>> +     u8              msix96_vector;
>>> +     /* reply post register index */
>>> +     resource_size_t **replyPostRegisterIndex;
>>> +
>>
>> I know there are many uses of mixed-case varibles in this driver and changing
>> them when they're already in makes no sense, but maybe you could consider
>> getting rid of them in your mpt2sas/mpt3sas merge, as it is not really a
>> commonly seen pattern in the linux kernel.
>>
>>>       struct list_head delayed_tr_list;
>>>       struct list_head delayed_tr_volume_list;
>>>       u8              temp_sensors_count;
>>> --
>>> 2.0.2
>>>
>>> --
>>> To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
>>> the body of a message to majordomo@vger.kernel.org
>>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>>
>> --
>> Johannes Thumshirn                                       Storage
>> jthumshirn@suse.de                             +49 911 74053 689
>> SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg
>> GF: F. Imendörffer, J. Smithard, J. Guild, D. Upmanyu, G. Norton
>> HRB 21284 (AG Nürnberg)
>
>
>
> --
>
> Regards,
> Sreekanth



-- 

Regards,
Sreekanth

WARNING: multiple messages have this Message-ID (diff)
From: Sreekanth Reddy <sreekanth.reddy@avagotech.com>
To: Johannes Thumshirn <jthumshirn@suse.de>
Cc: "jejb@kernel.org" <jejb@kernel.org>,
	Christoph Hellwig <hch@infradead.org>,
	"Martin K. Petersen" <martin.petersen@oracle.com>,
	"linux-scsi@vger.kernel.org" <linux-scsi@vger.kernel.org>,
	"James E.J. Bottomley" <JBottomley@parallels.com>,
	Sathya Prakash <Sathya.Prakash@avagotech.com>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH 01/20] [SCSI] mpt3sas: Added Combined Reply Queue feature to extend up-to 96 MSIX vector support
Date: Thu, 18 Jun 2015 15:27:26 +0530	[thread overview]
Message-ID: <CAK=zhgpqRNE00ygoC3J-QKJwUPeYW=2j0TAcz4Q0t3ie7uSfOw@mail.gmail.com> (raw)
In-Reply-To: <CAK=zhgqDYpNQvUVmjMDxhVrGWBw6zzidewPg3fe1cUSdpRnjqw@mail.gmail.com>

Hi,

Any other review comments on this patch. please let us known if any
changes are required.

Thanks,
Sreekanth

On Fri, Jun 12, 2015 at 4:46 PM, Sreekanth Reddy
<sreekanth.reddy@avagotech.com> wrote:
> Thanks Johannes, we will take care of this point in our current
> on-development mpt2sas/mpt3sas merging activity.
>
>
> Thanks,
> Sreekanth
>
> On Fri, Jun 12, 2015 at 4:39 PM, Johannes Thumshirn <jthumshirn@suse.de> wrote:
>> On Fri, Jun 12, 2015 at 03:12:13PM +0530, Sreekanth Reddy wrote:
>>> In this patch, increased the number of MSIX vector support for SAS3 C0 HBAs to up-to 96.
>>>
>>> Following are changes that are done in this patch
>>> 1. Support this feature only for SAS3 C0 cards and also only when reply post free queue count is greater than 8.
>>> 2. Instead of using single ReplyPostHostIndex system interface, here 12 ReplyPostHostIndex system interfaces are used. reply post free queues numbered from 0 to 7 use the first ReplyPostHostIndex system interface to update its corresponding ReplyPostHostIndex values, reply post free queues numbered from 8 to 15 will use the second ReplyPostHostIndex system interface and so on. These 12 ReplyPostHostIndex system interfaces address are saved in the array replyPostRegisterIndex[].
>>> 3. Update the ReplyPostHostIndex value of corresponding reply post free queue in the (its msix_index/8)th entry of replyPostRegisterIndex[] array after processing the reply post descriptor.
>>>
>>> Signed-off-by: Sreekanth Reddy <Sreekanth.Reddy@avagotech.com>
>>> ---
>>>  drivers/scsi/mpt3sas/mpt3sas_base.c | 70 +++++++++++++++++++++++++++++++++----
>>>  drivers/scsi/mpt3sas/mpt3sas_base.h |  7 +++-
>>>  2 files changed, 69 insertions(+), 8 deletions(-)
>>>
>>> diff --git a/drivers/scsi/mpt3sas/mpt3sas_base.c b/drivers/scsi/mpt3sas/mpt3sas_base.c
>>> index 14a781b..c13a365 100644
>>> --- a/drivers/scsi/mpt3sas/mpt3sas_base.c
>>> +++ b/drivers/scsi/mpt3sas/mpt3sas_base.c
>>> @@ -83,7 +83,7 @@ static int msix_disable = -1;
>>>  module_param(msix_disable, int, 0);
>>>  MODULE_PARM_DESC(msix_disable, " disable msix routed interrupts (default=0)");
>>>
>>> -static int max_msix_vectors = 8;
>>> +static int max_msix_vectors = -1;
>>>  module_param(max_msix_vectors, int, 0);
>>>  MODULE_PARM_DESC(max_msix_vectors,
>>>       " max msix vectors - (default=8)");
>>
>> When changing the default value, please also update the description reflecting
>> this change.
>>
>>> @@ -1009,8 +1009,15 @@ _base_interrupt(int irq, void *bus_id)
>>>       }
>>>
>>>       wmb();
>>> -     writel(reply_q->reply_post_host_index | (msix_index <<
>>> -         MPI2_RPHI_MSIX_INDEX_SHIFT), &ioc->chip->ReplyPostHostIndex);
>>> +     if (ioc->msix96_vector) {
>>> +             writel(reply_q->reply_post_host_index | ((msix_index  & 7) <<
>>> +                     MPI2_RPHI_MSIX_INDEX_SHIFT),
>>> +                             ioc->replyPostRegisterIndex[msix_index/8]);
>>> +     } else {
>>> +             writel(reply_q->reply_post_host_index | (msix_index <<
>>> +                     MPI2_RPHI_MSIX_INDEX_SHIFT),
>>> +                             &ioc->chip->ReplyPostHostIndex);
>>> +     }
>>>       atomic_dec(&reply_q->busy);
>>>       return IRQ_HANDLED;
>>>  }
>>> @@ -1560,8 +1567,6 @@ _base_check_enable_msix(struct MPT3SAS_ADAPTER *ioc)
>>>
>>>       pci_read_config_word(ioc->pdev, base + 2, &message_control);
>>>       ioc->msix_vector_count = (message_control & 0x3FF) + 1;
>>> -     if (ioc->msix_vector_count > 8)
>>> -             ioc->msix_vector_count = 8;
>>>       dinitprintk(ioc, pr_info(MPT3SAS_FMT
>>>               "msix is supported, vector_count(%d)\n",
>>>               ioc->name, ioc->msix_vector_count));
>>> @@ -1880,6 +1885,31 @@ mpt3sas_base_map_resources(struct MPT3SAS_ADAPTER *ioc)
>>>       if (r)
>>>               goto out_fail;
>>>
>>> +     /* Use the Combined reply queue feature only for SAS3 C0 HBAs and
>>> +      * also only when reply queue count is greater than 8
>>> +      */
>>> +     if (ioc->msix96_vector && ioc->reply_queue_count > 8) {
>>> +             /* If this is an 96 vector supported device,
>>> +             set up ReplyPostIndex addresses */
>>> +             ioc->replyPostRegisterIndex = kcalloc(12,
>>> +                     sizeof(resource_size_t *), GFP_KERNEL);
>>> +             if (!ioc->replyPostRegisterIndex) {
>>> +                     dfailprintk(ioc, printk(MPT3SAS_FMT
>>> +                     "allocation for reply Post Register Index failed!!!\n",
>>> +                                                                ioc->name));
>>> +                     r = -ENOMEM;
>>> +                     goto out_fail;
>>> +             }
>>> +
>>> +             for (i = 0; i < 12; i++) {
>>> +                     ioc->replyPostRegisterIndex[i] = (resource_size_t *)
>>> +                             ((u8 *)&ioc->chip->Doorbell +
>>> +                             MPI25_SUP_REPLY_POST_HOST_INDEX_OFFSET +
>>> +                             (i * 0x10));
>>> +             }
>>> +     } else
>>> +             ioc->msix96_vector = 0;
>>> +
>>>       list_for_each_entry(reply_q, &ioc->reply_queue_list, list)
>>>               pr_info(MPT3SAS_FMT "%s: IRQ %d\n",
>>>                   reply_q->name,  ((ioc->msix_enable) ? "PCI-MSI-X enabled" :
>>> @@ -1901,6 +1931,8 @@ mpt3sas_base_map_resources(struct MPT3SAS_ADAPTER *ioc)
>>>       pci_release_selected_regions(ioc->pdev, ioc->bars);
>>>       pci_disable_pcie_error_reporting(pdev);
>>>       pci_disable_device(pdev);
>>> +     if (ioc->msix96_vector)
>>> +             kfree(ioc->replyPostRegisterIndex);
>>>       return r;
>>>  }
>>>
>>> @@ -4522,8 +4554,16 @@ _base_make_ioc_operational(struct MPT3SAS_ADAPTER *ioc, int sleep_flag)
>>>
>>>       /* initialize reply post host index */
>>>       list_for_each_entry(reply_q, &ioc->reply_queue_list, list) {
>>> -             writel(reply_q->msix_index << MPI2_RPHI_MSIX_INDEX_SHIFT,
>>> -                 &ioc->chip->ReplyPostHostIndex);
>>> +             if (ioc->msix96_vector) {
>>> +                     writel((reply_q->msix_index & 7)<<
>>> +                        MPI2_RPHI_MSIX_INDEX_SHIFT,
>>> +                        ioc->replyPostRegisterIndex[reply_q->msix_index/8]);
>>> +             } else {
>>> +                     writel(reply_q->msix_index <<
>>> +                             MPI2_RPHI_MSIX_INDEX_SHIFT,
>>> +                                     &ioc->chip->ReplyPostHostIndex);
>>> +             }
>>> +
>>>               if (!_base_is_controller_msix_enabled(ioc))
>>>                       goto skip_init_reply_post_host_index;
>>>       }
>>> @@ -4577,6 +4617,9 @@ mpt3sas_base_free_resources(struct MPT3SAS_ADAPTER *ioc)
>>>       _base_free_irq(ioc);
>>>       _base_disable_msix(ioc);
>>>
>>> +     if (ioc->msix96_vector)
>>> +             kfree(ioc->replyPostRegisterIndex);
>>> +
>>>       if (ioc->chip_phys && ioc->chip)
>>>               iounmap(ioc->chip);
>>>       ioc->chip_phys = 0;
>>> @@ -4600,6 +4643,7 @@ mpt3sas_base_attach(struct MPT3SAS_ADAPTER *ioc)
>>>  {
>>>       int r, i;
>>>       int cpu_id, last_cpu_id = 0;
>>> +     u8 revision;
>>>
>>>       dinitprintk(ioc, pr_info(MPT3SAS_FMT "%s\n", ioc->name,
>>>           __func__));
>>> @@ -4618,6 +4662,18 @@ mpt3sas_base_attach(struct MPT3SAS_ADAPTER *ioc)
>>>               r = -ENOMEM;
>>>               goto out_free_resources;
>>>       }
>>> +     /* Check whether the controller revision is C0 or above.
>>> +         C0 and above revision controllers support 96 vectors */
>>> +     revision = ioc->pdev->revision;
>>> +
>>> +     if ((ioc->pdev->device == MPI25_MFGPAGE_DEVID_SAS3004 ||
>>> +          ioc->pdev->device == MPI25_MFGPAGE_DEVID_SAS3008 ||
>>> +          ioc->pdev->device == MPI25_MFGPAGE_DEVID_SAS3108_1 ||
>>> +          ioc->pdev->device == MPI25_MFGPAGE_DEVID_SAS3108_2 ||
>>> +          ioc->pdev->device == MPI25_MFGPAGE_DEVID_SAS3108_5 ||
>>> +          ioc->pdev->device == MPI25_MFGPAGE_DEVID_SAS3108_6) &&
>>> +          (revision >= 0x02))
>>> +             ioc->msix96_vector = 1;
>>>
>>>       ioc->rdpq_array_enable_assigned = 0;
>>>       ioc->dma_mask = 0;
>>> diff --git a/drivers/scsi/mpt3sas/mpt3sas_base.h b/drivers/scsi/mpt3sas/mpt3sas_base.h
>>> index afa8816..6b8d8f1 100644
>>> --- a/drivers/scsi/mpt3sas/mpt3sas_base.h
>>> +++ b/drivers/scsi/mpt3sas/mpt3sas_base.h
>>> @@ -728,7 +728,8 @@ typedef void (*MPT3SAS_FLUSH_RUNNING_CMDS)(struct MPT3SAS_ADAPTER *ioc);
>>>   *                           is assigned only ones
>>>   * @reply_queue_count: number of reply queue's
>>>   * @reply_queue_list: link list contaning the reply queue info
>>> - * @reply_post_host_index: head index in the pool where FW completes IO
>>> + * @msix96_vector: 96 MSI-X vector support
>>> + * @replyPostRegisterIndex: index of next position in Reply Desc Post Queue
>>>   * @delayed_tr_list: target reset link list
>>>   * @delayed_tr_volume_list: volume target reset link list
>>>   * @@temp_sensors_count: flag to carry the number of temperature sensors
>>> @@ -937,6 +938,10 @@ struct MPT3SAS_ADAPTER {
>>>       u8              reply_queue_count;
>>>       struct list_head reply_queue_list;
>>>
>>> +     u8              msix96_vector;
>>> +     /* reply post register index */
>>> +     resource_size_t **replyPostRegisterIndex;
>>> +
>>
>> I know there are many uses of mixed-case varibles in this driver and changing
>> them when they're already in makes no sense, but maybe you could consider
>> getting rid of them in your mpt2sas/mpt3sas merge, as it is not really a
>> commonly seen pattern in the linux kernel.
>>
>>>       struct list_head delayed_tr_list;
>>>       struct list_head delayed_tr_volume_list;
>>>       u8              temp_sensors_count;
>>> --
>>> 2.0.2
>>>
>>> --
>>> To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
>>> the body of a message to majordomo@vger.kernel.org
>>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>>
>> --
>> Johannes Thumshirn                                       Storage
>> jthumshirn@suse.de                             +49 911 74053 689
>> SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg
>> GF: F. Imendörffer, J. Smithard, J. Guild, D. Upmanyu, G. Norton
>> HRB 21284 (AG Nürnberg)
>
>
>
> --
>
> Regards,
> Sreekanth



-- 

Regards,
Sreekanth
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

  reply	other threads:[~2015-06-18  9:58 UTC|newest]

Thread overview: 118+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-06-12  9:42 [PATCH 00/20] mpt3sas: driver update Sreekanth Reddy
2015-06-12  9:42 ` [PATCH 01/20] [SCSI] mpt3sas: Added Combined Reply Queue feature to extend up-to 96 MSIX vector support Sreekanth Reddy
2015-06-12 11:09   ` Johannes Thumshirn
2015-06-12 11:16     ` Sreekanth Reddy
2015-06-12 11:16       ` Sreekanth Reddy
2015-06-18  9:57       ` Sreekanth Reddy [this message]
2015-06-18  9:57         ` Sreekanth Reddy
2015-06-19  9:14         ` Johannes Thumshirn
2015-06-19  9:14           ` Johannes Thumshirn
2015-06-19  9:21           ` Sreekanth Reddy
2015-06-19  9:21             ` Sreekanth Reddy
2015-06-19  9:55             ` Johannes Thumshirn
2015-06-19  9:55               ` Johannes Thumshirn
2015-06-12  9:42 ` [PATCH 02/20] [SCSI] mpt3sas: Get IOC_FACTS information using handshake protocol only after HBA card gets into READY or Operational state Sreekanth Reddy
2015-06-16 15:59   ` Tomas Henzl
2015-06-17  9:08     ` Sreekanth Reddy
2015-06-12  9:42 ` [PATCH 03/20] [SCSI] mpt3sas: Don't block the drive when drive addition under the control of SML Sreekanth Reddy
2015-06-19 15:05   ` Martin K. Petersen
2015-06-19 15:05     ` Martin K. Petersen
2015-06-12  9:42 ` [PATCH 04/20] [SCSI] mpt3sas: Remove redundancy code while freeing the controller resources Sreekanth Reddy
2015-06-12 11:28   ` Johannes Thumshirn
2015-06-12 12:18     ` Sreekanth Reddy
2015-06-12 12:40       ` Johannes Thumshirn
2015-06-15 10:26         ` Sreekanth Reddy
2015-06-15 10:26           ` Sreekanth Reddy
2015-06-15 10:48           ` Johannes Thumshirn
2015-06-15 10:48             ` Johannes Thumshirn
2015-06-18  9:52             ` Sreekanth Reddy
2015-06-18  9:52               ` Sreekanth Reddy
2015-06-18 10:08   ` Johannes Thumshirn
2015-06-19 15:09   ` Martin K. Petersen
2015-06-19 15:09     ` Martin K. Petersen
2015-06-12  9:42 ` [PATCH 05/20] [SCSI] mpt3sas: MPI 2.5 Rev I (2.5.4) specifications Sreekanth Reddy
2015-06-15  9:51   ` Johannes Thumshirn
2015-06-19 15:10   ` Martin K. Petersen
2015-06-19 15:10     ` Martin K. Petersen
2015-06-12  9:42 ` [PATCH 06/20] [SCSI] mpt3sas: Provides the physical location of sas drives Sreekanth Reddy
2015-06-18  9:56   ` Sreekanth Reddy
2015-06-19  9:19   ` Johannes Thumshirn
2015-06-19  9:19     ` Johannes Thumshirn
2015-06-19 10:53     ` Sreekanth Reddy
2015-06-19 10:53       ` Sreekanth Reddy
2015-06-12  9:42 ` [PATCH 07/20] [SCSI] mpt3sas: Bump mpt3sas Driver version to v5.100.00.00 Sreekanth Reddy
2015-06-15  9:52   ` Johannes Thumshirn
2015-06-19 20:22   ` Martin K. Petersen
2015-06-19 20:22     ` Martin K. Petersen
2015-06-12  9:42 ` [PATCH 08/20] [SCSI] mpt3sas: Update MPI2 strings to MPI2.5 Sreekanth Reddy
2015-06-15  9:52   ` Johannes Thumshirn
2015-06-15  9:52     ` Johannes Thumshirn
2015-06-19 20:24   ` Martin K. Petersen
2015-06-19 20:24     ` Martin K. Petersen
2015-06-12  9:42 ` [PATCH 09/20] [SCSI] mpt3sas: MPI 2.5 Rev J (2.5.5) specification and 2.00.34 header files Sreekanth Reddy
2015-06-15  9:53   ` Johannes Thumshirn
2015-06-15  9:53     ` Johannes Thumshirn
2015-06-19 20:27   ` Martin K. Petersen
2015-06-19 20:27     ` Martin K. Petersen
2015-06-22 12:18     ` Sreekanth Reddy
2015-06-22 12:18       ` Sreekanth Reddy
2015-06-12  9:42 ` [PATCH 10/20] [SCSI] mpt3sas: Add branding string support for OEM's HBA Sreekanth Reddy
2015-06-15  9:46   ` Johannes Thumshirn
2015-06-15  9:46     ` Johannes Thumshirn
2015-06-15 11:11     ` Sreekanth Reddy
2015-06-15 11:11       ` Sreekanth Reddy
2015-06-15 11:53       ` Johannes Thumshirn
2015-06-15 12:00         ` Sreekanth Reddy
2015-06-18  9:51           ` Sreekanth Reddy
2015-06-18 10:09   ` Johannes Thumshirn
2015-06-18 10:09     ` Johannes Thumshirn
2015-06-19 20:30   ` Martin K. Petersen
2015-06-19 20:30     ` Martin K. Petersen
2015-06-12  9:42 ` [PATCH 11/20] [SCSI] mpt3sas: Add branding string support for OEM custom HBA Sreekanth Reddy
2015-06-18  9:55   ` Sreekanth Reddy
2015-06-19 20:34   ` Martin K. Petersen
2015-06-19 20:34     ` Martin K. Petersen
2015-06-12  9:42 ` [PATCH 12/20] [SCSI] mpt3sas: Bump mpt3sas driver version to v6.100.00.00 Sreekanth Reddy
2015-06-15  9:53   ` Johannes Thumshirn
2015-06-15  9:53     ` Johannes Thumshirn
2015-06-19 20:35   ` Martin K. Petersen
2015-06-19 20:35     ` Martin K. Petersen
2015-06-12  9:42 ` [PATCH 13/20] [SCSI] mpt3sas: MPI 2.5 Rev K (2.5.6) specifications Sreekanth Reddy
2015-06-15  9:54   ` Johannes Thumshirn
2015-06-15  9:54     ` Johannes Thumshirn
2015-06-19 20:36   ` Martin K. Petersen
2015-06-19 20:36     ` Martin K. Petersen
2015-06-12  9:42 ` [PATCH 14/20] [SCSI] mpt3sas: Complete the SCSI command with DID_RESET status for log_info value 0x0x32010081 Sreekanth Reddy
2015-06-15 10:01   ` Johannes Thumshirn
2015-06-15 11:01     ` Sreekanth Reddy
2015-06-15 11:01       ` Sreekanth Reddy
2015-06-12  9:42 ` [PATCH 15/20] [SCSI] mpt3sas: Return host busy error status to SML when DMA mapping of scatter gather list fails for a SCSI command Sreekanth Reddy
2015-06-15  9:54   ` Johannes Thumshirn
2015-06-19 20:40   ` Martin K. Petersen
2015-06-19 20:40     ` Martin K. Petersen
2015-06-12  9:42 ` [PATCH 16/20] [SCSI] mpt3sas: Added support for customer specific branding Sreekanth Reddy
2015-06-18  9:53   ` Sreekanth Reddy
2015-06-19 20:44   ` Martin K. Petersen
2015-06-19 20:44     ` Martin K. Petersen
2015-06-22 12:26     ` Sreekanth Reddy
2015-06-22 12:26       ` Sreekanth Reddy
2015-06-22 20:36       ` Martin K. Petersen
2015-06-22 20:36         ` Martin K. Petersen
2015-06-25 13:40         ` Sreekanth Reddy
2015-06-12  9:42 ` [PATCH 17/20] [SCSI] mpt3sas: Use alloc_ordered_workqueue() API instead of create_singlethread_workqueue() API Sreekanth Reddy
2015-06-12 21:03   ` Joe Lawrence
2015-06-12 21:03     ` Joe Lawrence
2015-06-15 10:56     ` Sreekanth Reddy
2015-06-15 21:05       ` James Bottomley
2015-06-16  5:03         ` Sreekanth Reddy
2015-06-12  9:42 ` [PATCH 18/20] [SCSI] mpt3sas: Call dma_mapping_error() API after mapping an address with dma_map_single() API Sreekanth Reddy
2015-06-15  9:55   ` Johannes Thumshirn
2015-06-19 20:47   ` Martin K. Petersen
2015-06-19 20:47     ` Martin K. Petersen
2015-06-12  9:42 ` [PATCH 19/20] [SCSI] mpt3sas: When device is blocked followed by unblock fails, unfreeze the I/Os Sreekanth Reddy
2015-06-15  9:58   ` Johannes Thumshirn
2015-06-12  9:42 ` [PATCH 20/20] [SCSI] mpt3sas : Bump mpt3sas driver version to 9.100.00.00 Sreekanth Reddy
2015-06-15  9:56   ` Johannes Thumshirn
2015-06-19 21:01   ` Martin K. Petersen
2015-06-19 21:01     ` Martin K. Petersen
  -- strict thread matches above, loose matches on Subject: below --
2015-03-30 13:55 [PATCH 00/20] mpt3sas: driver update Sreekanth Reddy
2015-03-30 13:55 ` [PATCH 01/20] [SCSI] mpt3sas: Added Combined Reply Queue feature to extend up-to 96 MSIX vector support Sreekanth Reddy

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAK=zhgpqRNE00ygoC3J-QKJwUPeYW=2j0TAcz4Q0t3ie7uSfOw@mail.gmail.com' \
    --to=sreekanth.reddy@avagotech.com \
    --cc=JBottomley@parallels.com \
    --cc=Sathya.Prakash@avagotech.com \
    --cc=hch@infradead.org \
    --cc=jejb@kernel.org \
    --cc=jthumshirn@suse.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-scsi@vger.kernel.org \
    --cc=martin.petersen@oracle.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.