From: Shivasharan Srikanteshwara <shivasharan.srikanteshwara@broadcom.com>
To: Hannes Reinecke <hare@suse.com>, linux-scsi@vger.kernel.org
Cc: martin.petersen@oracle.com, thenzl@redhat.com,
jejb@linux.vnet.ibm.com,
Kashyap Desai <kashyap.desai@broadcom.com>,
Sumit Saxena <sumit.saxena@broadcom.com>
Subject: RE: [PATCH 04/39] megaraid_sas: 32 bit descriptor fire cmd optimization
Date: Mon, 6 Feb 2017 16:08:26 +0530 [thread overview]
Message-ID: <3d12467daa28674de019813eef149f43@mail.gmail.com> (raw)
In-Reply-To: <2469ec36-b690-dba5-effa-3dc9f6c45954@suse.com>
> -----Original Message-----
> From: Hannes Reinecke [mailto:hare@suse.com]
> Sent: Monday, February 06, 2017 3:54 PM
> To: Shivasharan S; linux-scsi@vger.kernel.org
> Cc: martin.petersen@oracle.com; thenzl@redhat.com;
> jejb@linux.vnet.ibm.com; kashyap.desai@broadcom.com;
> sumit.saxena@broadcom.com
> Subject: Re: [PATCH 04/39] megaraid_sas: 32 bit descriptor fire cmd
> optimization
>
> On 02/06/2017 10:59 AM, Shivasharan S wrote:
> > No functional change. Code refactor.
> > megasas_fire_cmd_fusion can always use 32 bit descriptor write for
ventura.
> No need to pass extra flag.
> > Only IOC INIT required 64 bit Descriptor write.
> >
> > Signed-off-by: Shivasharan S <shivasharan.srikanteshwara@broadcom.com>
> > Signed-off-by: Kashyap Desai <kashyap.desai@broadcom.com>
> > ---
> > drivers/scsi/megaraid/megaraid_sas_fusion.c | 65
> > +++++++++++++++--------------
> > 1 file changed, 33 insertions(+), 32 deletions(-)
> >
> [ .. ]
> > @@ -897,7 +893,14 @@ megasas_ioc_init_fusion(struct megasas_instance
> *instance)
> > break;
> > }
> >
> > - megasas_fire_cmd_fusion(instance, &req_desc, false);
> > + /* For Ventura also IOC INIT required 64 bit Descriptor write. */
> > + spin_lock_irqsave(&instance->hba_lock, flags);
> > + writel(le32_to_cpu(req_desc.u.low),
> > + &instance->reg_set->inbound_low_queue_port);
> > + writel(le32_to_cpu(req_desc.u.high),
> > + &instance->reg_set->inbound_high_queue_port);
> > + mmiowb();
> > + spin_unlock_irqrestore(&instance->hba_lock, flags);
> >
> > wait_and_poll(instance, cmd, MFI_POLL_TIMEOUT_SECS);
> >
> You are missing the 64 bit writeq improvements here.
We have to use writeq() with additional checks " #if defined(writeq) &&
defined(CONFIG_64BIT)" as some arch still wants two PCI write as they do
not have writeq() support.
Since this is a one-time IOC INIT operation we should be good to keep
simple code avoiding writeq() usage.
>
> Cheers,
>
> Hannes
> --
> Dr. Hannes Reinecke zSeries & Storage
> hare@suse.com +49 911 74053 688
> SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg
> GF: F. Imendörffer, J. Smithard, D. Upmanyu, G. Norton HRB 21284 (AG
> Nürnberg)
next prev parent reply other threads:[~2017-02-06 10:40 UTC|newest]
Thread overview: 135+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-02-06 9:59 [PATCH 00/39] megaraid_sas: Updates for scsi-next Shivasharan S
2017-02-06 9:59 ` [PATCH 01/39] Revert "scsi: megaraid_sas: Enable or Disable Fast path based on the PCI Threshold Bandwidth" Shivasharan S
2017-02-06 10:07 ` Shivasharan Srikanteshwara
2017-02-06 10:24 ` Hannes Reinecke
2017-02-06 13:08 ` Tomas Henzl
2017-02-06 9:59 ` [PATCH 02/39] megaraid_sas: cpu select rework Shivasharan S
2017-02-06 10:25 ` Hannes Reinecke
2017-02-06 13:08 ` Tomas Henzl
2017-02-06 9:59 ` [PATCH 03/39] megaraid_sas: raid 1 fast path code optimize Shivasharan S
2017-02-06 10:26 ` Hannes Reinecke
2017-02-06 13:12 ` Tomas Henzl
2017-02-06 13:27 ` Kashyap Desai
2017-02-06 13:38 ` Tomas Henzl
2017-02-06 9:59 ` [PATCH 04/39] megaraid_sas: 32 bit descriptor fire cmd optimization Shivasharan S
2017-02-06 10:23 ` Hannes Reinecke
2017-02-06 10:38 ` Shivasharan Srikanteshwara [this message]
2017-02-06 10:38 ` Shivasharan Srikanteshwara
2017-02-06 13:40 ` Tomas Henzl
2017-02-06 9:59 ` [PATCH 05/39] megaraid_sas: Refactor MEGASAS_IS_LOGICAL macro using sdev Shivasharan S
2017-02-06 10:29 ` Hannes Reinecke
2017-02-06 13:44 ` Tomas Henzl
2017-02-06 9:59 ` [PATCH 06/39] megaraid_sas: RAID map is accessed for SYS PDs when use_seqnum_jbod_fp is not set Shivasharan S
2017-02-06 10:40 ` Hannes Reinecke
2017-02-06 13:16 ` Shivasharan Srikanteshwara
2017-02-06 9:59 ` [PATCH 07/39] megaraid_sas: Use DID_REQUEUE Shivasharan S
2017-02-06 10:41 ` Hannes Reinecke
2017-02-06 13:46 ` Tomas Henzl
2017-02-06 9:59 ` [PATCH 08/39] megaraid_sas: megasas_get_request_descriptor always return valid desc Shivasharan S
2017-02-06 10:43 ` Hannes Reinecke
2017-02-06 13:44 ` Shivasharan Srikanteshwara
2017-02-06 23:54 ` Martin K. Petersen
2017-02-07 0:02 ` Martin K. Petersen
2017-02-06 14:06 ` Tomas Henzl
2017-02-06 9:59 ` [PATCH 09/39] megaraid_sas: NVME Interface detection and prop settings Shivasharan S
2017-02-06 10:47 ` Hannes Reinecke
2017-02-06 13:55 ` Shivasharan Srikanteshwara
2017-02-06 9:59 ` [PATCH 10/39] megaraid_sas: NVME interface target prop added Shivasharan S
2017-02-06 10:15 ` Shivasharan Srikanteshwara
2017-02-06 10:48 ` Hannes Reinecke
2017-02-06 14:14 ` Tomas Henzl
2017-02-06 9:59 ` [PATCH 11/39] " Shivasharan S
2017-02-06 10:16 ` Shivasharan Srikanteshwara
2017-02-06 10:34 ` Shivasharan Srikanteshwara
2017-02-06 10:41 ` kbuild test robot
2017-02-06 10:51 ` Hannes Reinecke
2017-02-06 14:37 ` Tomas Henzl
2017-02-06 9:59 ` [PATCH 12/39] megaraid_sas: raid 1 write performance for large io Shivasharan S
2017-02-06 10:54 ` Hannes Reinecke
2017-02-06 14:39 ` Tomas Henzl
2017-02-06 9:59 ` [PATCH 13/39] megaraid_sas : set residual bytes count during IO compeltion Shivasharan S
2017-02-06 10:54 ` Hannes Reinecke
2017-02-06 14:39 ` Tomas Henzl
2017-02-06 23:52 ` Martin K. Petersen
2017-02-07 11:07 ` Kashyap Desai
2017-02-07 22:19 ` Martin K. Petersen
2017-02-06 9:59 ` [PATCH 14/39] megaraid_sas: enhance debug logs in OCR context Shivasharan S
2017-02-06 10:55 ` Hannes Reinecke
2017-02-06 14:44 ` Tomas Henzl
2017-02-06 9:59 ` [PATCH 15/39] megaraid_sas: add print in device removal path Shivasharan S
2017-02-06 10:55 ` Hannes Reinecke
2017-02-06 14:46 ` Tomas Henzl
2017-02-06 9:59 ` [PATCH 16/39] megaraid_sas: reduce size of fusion_context and use vmalloc if kmalloc fails Shivasharan S
2017-02-06 11:18 ` Hannes Reinecke
2017-02-06 15:40 ` Tomas Henzl
2017-02-06 9:59 ` [PATCH 17/39] megaraid_sas: In validate raid map, raid capability is not converted to cpu format for all lds Shivasharan S
2017-02-06 11:18 ` Hannes Reinecke
2017-02-06 15:42 ` Tomas Henzl
2017-02-06 9:59 ` [PATCH 18/39] megaraid_sas: MR_TargetIdToLdGet u8 to u16 and avoid invalid raid-map access Shivasharan S
2017-02-06 11:20 ` Hannes Reinecke
2017-02-07 11:54 ` Shivasharan Srikanteshwara
2017-02-06 9:59 ` [PATCH 19/39] megaraid_sas: Big endian RDPQ mode fix Shivasharan S
2017-02-06 11:21 ` Hannes Reinecke
2017-02-06 15:44 ` Tomas Henzl
2017-02-06 9:59 ` [PATCH 20/39] megaraid_sas: big endian support changes Shivasharan S
2017-02-06 11:22 ` Hannes Reinecke
2017-02-06 15:46 ` Tomas Henzl
2017-02-06 9:59 ` [PATCH 21/39] megaraid_sas: avoid unaligned access in ioctl path Shivasharan S
2017-02-06 11:22 ` Hannes Reinecke
2017-02-06 15:48 ` Tomas Henzl
2017-02-06 9:59 ` [PATCH 22/39] megaraid_sas: latest controller OCR capability from FW before sending shutdown DCMD Shivasharan S
2017-02-06 11:23 ` Hannes Reinecke
2017-02-06 15:50 ` Tomas Henzl
2017-02-06 9:59 ` [PATCH 23/39] megaraid_sas: set pd_after_lb from MR_BuildRaidContext and initialize pDevHandle to MR_DEVHANDLE_INVALID Shivasharan S
2017-02-06 11:23 ` Hannes Reinecke
2017-02-06 15:51 ` Tomas Henzl
2017-02-06 9:59 ` [PATCH 24/39] megaraid_sas: Change max_cmd from u32 to u16 in all functions Shivasharan S
2017-02-06 11:24 ` Hannes Reinecke
2017-02-06 15:51 ` Tomas Henzl
2017-02-06 9:59 ` [PATCH 25/39] megaraid_sas: update can_queue only if the new value is less Shivasharan S
2017-02-06 11:24 ` Hannes Reinecke
2017-02-06 15:52 ` Tomas Henzl
2017-02-06 9:59 ` [PATCH 26/39] megaraid_sas: max_fw_cmds are decremented twice, remove duplicate Shivasharan S
2017-02-06 11:24 ` Hannes Reinecke
2017-02-06 15:53 ` Tomas Henzl
2017-02-06 10:00 ` [PATCH 27/39] megaraid_sas: megasas_return_cmd does not memset IO frame to zero Shivasharan S
2017-02-06 11:25 ` Hannes Reinecke
2017-02-06 15:57 ` Tomas Henzl
2017-02-06 10:00 ` [PATCH 28/39] megaraid_sas: Remove unused pd_index from megasas_build_ld_nonrw_fusion Shivasharan S
2017-02-06 11:25 ` Hannes Reinecke
2017-02-06 15:58 ` Tomas Henzl
2017-02-06 10:00 ` [PATCH 29/39] megaraid_sas: Do not set fp_possible if TM capable for non-RW syspdIO, change fp_possible to bool Shivasharan S
2017-02-06 11:26 ` Hannes Reinecke
2017-02-06 15:58 ` Tomas Henzl
2017-02-06 10:00 ` [PATCH 30/39] megaraid_sas: During OCR, if get_ctrl_info fails do not continue with OCR Shivasharan S
2017-02-06 11:26 ` Hannes Reinecke
2017-02-06 15:59 ` Tomas Henzl
2017-02-06 10:00 ` [PATCH 31/39] megaraid_sas: Change build_mpt_mfi_pass_thru to return void Shivasharan S
2017-02-06 11:27 ` Hannes Reinecke
2017-02-06 16:00 ` Tomas Henzl
2017-02-06 10:00 ` [PATCH 32/39] megaraid_sas: Bail out the driver load if ld_list_query fails Shivasharan S
2017-02-06 11:28 ` Hannes Reinecke
2017-02-06 16:01 ` Tomas Henzl
2017-02-06 10:00 ` [PATCH 33/39] megaraid_sas: call flush_scheduled_work during controller shutdown/detach Shivasharan S
2017-02-06 11:28 ` Hannes Reinecke
2017-02-06 16:05 ` Tomas Henzl
2017-02-06 17:18 ` Kashyap Desai
2017-02-07 8:50 ` Kashyap Desai
2017-02-06 10:00 ` [PATCH 34/39] megaraid_sas: Use synchronize_irq to wait for IRQs to complete Shivasharan S
2017-02-06 11:29 ` Hannes Reinecke
2017-02-06 16:07 ` Tomas Henzl
2017-02-06 10:00 ` [PATCH 35/39] megaraid_sas: Increase internal command pool Shivasharan S
2017-02-06 11:29 ` Hannes Reinecke
2017-02-06 16:08 ` Tomas Henzl
2017-02-06 10:00 ` [PATCH 36/39] megaraid_sas: Cleanup VD_EXT_DEBUG and SPAN_DEBUG related debug prints Shivasharan S
2017-02-06 11:30 ` Hannes Reinecke
2017-02-06 16:09 ` Tomas Henzl
2017-02-06 10:00 ` [PATCH 37/39] megaraid_sas: Indentation and smatch warning fixes Shivasharan S
2017-02-06 11:30 ` Hannes Reinecke
2017-02-06 16:13 ` Tomas Henzl
2017-02-06 10:00 ` [PATCH 38/39] megaraid_sas: Change RAID_1_10_RMW_CMDS to RAID_1_PEER_CMDS and set value to 2 Shivasharan S
2017-02-06 11:31 ` Hannes Reinecke
2017-02-06 16:14 ` Tomas Henzl
2017-02-06 10:00 ` [PATCH 39/39] megaraid_sas: driver version upgrade Shivasharan S
2017-02-06 11:31 ` Hannes Reinecke
2017-02-06 16:14 ` Tomas Henzl
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=3d12467daa28674de019813eef149f43@mail.gmail.com \
--to=shivasharan.srikanteshwara@broadcom.com \
--cc=hare@suse.com \
--cc=jejb@linux.vnet.ibm.com \
--cc=kashyap.desai@broadcom.com \
--cc=linux-scsi@vger.kernel.org \
--cc=martin.petersen@oracle.com \
--cc=sumit.saxena@broadcom.com \
--cc=thenzl@redhat.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).