public inbox for linux-scsi@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3 00/16] lpfc: Add NVME Fabrics support
@ 2017-02-12 21:52 James Smart
  2017-02-15 10:12 ` Sagi Grimberg
  2017-02-21  3:59 ` Martin K. Petersen
  0 siblings, 2 replies; 5+ messages in thread
From: James Smart @ 2017-02-12 21:52 UTC (permalink / raw)
  To: linux-nvme, sagi, linux-scsi


This patch set adds support for NVME over Fabrics FC transport
to lpfc

The internals of the driver are reworked to support being either:
 a SCSI initiator;
 a NVME intiator;
 both a SCSI initiator and a NVME initiator;
 or a NVME target.

The driver effectively has parallel NVME and SCSI stacks that
utilize their own set of resources. They intersect only at the 
hardware level, mainly in queue create layers and interrupt handling.

A few new files are added to support the interfaces of the
FC transport LLDD api for NVME fabrics.

The patches were cut against 1/30 scsi.git tree, misc branch.
** THEY ARE INTENDED FOR THE SCSI.GIT TREE, MISC BRANCH **

The lpfc version in the linux-block.git tree is rather old. I have a
recipe for how to get it to a version that syncs with the
scsi.git/misc tree so that these patches can apply there as well.
Contact me if you would like it.

-- james

James Smart (16):
  lpfc: Correct WQ creation for pagesize
  lpfc: use pci_irq_alloc_vectors and pci_irq_free_vectors
  lpfc: minor code cleanups
  lpfc: refactor debugfs queue prints
  lpfc: refactor debugfs queue dump routines
  lpfc: NVME Initiator: Base modifications
  lpfc: NVME Initiator: Merge into FC discovery
  lpfc: NVME Initiator: bind to nvme_fc api
  lpfc: NVME Initiator: Add debugfs support
  lpfc: NVME Target: Base modifications
  lpfc: NVME Target: Receive buffer updates
  lpfc: NVME Target: Merge into FC discovery
  lpfc: NVME Target: bind to nvmet_fc api
  lpfc: NVME Target: Add debugfs support
  lpfc: Update copyrights
  lpfc: Update lpfc version to 11.2.0.7

 drivers/scsi/lpfc/Makefile         |   11 +-
 drivers/scsi/lpfc/lpfc.h           |  162 +-
 drivers/scsi/lpfc/lpfc_attr.c      |  570 ++++++-
 drivers/scsi/lpfc/lpfc_attr.h      |    4 +-
 drivers/scsi/lpfc/lpfc_bsg.c       |   33 +-
 drivers/scsi/lpfc/lpfc_bsg.h       |    6 +-
 drivers/scsi/lpfc/lpfc_compat.h    |    4 +-
 drivers/scsi/lpfc/lpfc_crtn.h      |   68 +-
 drivers/scsi/lpfc/lpfc_ct.c        |  388 +++--
 drivers/scsi/lpfc/lpfc_debugfs.c   | 2300 +++++++++++++++++++++-------
 drivers/scsi/lpfc/lpfc_debugfs.h   |  291 ++--
 drivers/scsi/lpfc/lpfc_disc.h      |   24 +-
 drivers/scsi/lpfc/lpfc_els.c       |  366 +++--
 drivers/scsi/lpfc/lpfc_hbadisc.c   |  363 +++--
 drivers/scsi/lpfc/lpfc_hw.h        |   86 +-
 drivers/scsi/lpfc/lpfc_hw4.h       |  506 ++++++-
 drivers/scsi/lpfc/lpfc_ids.h       |    4 +-
 drivers/scsi/lpfc/lpfc_init.c      | 2889 +++++++++++++++++++++---------------
 drivers/scsi/lpfc/lpfc_logmsg.h    |    8 +-
 drivers/scsi/lpfc/lpfc_mbox.c      |  114 +-
 drivers/scsi/lpfc/lpfc_mem.c       |  278 +++-
 drivers/scsi/lpfc/lpfc_nl.h        |    4 +-
 drivers/scsi/lpfc/lpfc_nportdisc.c |  257 +++-
 drivers/scsi/lpfc/lpfc_nvme.c      | 2464 ++++++++++++++++++++++++++++++
 drivers/scsi/lpfc/lpfc_nvme.h      |  103 ++
 drivers/scsi/lpfc/lpfc_nvmet.c     | 1987 +++++++++++++++++++++++++
 drivers/scsi/lpfc/lpfc_nvmet.h     |  117 ++
 drivers/scsi/lpfc/lpfc_scsi.c      |  111 +-
 drivers/scsi/lpfc/lpfc_scsi.h      |   22 +-
 drivers/scsi/lpfc/lpfc_sli.c       | 2195 ++++++++++++++++++++++-----
 drivers/scsi/lpfc/lpfc_sli.h       |   42 +-
 drivers/scsi/lpfc/lpfc_sli4.h      |   98 +-
 drivers/scsi/lpfc/lpfc_version.h   |   10 +-
 drivers/scsi/lpfc/lpfc_vport.c     |   21 +-
 drivers/scsi/lpfc/lpfc_vport.h     |    4 +-
 35 files changed, 13105 insertions(+), 2805 deletions(-)
 create mode 100644 drivers/scsi/lpfc/lpfc_nvme.c
 create mode 100644 drivers/scsi/lpfc/lpfc_nvme.h
 create mode 100644 drivers/scsi/lpfc/lpfc_nvmet.c
 create mode 100644 drivers/scsi/lpfc/lpfc_nvmet.h

-- 
2.5.0

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH v3 00/16] lpfc: Add NVME Fabrics support
  2017-02-12 21:52 [PATCH v3 00/16] lpfc: Add NVME Fabrics support James Smart
@ 2017-02-15 10:12 ` Sagi Grimberg
  2017-02-15 16:04   ` James Smart
  2017-02-21  3:59 ` Martin K. Petersen
  1 sibling, 1 reply; 5+ messages in thread
From: Sagi Grimberg @ 2017-02-15 10:12 UTC (permalink / raw)
  To: James Smart, linux-nvme, linux-scsi

Hi James,

> This patch set adds support for NVME over Fabrics FC transport
> to lpfc
>
> The internals of the driver are reworked to support being either:
>  a SCSI initiator;
>  a NVME intiator;
>  both a SCSI initiator and a NVME initiator;
>  or a NVME target.
>
> The driver effectively has parallel NVME and SCSI stacks that
> utilize their own set of resources. They intersect only at the
> hardware level, mainly in queue create layers and interrupt handling.
>
> A few new files are added to support the interfaces of the
> FC transport LLDD api for NVME fabrics.
>
> The patches were cut against 1/30 scsi.git tree, misc branch.
> ** THEY ARE INTENDED FOR THE SCSI.GIT TREE, MISC BRANCH **
>
> The lpfc version in the linux-block.git tree is rather old. I have a
> recipe for how to get it to a version that syncs with the
> scsi.git/misc tree so that these patches can apply there as well.
> Contact me if you would like it.

This set does not seem to apply cleanly on nvme-4.11 tree, looks
like patch 6 is failing.

Also, can you send your patchset threaded? It usually does so
when generating the patches with git format-patch, not sure
how this is not the case with your set... It would make my
life a bit easier.

Thanks.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH v3 00/16] lpfc: Add NVME Fabrics support
  2017-02-15 10:12 ` Sagi Grimberg
@ 2017-02-15 16:04   ` James Smart
  2017-02-15 19:52     ` Bart Van Assche
  0 siblings, 1 reply; 5+ messages in thread
From: James Smart @ 2017-02-15 16:04 UTC (permalink / raw)
  To: Sagi Grimberg, linux-nvme, linux-scsi



On 2/15/2017 2:12 AM, Sagi Grimberg wrote:
>
>>
>> The patches were cut against 1/30 scsi.git tree, misc branch.
>> ** THEY ARE INTENDED FOR THE SCSI.GIT TREE, MISC BRANCH **
>>
>> The lpfc version in the linux-block.git tree is rather old. I have a
>> recipe for how to get it to a version that syncs with the
>> scsi.git/misc tree so that these patches can apply there as well.
>> Contact me if you would like it.
>
> This set does not seem to apply cleanly on nvme-4.11 tree, looks
> like patch 6 is failing.

As I stated - the patches were cut vs the scsi.git tree - where the most 
recent lpfc is. So I expected merge via the scsi.git tree.

Given how old the scsi/lpfc part was on linux-block as of a little while 
ago, it doesn't surprise me they aren't clean.  I'll cut a version vs 
git.infradead.orig/nvme.git nvme-4.11 and send them privately.


>
> Also, can you send your patchset threaded? It usually does so
> when generating the patches with git format-patch, not sure
> how this is not the case with your set... It would make my
> life a bit easier.

Well, I am using git format-patch to create them. But have to revert to 
a manual mailing request as I haven't been able to get git-send-email 
working past our firewalls.  Sorry.

-- james

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH v3 00/16] lpfc: Add NVME Fabrics support
  2017-02-15 16:04   ` James Smart
@ 2017-02-15 19:52     ` Bart Van Assche
  0 siblings, 0 replies; 5+ messages in thread
From: Bart Van Assche @ 2017-02-15 19:52 UTC (permalink / raw)
  To: jsmart2021, Sagi Grimberg, linux-nvme, linux-scsi

On 02/15/2017 08:04 AM, James Smart wrote:
> On 2/15/2017 2:12 AM, Sagi Grimberg wrote:
>> Also, can you send your patchset threaded? It usually does so
>> when generating the patches with git format-patch, not sure
>> how this is not the case with your set... It would make my
>> life a bit easier.
> 
> Well, I am using git format-patch to create them. But have to revert to
> a manual mailing request as I haven't been able to get git-send-email
> working past our firewalls.  Sorry.

Hello James,

In the headers of your patch e-mails I found the following: "User-Agent:
Heirloom mailx 12.5 6/20/10". As far as I know the transports supported
by that e-mail client are IMAP, POP3 and SMTP. I think git supports both
SMTP and IMAP for sending e-mails.

Thanks,

Bart.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH v3 00/16] lpfc: Add NVME Fabrics support
  2017-02-12 21:52 [PATCH v3 00/16] lpfc: Add NVME Fabrics support James Smart
  2017-02-15 10:12 ` Sagi Grimberg
@ 2017-02-21  3:59 ` Martin K. Petersen
  1 sibling, 0 replies; 5+ messages in thread
From: Martin K. Petersen @ 2017-02-21  3:59 UTC (permalink / raw)
  To: James Smart; +Cc: linux-nvme, sagi, linux-scsi

>>>>> "James" == James Smart <jsmart2021@gmail.com> writes:

James> This patch set adds support for NVME over Fabrics FC transport to
James> lpfc

Applied to 4.11/scsi-queue.

-- 
Martin K. Petersen	Oracle Linux Engineering

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2017-02-21  3:59 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-02-12 21:52 [PATCH v3 00/16] lpfc: Add NVME Fabrics support James Smart
2017-02-15 10:12 ` Sagi Grimberg
2017-02-15 16:04   ` James Smart
2017-02-15 19:52     ` Bart Van Assche
2017-02-21  3:59 ` Martin K. Petersen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox