Thread (12 messages) 12 messages, 6 authors, 2021-12-27

Re: [PATCH V2] scsi:spraid: initial commit of Ramaxel spraid driver

From: Hannes Reinecke <hare@suse.de>
Date: 2021-11-29 13:06:15

On 11/26/21 8:33 AM, Yanling Song wrote:
This initial commit contains Ramaxel's spraid module.

Signed-off-by: Yanling Song <redacted>

Changes from V1:
1. Use BSG module to replace with ioctrl
2. Use author's email as MODULE_AUTHOR
3. Remove "default=m" in drivers/scsi/spraid/Kconfig
4. To be changed in the next version:
    a. Use get_unaligned_be*() in spraid_setup_rw_cmd();
    b. Use pr_debug() instead of introducing dev_log_dbg().

---
  Documentation/scsi/spraid.rst     |   16 +
  MAINTAINERS                       |    7 +
  drivers/scsi/Kconfig              |    1 +
  drivers/scsi/Makefile             |    1 +
  drivers/scsi/spraid/Kconfig       |   10 +
  drivers/scsi/spraid/Makefile      |    7 +
  drivers/scsi/spraid/spraid.h      |  693 ++++++
  drivers/scsi/spraid/spraid_main.c | 3328 +++++++++++++++++++++++++++++
  8 files changed, 4063 insertions(+)
  create mode 100644 Documentation/scsi/spraid.rst
  create mode 100644 drivers/scsi/spraid/Kconfig
  create mode 100644 drivers/scsi/spraid/Makefile
  create mode 100644 drivers/scsi/spraid/spraid.h
  create mode 100644 drivers/scsi/spraid/spraid_main.c
Hmm.
This entire thing looks like an NVMe controller which is made to look 
like a SCSI controller.
It even uses most of the NVMe structures.
And from what I've seen there is not much SCSI specific in here; I/O and 
queue setup is pretty much what every NVMe controller does.
So why not make it a true NVMe controller?
Yes, you would need to discuss with the NVMe folks on how a RAID 
controller should look like in NVMe terms.
But overall I guess the driver would be far smaller and possibly easier 
to maintain.

So where's the benefit having it as a SCSI driver (apart from the fact 
that is allows you to side-step having to discuss the interface with 
NVMexpress.org ...)?
Or, to put it the other way round: Is there anything SCSI specific which 
would prevent such an approach?

Cheers,

Hannes
-- 
Dr. Hannes Reinecke [off-list ref]
<insert signature here>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help