Skip to content

RFC lpfc: nodelist pointer cleanup

Hannes Reinecke linux-scsi 1 version In review

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 RFC Latest3 patches 2 repliesIn review

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/3lpfc: use named structure for combined I/O bufferdrivers/scsi/lpfc/lpfc_init.c drivers/scsi/lpfc/lpfc_nvme.c drivers/scsi/lpfc/lpfc_scsi.c +2 more+132 -1320 replies
2/3lpfc: access nodelist through scsi-specific rdata pointerdrivers/scsi/lpfc/lpfc_scsi.c+2 -40 replies
3/3lpfc: access nvme nodelist through nvme rport structuredrivers/scsi/lpfc/lpfc_nvme.c drivers/scsi/lpfc/lpfc_sli.h+9 -70 replies

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.

Read the v1 thread

Cover letter [RFC PATCH 0/3] lpfc: nodelist pointer cleanup

Hi James,

trying to figure this annoying lpfc_set_rrq_active() bug I've found the nodelist pointer handling in the lpfc io buffers a bit strange; there's a 'ndlp' pointer, but for scsi the nodelist is primarily accessed via the 'rdata' pointer (although not everywhere). For NVMe it's primarily the 'ndlp' pointer, apparently, but the usage is quite confusing.
So here's a patchset to straighten things up; it primarily moves the anonymous protocol-specific structure in the io buffer to a named one, and always accesses the nodelist through the protocol-specific rport data structure.

It also has the nice side-effect that the protocol-specific areas are aligned now, so clearing the 'rdata' pointer on the scsi side will be equivalent to clearing the 'rport' pointer on the nvme side. And it reduces the size of the io buffer.

Let me know what you think.

Hannes Reinecke (3):
lpfc: use named structure for combined I/O buffer
lpfc: access nodelist through scsi-specific rdata pointer
lpfc: access nvme nodelist through nvme rport structure

 drivers/scsi/lpfc/lpfc_init.c |   2 +-
 drivers/scsi/lpfc/lpfc_nvme.c |  56 ++++++------
 drivers/scsi/lpfc/lpfc_scsi.c | 196 +++++++++++++++++++++---------------------
 drivers/scsi/lpfc/lpfc_sli.c  |  26 +++---
 drivers/scsi/lpfc/lpfc_sli.h  |   6 +-
 5 files changed, 143 insertions(+), 143 deletions(-)
Signature · 1 line
2.16.4