linux-scsi.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/4] scsi: 64-bit LUN support
@ 2013-02-19  8:17 Hannes Reinecke
  2013-02-19  8:18 ` [PATCH 1/4] scsi_scan: Fixup scsilun_to_int() Hannes Reinecke
                   ` (5 more replies)
  0 siblings, 6 replies; 31+ messages in thread
From: Hannes Reinecke @ 2013-02-19  8:17 UTC (permalink / raw)
  To: linux-scsi
  Cc: James Bottomley, Jeremy Linton, Robert Elliott, Bart Van Assche,
	Hannes Reinecke

This patchset updates the SCSI midlayer to use 64-bit LUNs internally.
It eliminates the need to limit the number of LUNs artificially to
avoid aliasing issues; the SCSI midlayer can now accept any LUN presented
to it.

The LLDD specific settings for 'max_lun' have been left untouched;
it should be raised to '~0' if the HBA supports 64-bit LUNs internally.
However, it is up to the driver maintainer to raise that limit.

Hannes Reinecke (4):
  scsi_scan: Fixup scsilun_to_int()
  scsi: use 64-bit LUNs
  scsi: use 64-bit value for 'max_luns'
  scsi: Remove CONFIG_SCSI_MULTI_LUN

 drivers/ata/libata-scsi.c               |    2 +-
 drivers/ata/libata.h                    |    2 +-
 drivers/message/fusion/mptscsih.c       |    2 +-
 drivers/message/i2o/i2o_scsi.c          |    6 +-
 drivers/scsi/Kconfig                    |   14 ------
 drivers/scsi/NCR5380.c                  |    2 +-
 drivers/scsi/aacraid/linit.c            |    2 +-
 drivers/scsi/aha152x.c                  |    6 +-
 drivers/scsi/aic7xxx/aic79xx.h          |    2 +-
 drivers/scsi/aic7xxx/aic79xx_osm.c      |    6 +-
 drivers/scsi/aic7xxx/aic7xxx_osm.c      |   11 +++--
 drivers/scsi/aic7xxx_old.c              |   21 +++++----
 drivers/scsi/aic7xxx_old/aic7xxx_proc.c |    2 +-
 drivers/scsi/arcmsr/arcmsr_hba.c        |    8 ++--
 drivers/scsi/csiostor/csio_scsi.c       |   24 +++++-----
 drivers/scsi/cxgbi/libcxgbi.c           |    2 +-
 drivers/scsi/cxgbi/libcxgbi.h           |    2 +-
 drivers/scsi/dc395x.c                   |   52 ++++++++++------------
 drivers/scsi/eata.c                     |    4 +-
 drivers/scsi/fnic/fnic_scsi.c           |    6 +-
 drivers/scsi/hpsa.c                     |    2 +-
 drivers/scsi/ibmvscsi/ibmvfc.c          |    4 +-
 drivers/scsi/libiscsi.c                 |    7 ++-
 drivers/scsi/libsas/sas_scsi_host.c     |   11 +++--
 drivers/scsi/lpfc/lpfc_attr.c           |   10 ++++-
 drivers/scsi/lpfc/lpfc_scsi.c           |   44 +++++++++---------
 drivers/scsi/megaraid.c                 |    8 ++--
 drivers/scsi/megaraid/mega_common.h     |    2 +-
 drivers/scsi/mpt3sas/mpt3sas_scsih.c    |    4 +-
 drivers/scsi/ncr53c8xx.h                |    4 --
 drivers/scsi/pmcraid.c                  |    2 +-
 drivers/scsi/qla2xxx/qla_def.h          |    4 +-
 drivers/scsi/qla2xxx/qla_gbl.h          |   12 +++---
 drivers/scsi/qla2xxx/qla_isr.c          |    4 +-
 drivers/scsi/qla2xxx/qla_mbx.c          |   12 +++---
 drivers/scsi/qla2xxx/qla_os.c           |   41 +++++++++--------
 drivers/scsi/qla4xxx/ql4_glbl.h         |    4 +-
 drivers/scsi/qla4xxx/ql4_iocb.c         |    2 +-
 drivers/scsi/qla4xxx/ql4_isr.c          |   22 +++++-----
 drivers/scsi/qla4xxx/ql4_mbx.c          |    8 ++--
 drivers/scsi/qla4xxx/ql4_os.c           |   18 ++++----
 drivers/scsi/scsi.c                     |    8 ++--
 drivers/scsi/scsi_debug.c               |   15 +++---
 drivers/scsi/scsi_priv.h                |    2 +-
 drivers/scsi/scsi_proc.c                |    2 +-
 drivers/scsi/scsi_scan.c                |   73 +++++++++++--------------------
 drivers/scsi/scsi_sysfs.c               |   14 +++---
 drivers/scsi/scsi_transport_fc.c        |    4 +-
 drivers/scsi/scsi_transport_iscsi.c     |    4 +-
 drivers/scsi/scsi_transport_sas.c       |    2 +-
 drivers/scsi/sg.c                       |    4 +-
 drivers/scsi/sym53c8xx_2/sym_glue.c     |    2 +-
 drivers/scsi/sym53c8xx_2/sym_hipd.h     |    2 +-
 drivers/target/loopback/tcm_loop.c      |    4 +-
 drivers/target/target_core_pscsi.c      |   12 +++---
 include/linux/moduleparam.h             |    5 ++
 include/scsi/scsi.h                     |    2 +-
 include/scsi/scsi_device.h              |   22 +++++-----
 include/scsi/scsi_host.h                |    6 +-
 include/scsi/scsi_transport.h           |    2 +-
 kernel/params.c                         |    1 +
 61 files changed, 281 insertions(+), 306 deletions(-)

-- 
1.7.4.2


^ permalink raw reply	[flat|nested] 31+ messages in thread
* [PATCH v2 0/4] scsi: 64-bit LUN support
@ 2013-02-20 13:47 Hannes Reinecke
  2013-02-20 13:47 ` [PATCH 3/4] scsi: use 64-bit value for 'max_luns' Hannes Reinecke
  0 siblings, 1 reply; 31+ messages in thread
From: Hannes Reinecke @ 2013-02-20 13:47 UTC (permalink / raw)
  To: linux-scsi
  Cc: James Bottomley, Jeremy Linton, Robert Elliott, Bart Van Assche,
	Mike Christie, Hannes Reinecke

This patchset updates the SCSI midlayer to use 64-bit LUNs internally.
It eliminates the need to limit the number of LUNs artificially to
avoid aliasing issues; the SCSI midlayer can now accept any LUN presented
to it.

The LLDD specific settings for 'max_lun' have been left untouched;
it should be raised to '~0' if the HBA supports 64-bit LUNs internally.
However, it is up to the driver maintainer to raise that limit.

Changes to v1:
- Use u64 instead of uint64_t where appropriate

Hannes Reinecke (4):
  scsi_scan: Fixup scsilun_to_int()
  scsi: use 64-bit LUNs
  scsi: use 64-bit value for 'max_luns'
  scsi: Remove CONFIG_SCSI_MULTI_LUN

 drivers/ata/libata-scsi.c               |    2 +-
 drivers/ata/libata.h                    |    2 +-
 drivers/message/fusion/mptscsih.c       |    2 +-
 drivers/message/i2o/i2o_scsi.c          |   13 +++---
 drivers/scsi/Kconfig                    |   14 ------
 drivers/scsi/NCR5380.c                  |    2 +-
 drivers/scsi/aacraid/linit.c            |    2 +-
 drivers/scsi/aha152x.c                  |    6 +-
 drivers/scsi/aic7xxx/aic79xx.h          |    2 +-
 drivers/scsi/aic7xxx/aic79xx_osm.c      |    6 +-
 drivers/scsi/aic7xxx/aic7xxx_osm.c      |   11 +++--
 drivers/scsi/aic7xxx_old.c              |   21 +++++----
 drivers/scsi/aic7xxx_old/aic7xxx_proc.c |    2 +-
 drivers/scsi/arcmsr/arcmsr_hba.c        |    8 ++--
 drivers/scsi/csiostor/csio_scsi.c       |   24 +++++-----
 drivers/scsi/cxgbi/libcxgbi.c           |    2 +-
 drivers/scsi/cxgbi/libcxgbi.h           |    2 +-
 drivers/scsi/dc395x.c                   |   52 ++++++++++------------
 drivers/scsi/eata.c                     |    4 +-
 drivers/scsi/fnic/fnic_scsi.c           |    6 +-
 drivers/scsi/hpsa.c                     |    2 +-
 drivers/scsi/ibmvscsi/ibmvfc.c          |    4 +-
 drivers/scsi/libiscsi.c                 |    8 ++--
 drivers/scsi/libsas/sas_scsi_host.c     |   11 +++--
 drivers/scsi/lpfc/lpfc_attr.c           |   10 ++++-
 drivers/scsi/lpfc/lpfc_scsi.c           |   42 +++++++++---------
 drivers/scsi/megaraid.c                 |    6 +-
 drivers/scsi/megaraid/mega_common.h     |    2 +-
 drivers/scsi/mpt3sas/mpt3sas_scsih.c    |    4 +-
 drivers/scsi/ncr53c8xx.h                |    4 --
 drivers/scsi/pmcraid.c                  |    2 +-
 drivers/scsi/qla2xxx/qla_def.h          |    4 +-
 drivers/scsi/qla2xxx/qla_gbl.h          |   12 +++---
 drivers/scsi/qla2xxx/qla_isr.c          |    4 +-
 drivers/scsi/qla2xxx/qla_mbx.c          |   12 +++---
 drivers/scsi/qla2xxx/qla_os.c           |   41 +++++++++--------
 drivers/scsi/qla4xxx/ql4_glbl.h         |    4 +-
 drivers/scsi/qla4xxx/ql4_iocb.c         |    2 +-
 drivers/scsi/qla4xxx/ql4_isr.c          |   22 +++++-----
 drivers/scsi/qla4xxx/ql4_mbx.c          |    8 ++--
 drivers/scsi/qla4xxx/ql4_os.c           |   18 ++++----
 drivers/scsi/scsi.c                     |    8 ++--
 drivers/scsi/scsi_debug.c               |   15 +++---
 drivers/scsi/scsi_priv.h                |    2 +-
 drivers/scsi/scsi_proc.c                |    2 +-
 drivers/scsi/scsi_scan.c                |   73 +++++++++++--------------------
 drivers/scsi/scsi_sysfs.c               |   14 +++---
 drivers/scsi/scsi_transport_fc.c        |    4 +-
 drivers/scsi/scsi_transport_iscsi.c     |    4 +-
 drivers/scsi/scsi_transport_sas.c       |    2 +-
 drivers/scsi/sg.c                       |    4 +-
 drivers/scsi/sym53c8xx_2/sym_glue.c     |    2 +-
 drivers/scsi/sym53c8xx_2/sym_hipd.h     |    2 +-
 drivers/target/loopback/tcm_loop.c      |    4 +-
 drivers/target/target_core_pscsi.c      |   12 +++---
 include/linux/moduleparam.h             |    5 ++
 include/scsi/scsi.h                     |    2 +-
 include/scsi/scsi_device.h              |   22 +++++-----
 include/scsi/scsi_host.h                |    6 +-
 include/scsi/scsi_transport.h           |    2 +-
 kernel/params.c                         |    1 +
 61 files changed, 282 insertions(+), 309 deletions(-)

-- 
1.7.4.2


^ permalink raw reply	[flat|nested] 31+ messages in thread
* [PATCHv5 0/4] Support 64-bit LUNs
@ 2014-06-25 13:27 Hannes Reinecke
  2014-06-25 13:27 ` [PATCH 3/4] scsi: use 64-bit value for 'max_luns' Hannes Reinecke
  0 siblings, 1 reply; 31+ messages in thread
From: Hannes Reinecke @ 2014-06-25 13:27 UTC (permalink / raw)
  To: James Bottomley; +Cc: Christoph Hellwig, linux-scsi, Hannes Reinecke

Hi all,

this patchset updates the SCSI stack to support full 64-bit LUNs.
The first patche update the SCSI stack and all drivers
to use 64-bit LUNs where appropriate.
The second patch updates the kernel module parameter
functions to accept a new 'ullong' parameter.
The third the updates the 'max_lun' parameter to accept
64-bit values, too.
And finally we need to update the conversion routines
scsilun_to_int to cope with 64bit LUNs.

The patchset is relative to the 'core-for-3.17' git tree from hch.

Changes to v4:
- Drop patches already merged
- Include fixes from Bart van Assche for scsilun_to_int()
- Include missing patches for mptfc.c and mptscsih.c
- Split module parameter changes into separate patch

Changes to v3:
- Modified scsilun_to_int() as suggested by James B.

Changes to v2:
- Add patch to fixup scsilun_to_int
- Add Reviewed-by: where applicable
- Remove last references to SCSI_MULTI_LUN

Hannes Reinecke (4):
  scsi: use 64-bit LUNs
  Add module param type 'ullong'
  scsi: use 64-bit value for 'max_luns'
  scsi_scan: Fixup scsilun_to_int()

 drivers/ata/libata-scsi.c            |  2 +-
 drivers/ata/libata.h                 |  2 +-
 drivers/message/fusion/mptbase.h     |  2 +-
 drivers/message/fusion/mptfc.c       |  6 +--
 drivers/message/fusion/mptscsih.c    | 14 +++---
 drivers/message/fusion/mptscsih.h    |  4 +-
 drivers/message/i2o/i2o_scsi.c       | 11 +++--
 drivers/s390/scsi/zfcp_dbf.c         |  3 +-
 drivers/s390/scsi/zfcp_unit.c        |  4 +-
 drivers/scsi/NCR5380.c               | 28 ++++++------
 drivers/scsi/aacraid/linit.c         |  2 +-
 drivers/scsi/advansys.c              |  2 +-
 drivers/scsi/aha152x.c               |  6 +--
 drivers/scsi/aic7xxx/aic79xx.h       |  2 +-
 drivers/scsi/aic7xxx/aic79xx_osm.c   |  6 +--
 drivers/scsi/aic7xxx/aic79xx_proc.c  |  2 +-
 drivers/scsi/aic7xxx/aic7xxx_osm.c   | 11 ++---
 drivers/scsi/aic7xxx/aic7xxx_proc.c  |  2 +-
 drivers/scsi/arcmsr/arcmsr_hba.c     |  8 ++--
 drivers/scsi/csiostor/csio_scsi.c    | 24 +++++------
 drivers/scsi/cxgbi/libcxgbi.c        |  2 +-
 drivers/scsi/cxgbi/libcxgbi.h        |  2 +-
 drivers/scsi/dc395x.c                | 42 +++++++++---------
 drivers/scsi/eata.c                  |  4 +-
 drivers/scsi/fnic/fnic_scsi.c        |  4 +-
 drivers/scsi/hpsa.c                  |  2 +-
 drivers/scsi/ibmvscsi/ibmvfc.c       |  4 +-
 drivers/scsi/libiscsi.c              |  8 ++--
 drivers/scsi/libsas/sas_scsi_host.c  | 11 ++---
 drivers/scsi/lpfc/lpfc_attr.c        | 10 ++++-
 drivers/scsi/lpfc/lpfc_scsi.c        | 36 ++++++++--------
 drivers/scsi/megaraid.c              |  6 +--
 drivers/scsi/megaraid/mega_common.h  |  2 +-
 drivers/scsi/mpt3sas/mpt3sas_scsih.c |  4 +-
 drivers/scsi/pmcraid.c               |  2 +-
 drivers/scsi/qla2xxx/qla_def.h       |  6 +--
 drivers/scsi/qla2xxx/qla_gbl.h       | 18 ++++----
 drivers/scsi/qla2xxx/qla_iocb.c      | 11 +++--
 drivers/scsi/qla2xxx/qla_isr.c       |  4 +-
 drivers/scsi/qla2xxx/qla_mbx.c       | 12 +++---
 drivers/scsi/qla2xxx/qla_mr.c        |  8 ++--
 drivers/scsi/qla2xxx/qla_os.c        | 41 +++++++++---------
 drivers/scsi/qla4xxx/ql4_glbl.h      |  4 +-
 drivers/scsi/qla4xxx/ql4_iocb.c      |  2 +-
 drivers/scsi/qla4xxx/ql4_isr.c       | 22 +++++-----
 drivers/scsi/qla4xxx/ql4_mbx.c       |  6 +--
 drivers/scsi/qla4xxx/ql4_os.c        | 20 ++++-----
 drivers/scsi/scsi.c                  |  8 ++--
 drivers/scsi/scsi_debug.c            | 15 ++++---
 drivers/scsi/scsi_priv.h             |  2 +-
 drivers/scsi/scsi_proc.c             |  2 +-
 drivers/scsi/scsi_scan.c             | 82 ++++++++++++++----------------------
 drivers/scsi/scsi_sysfs.c            | 14 +++---
 drivers/scsi/scsi_transport_fc.c     |  4 +-
 drivers/scsi/scsi_transport_iscsi.c  |  4 +-
 drivers/scsi/scsi_transport_sas.c    |  2 +-
 drivers/scsi/sg.c                    |  4 +-
 drivers/scsi/sym53c8xx_2/sym_glue.c  |  2 +-
 drivers/scsi/sym53c8xx_2/sym_hipd.h  |  2 +-
 drivers/target/loopback/tcm_loop.c   |  2 +-
 drivers/target/target_core_pscsi.c   | 12 +++---
 drivers/usb/storage/sddr09.c         |  4 +-
 drivers/usb/storage/usb.c            | 10 +++--
 include/linux/moduleparam.h          |  5 +++
 include/scsi/scsi.h                  |  2 +-
 include/scsi/scsi_device.h           | 22 +++++-----
 include/scsi/scsi_host.h             |  6 +--
 include/scsi/scsi_transport.h        |  2 +-
 kernel/params.c                      |  1 +
 69 files changed, 322 insertions(+), 319 deletions(-)

-- 
1.7.12.4


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

end of thread, other threads:[~2014-06-25 13:27 UTC | newest]

Thread overview: 31+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-02-19  8:17 [PATCH 0/4] scsi: 64-bit LUN support Hannes Reinecke
2013-02-19  8:18 ` [PATCH 1/4] scsi_scan: Fixup scsilun_to_int() Hannes Reinecke
2013-02-19  8:18 ` [PATCH 2/4] scsi: use 64-bit LUNs Hannes Reinecke
2013-02-25 15:33   ` Steffen Maier
2013-02-25 15:52     ` Hannes Reinecke
2013-02-25 17:08     ` Douglas Gilbert
2013-02-19  8:18 ` [PATCH 3/4] scsi: use 64-bit value for 'max_luns' Hannes Reinecke
2013-02-19 16:30   ` Michael Christie
2013-02-19 16:33     ` James Bottomley
2013-02-20  6:43       ` Hannes Reinecke
2013-02-19  8:18 ` [PATCH 4/4] scsi: Remove CONFIG_SCSI_MULTI_LUN Hannes Reinecke
2013-02-21 16:15 ` [PATCH 0/4] scsi: 64-bit LUN support Elliott, Robert (Server Storage)
2013-02-21 16:32   ` James Bottomley
2013-02-25 16:02     ` Douglas Gilbert
2013-02-23  9:31   ` Hannes Reinecke
2013-03-26 18:00 ` Chad Dupuis
2013-03-26 19:03   ` Douglas Gilbert
2013-03-27  7:37   ` Hannes Reinecke
2013-03-27 11:58     ` Chad Dupuis
2013-03-29 16:32     ` Tomas Henzl
2013-03-30 16:53       ` Hannes Reinecke
2013-03-31 17:44         ` Tomas Henzl
2013-04-04 10:17           ` Hannes Reinecke
2013-04-05 15:24             ` James Smart
2013-04-08 14:06               ` Hannes Reinecke
2013-04-08 15:37               ` Tomas Henzl
2013-04-09  7:38                 ` Hannes Reinecke
2013-04-09 14:27                   ` Elliott, Robert (Server Storage)
2013-04-09 14:52                     ` Hannes Reinecke
  -- strict thread matches above, loose matches on Subject: below --
2013-02-20 13:47 [PATCH v2 " Hannes Reinecke
2013-02-20 13:47 ` [PATCH 3/4] scsi: use 64-bit value for 'max_luns' Hannes Reinecke
2014-06-25 13:27 [PATCHv5 0/4] Support 64-bit LUNs Hannes Reinecke
2014-06-25 13:27 ` [PATCH 3/4] scsi: use 64-bit value for 'max_luns' Hannes Reinecke

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).