Hello Greg, Thanks for taking out time to review the patch. Please find my replies inlined... Will post the next patch for modifications soon. > -----Original Message----- > From: Greg KH [mailto:greg@xxxxxxxxx] > Sent: Tuesday, January 19, 2016 11:42 PM > To: Singhal, Maneesh > Cc: linux-scsi@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; > JBottomley@xxxxxxxx; martin.petersen@xxxxxxxxxx; linux- > api@xxxxxxxxxxxxxxx > Subject: Re: [PATCH] drivers/scsi/emcctd: drivers/scsi/emcctd: Client > driver implementation for EMC-Symmetrix GuestOS emulated Cut- > Through Device > > On Tue, Jan 19, 2016 at 11:58:06AM +0000, Singhal, Maneesh wrote: > > Hello, > > Kindly review the following patch for the following driver to be > added > > in SCSI subsystem - > > > > Regards > > Maneesh > > > > ---------------------------------------------------------------------- > > ------ > > >From f3c4b836d6f130b1d7ded618002c8164f8f4a06d Mon Sep 17 > 00:00:00 > > >2001 > > From: "maneesh.singhal" <maneesh.singhal@xxxxxxx> > > Date: Tue, 19 Jan 2016 06:39:35 -0500 > > Subject: [PATCH] [PATCH] drivers/scsi/emcctd: Client driver > > implementation for EMC-Symmetrix GuestOS emulated Cut- > Through Device. > > > > The patch is a driver implementation EMC-Symmetrix GuestOS > emulated > > Cut-Through Device. The Cut-Through Device PCI emulation is > > implemented for GuestOS environments in the HyperMax OS. > GuestOS > > environments allows loading of any x86 compliant operating systems > like Linux/FreeBSD etc. > > > > The client driver is a SCSI HBA implementation which interfaces with > > SCSI midlayer in the north-bound interfaces and connects with the > > emulated PCI device on the south side. > > > > The PCI vendor ID:product ID for emulated Cut-Through Device is > 0x1120:0x1B00. > > > > Signed-off-by: maneesh.singhal <maneesh.singhal@xxxxxxx> > > --- > > Documentation/scsi/emcctd.txt | 57 + > > MAINTAINERS | 9 + > > drivers/scsi/Kconfig | 1 + > > drivers/scsi/Makefile | 1 + > > drivers/scsi/emcctd/Kconfig | 7 + > > drivers/scsi/emcctd/Makefile | 1 + > > drivers/scsi/emcctd/README | 10 + > > drivers/scsi/emcctd/emc_ctd_interface.h | 386 +++++ > > drivers/scsi/emcctd/emcctd.c | 2840 > +++++++++++++++++++++++++++++++ > > drivers/scsi/emcctd/emcctd.h | 232 +++ > > 10 files changed, 3544 insertions(+) > > create mode 100644 Documentation/scsi/emcctd.txt create mode > 100644 > > drivers/scsi/emcctd/Kconfig create mode 100644 > > drivers/scsi/emcctd/Makefile create mode 100644 > > drivers/scsi/emcctd/README create mode 100644 > > drivers/scsi/emcctd/emc_ctd_interface.h > > create mode 100644 drivers/scsi/emcctd/emcctd.c create mode > 100644 > > drivers/scsi/emcctd/emcctd.h > > > > diff --git a/Documentation/scsi/emcctd.txt > > b/Documentation/scsi/emcctd.txt new file mode 100644 index > > 0000000..bcafc87 > > --- /dev/null > > +++ b/Documentation/scsi/emcctd.txt > > @@ -0,0 +1,56 @@ > > +This file contains brief information about the EMC Cut-Through > Driver (emcctd). > > +The driver is currently maintained by Singhal, Maneesh > > +(maneesh.singhal@xxxxxxx) > > + > > +Last modified: Mon Jan 18 2016 by Maneesh Singhal > > + > > +BASICS > > + > > +Its a client driver implementation for EMC-Symmetrix GuestOS > emulated > > +Cut-Through Device. The Cut-Through Device PCI emulation is > > +implemented for GuestOS environments in the HyperMax OS. > GuestOS > > +environments allows loading of any x86 compliant operating > systems like Linux/FreeBSD etc. > > + > > +The client driver is a SCSI HBA implementation which interfaces with > > +SCSI midlayer in the north-bound interfaces and connects with the > > +emulated PCI device on the south side. > > + > > +The PCI vendor ID:product ID for emulated Cut-Through Device is > 0x1120:0x1B00. > > + > > +VERSIONING > > + > > +The Version of the driver is maintained as 2.0.0.X, where 2 refers to > > +the CTD protocol in use, and X refers to the ongoing version of the > driver. > > + > > + > > +SYSFS SUPPORT > > + > > +The driver creates the directory /sys/module/emcctd and > populates it > > +with version file and a directory for various parameters as described > > +in MODULE PARAMETERS section. > > + > > +PROCFS SUPPORT > > + > > +The driver creates the directory /proc/emc and creates files > > +emcctd_stats_x where 'x' refers to the PCI emulation number this > client driver connected to. > > +These files cotains WWN information and IO statistics for the > > +particular PCI emulation. > > No, no driver should be adding proc files, please use sysfs or debugfs > for debugging things. [MS>] Sure. > > > +MODULE PARAMETERS > > No driver should be using module parameters anymore, again, please > use the correct interfaces. > [MS>] Yes got that > > + > > +The supported parameters which could add debuggability or change > the > > +runtime behavior of the driver are as following: > > + > > +ctd_debug=0 | 1 Enable driver debug messages(0=off, > 1=on) > > Use the dynamic debugging interface, don't make a custom one just > for your tiny, single, driver. > [MS>] Sure. Will fix this. > > + > > +max_luns=xx Specify the maximum number of LUN's > per > > + host(default=16384) > > Why can't this be dynamic? Why do you need a static number? [MS>] Will fix this > > > + > > +cmd_per_lun=xx Specify the maximum commands per > lun(default=16) > > Why do you need to change this? Why can't it be dynamic? [MS>] Yes it can be. Will fix > > > + > > +DEBUGGING HINTS > > + > > +Debugging code is now compiled in by default but debugging is > turned > > +off with the kernel module parameter debug_flag defaulting to 0. > > Again, no, use the dynamic debug interface, don't make something > "special" just for a single driver, we spent a lot of time trying to unify > everything, don't go backwards. [MS>] Sure. Thanks > > thanks, > > greg k-h -- To unsubscribe from this list: send the line "unsubscribe linux-api" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html