Re: [patch] add scsi changer driver

2005-03-07 Thread Gerd Knorr
On Sun, Mar 06, 2005 at 07:55:25PM +0200, James Bottomley wrote:
 Looking through this, the only things I really noticed that need work
 are:
 
 ch_do_scsi():  It looks like this has an effective reimplementation of
 scsi_wait_req.  We're trying to deprecate the usage of scsi_do_req so we
 can make it private eventually.  What's the reason you can't use
 scsi_wait_req?

Probably historical reasons, I havn't tracked the scsi layer changes for
quite some time, so this might simply be a 2.6 cleanup I've missed
because of that.  Will check ...

 ch_ioctl() (and the compat): since this is a new driver, can't this all
 be done via sysfs?  That way, the user would be able to manipulate it
 from the command line, and we'd no longer need any of the 32-64 compat
 glue.

Well, it isn't new, it already exists for many years, just not living in
mainline (which I finally want to change now ...).

  Gerd

-- 
#define printk(args...) fprintf(stderr, ## args)
-
To unsubscribe from this list: send the line unsubscribe linux-scsi in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [ANNOUNCE 3/6] Open-iSCSI High-Performance Initiator for Linux

2005-03-07 Thread Alexey Dobriyan
On Monday 07 March 2005 09:15, Alex Aizman wrote:
   drivers/scsi/Kconfig changes.

 --- linux-2.6.11.orig/drivers/scsi/Kconfig
 +++ linux-2.6.11.dima/drivers/scsi/Kconfig

 +config ISCSI_IF
 + tristate iSCSI Open Transport Interface
 + depends on SCSI  INET
 + ---help---
 + To compile this driver as a module, choose M here: the
 + module will be called iscsi_if.
 +
 + This driver manages multiple iSCSI transports. This module is required
 + for normal iscsid operation.
 +
 + See more detailed information here:
 +
 + http://www.open-iscsi.org

To compile this driver as a module ... boilerplate usually goes at the end
of description. Help text is indented with 2 spaces wrt ---help---:

---help---
  This driver manages multiple iSCSI transports. ...

Alexey
-
To unsubscribe from this list: send the line unsubscribe linux-scsi in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [ANNOUNCE 2/6] Open-iSCSI High-Performance Initiator for Linux

2005-03-07 Thread Alexey Dobriyan
On Monday 07 March 2005 09:12, Alex Aizman wrote:
   Common header files:
   - iscsi_ifev.h (user/kernel events).
   - iscsi_if.h (iSCSI open interface over netlink);
   - iscsi_proto.h (RFC3720 #defines and types);

 --- linux-2.6.11.orig/include/scsi/iscsi_if.h
 +++ linux-2.6.11.dima/include/scsi/iscsi_if.h

 +/**
 + * struct iscsi_transport - down calls
 + *
 + * @name: transport name
 + * @caps: iSCSI Data-Path capabilities
 + * @create_snx: create new iSCSI session object
 + * @destroy_snx: destroy existing iSCSI session object
 + * @create_cnx: create new iSCSI connection
 + * @bind_cnx: associate this connection with existing iSCSI session and
 + *specified transport descriptor
 + * @destroy_cnx: destroy inactive iSCSI connection
 + * @set_param: set iSCSI Data-Path operational parameter
 + * @start_cnx: set connection to be operational
 + * @stop_cnx: suspend connection
 + * @send_pdu: send iSCSI PDU, Login, Logout, NOP-Out, Reject, Text.
 + *
 + * API provided by generic iSCSI Data Path module
 + */
 +struct iscsi_transport {
 + char*name;
 + unsigned intcaps;
 + unsigned intmax_cnx;
 + iscsi_snx_h (*create_session) (iscsi_snx_h cp_snx,
 + uint32_t initial_cmdsn, uint32_t *sid);
 + void (*destroy_session) (iscsi_snx_h dp_snx);
 + iscsi_cnx_h (*create_cnx) (iscsi_snx_h dp_snx, iscsi_cnx_h cp_cnx,
 + uint32_t cid);
 + int (*bind_cnx) (iscsi_snx_h dp_snx, iscsi_cnx_h dp_cnx,
 + uint32_t transport_fd, int is_leading);
 + int (*start_cnx) (iscsi_cnx_h dp_cnx);
 + void (*stop_cnx) (iscsi_cnx_h dp_cnx);
 + void (*destroy_cnx) (iscsi_cnx_h dp_cnx);
 + int (*set_param) (iscsi_cnx_h dp_cnx, iscsi_param_e param,
 +   uint32_t value);
 + int (*send_pdu) (iscsi_cnx_h dp_cnx, struct iscsi_hdr *hdr,
 +  char *data, uint32_t data_size);
 +};

create_snx  in comment but not in structure
destroy_snx in comment but not in structure

destroy_session in structure but not in comment
create_session  in structure but not in comment
max_cnx in structure but not in comment

Alexey
-
To unsubscribe from this list: send the line unsubscribe linux-scsi in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [patch 10/11] drivers/scsi/: Use the DMA_{64,32}BIT_MASK constants

2005-03-07 Thread Matthew Wilcox
On Mon, Mar 07, 2005 at 05:14:16AM -0500, Jes Sorensen wrote:
  domen == domen  [EMAIL PROTECTED] writes:
 
 domen Use the DMA_{64,32}BIT_MASK constants from dma-mapping.h when
 domen calling pci_set_dma_mask() or pci_set_consistent_dma_mask() See
 domen http://marc.theaimsgroup.com/?t=10800199301r=1w=2 for
 domen details
 
 Why?
 
 It's ugly and really serves no purpose except for obfuscation.

We've had drivers with typos.  Missing one f suddenly causes all your
memory to come from ZONE_DMA.  Having an extra f causes your driver to
work ... most of the time on machines with 4GB ram.  Sure, your driver
doesn't, but when looking over a lot of drivers, it's easier if everyone's
using the same macros.

-- 
Next the statesmen will invent cheap lies, putting the blame upon 
the nation that is attacked, and every man will be glad of those
conscience-soothing falsities, and will diligently study them, and refuse
to examine any refutations of them; and thus he will by and by convince 
himself that the war is just, and will thank God for the better sleep 
he enjoys after this process of grotesque self-deception. -- Mark Twain
-
To unsubscribe from this list: send the line unsubscribe linux-scsi in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [patch 10/11] drivers/scsi/: Use the DMA_{64,32}BIT_MASK constants

2005-03-07 Thread Jes Sorensen
 Matthew == Matthew Wilcox [EMAIL PROTECTED] writes:

Matthew On Mon, Mar 07, 2005 at 05:14:16AM -0500, Jes Sorensen wrote:
  domen == domen [EMAIL PROTECTED] writes:
 
domen Use the DMA_{64,32}BIT_MASK constants from dma-mapping.h when
domen calling pci_set_dma_mask() or pci_set_consistent_dma_mask() See
domen http://marc.theaimsgroup.com/?t=10800199301r=1w=2 for
domen details
 It's ugly and really serves no purpose except for obfuscation.

Matthew We've had drivers with typos.  Missing one f suddenly causes
Matthew all your memory to come from ZONE_DMA.  Having an extra f
Matthew causes your driver to work ... most of the time on machines
Matthew with 4GB ram.  Sure, your driver doesn't, but when looking
Matthew over a lot of drivers, it's easier if everyone's using the
Matthew same macros.

If these were the only two masks ever used I'd agree with you. However
there's several other in use and more will probably be added, so we're
going to end up with drivers sometimes using constants and other times
hex values causing an even bigger mess ;-(

Cheers,
Jes
-
To unsubscribe from this list: send the line unsubscribe linux-scsi in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


FW: [patch 1/1] block/cciss: replace schedule_timeout() with msleep()

2005-03-07 Thread Miller, Mike (OS Dev)
 -Original Message-
 From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] 
 Sent: Saturday, March 05, 2005 4:45 PM
 To: Miller, Mike (OS Dev)
 Cc: ISS StorageDev; [EMAIL PROTECTED]; [EMAIL PROTECTED]
 Subject: [patch 1/1] block/cciss: replace schedule_timeout() 
 with msleep()
 
 
 
 
 I used msleep(10) here under the presumption that the 
 schedule_timeout(1) was written assuming that HZ=100 (as it 
 used to be), which is equivalent to 10 milliseconds. If the 
 desire is actually for 1 ms or the minimal sleep interval, 
 then the patch can be changed appropriately. A similar 
 assumption as to the constant delay value was made in the 
 other replacement, which can also be appropriately adjusted.
 
 Change the delay logic in pollcomplete() to use msleep() and 
 time_before(). Instead of assuming schedule_timeout() will 
 sleep exactly as requested, use msleep(10) to guarantee 
 minimally 10 millisecond increments and
 time_before() to guarantee stopping the loop as close to 20 
 seconds as possible.
 Also changes another occurrence of schedule_timeout() to msleep().
 TASK_INTERRUPTIBLE is used in this case, but signals are not handled. 
 
 Signed-off-by: Nishanth Aravamudan [EMAIL PROTECTED]
 Acked-by: Mike Miller [EMAIL PROTECTED]
 Signed-off-by: Domen Puncer [EMAIL PROTECTED]

Please consider the following patch for inclusion.

Thanks,
mikem 


 ---
 
 
  kj-domen/drivers/block/cciss.c |   17 +++--
  1 files changed, 7 insertions(+), 10 deletions(-)
 
 diff -puN drivers/block/cciss.c~msleep-drivers_block_cciss 
 drivers/block/cciss.c
 --- kj/drivers/block/cciss.c~msleep-drivers_block_cciss
 2005-03-05 16:10:44.0 +0100
 +++ kj-domen/drivers/block/cciss.c 2005-03-05 
 16:10:44.0 +0100
 @@ -1702,17 +1702,15 @@ static int cciss_revalidate(struct 
 gendi  static unsigned long pollcomplete(int ctlr)  {
unsigned long done;
 -  int i;
 +  unsigned long end_jiffies = jiffies + 20 * HZ;
  
/* Wait (up to 20 seconds) for a command to complete */
 -
 -  for (i = 20 * HZ; i  0; i--) {
 +  while (time_before(jiffies,end_jiffies)) {
done = hba[ctlr]-access.command_completed(hba[ctlr]);
 -  if (done == FIFO_EMPTY) {
 -  set_current_state(TASK_UNINTERRUPTIBLE);
 -  schedule_timeout(1);
 -  } else
 -  return (done);
 +  if (done == FIFO_EMPTY)
 +  msleep(10);
 +  else
 +  return done;
}
/* Invalid address to tell caller we ran out of time */
return 1;
 @@ -2486,8 +2484,7 @@ static int cciss_pci_init(ctlr_info_t *c
if (!(readl(c-vaddr + SA5_DOORBELL)  
 CFGTBL_ChangeReq))
break;
/* delay and try again */
 -  set_current_state(TASK_INTERRUPTIBLE);
 -  schedule_timeout(10);
 +  msleep(100);
}   
  
  #ifdef CCISS_DEBUG
 _
 
-
To unsubscribe from this list: send the line unsubscribe linux-scsi in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [patch 02/11] scsi/st: replace schedule_timeout() with msleep_interruptible()

2005-03-07 Thread Kai Makisara
On Sun, 6 Mar 2005 [EMAIL PROTECTED] wrote:

 
 
 Use msleep_interruptible() instead of
 schedule_timeout() to guarantee the task delays as expected.
 
This patch is already in the scsi-misc-2.6 tree merged into one of the st 
patches.

Thanks for the reminder and the patch.

-- 
Kai
-
To unsubscribe from this list: send the line unsubscribe linux-scsi in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH] m68k link error and NCR5380_exit()

2005-03-07 Thread Brad Boyer
On Tue, Mar 08, 2005 at 12:45:28AM +1100, Finn Thain wrote:
 Having qla1280.c as a guide will help, thanks. My next question is, what 
 does a NuBus architecture do in place of pci_(un)register_driver?

Eventually, you should use macio_(un)register_driver. However, I
don't have the support quite finished for mac68k. If I get some
time to work on it, I have most of the code written. It's close
enough that it should work on nubus-pmac, and I passed some
preliminary versions of the code off to them.

 My main reservation about embarking on this is that I don't think mac_scsi 
 ever actually worked under 2.6 (or 2.5?) kernels. I'm not competent enough 
 to submit a good, untested patch for a broken driver. Maybe the best thing 
 is to make it work before worrying about style. At least then I can test 
 my work.

I certainly never got it to work, but I only tried on my IIfx which
doesn't have exactly the same version of the chip anyway.

 To that end, I've included a boot log below. Maybe someone familiar with 
 the NCR5380 driver can make some sense of the failure?

Looks to me like the interrupt came in after the driver already
decided to give up for some reason. I had a big problem with that
while I was trying to fix the driver to use DMA on the IIfx. I
never did get it to give me the interrupt for dma completion
before the scsi mid layer timed out.

Brad Boyer
[EMAIL PROTECTED]

-
To unsubscribe from this list: send the line unsubscribe linux-scsi in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


RE: [patch 10/11] drivers/scsi/: Use the DMA_{64,32}BIT_MASK cons tants

2005-03-07 Thread Ju, Seokmann
On Sunday, March 06, 2005 5:27 PM, Domen wrote
 Use the DMA_{64,32}BIT_MASK constants from dma-mapping.h
 when calling pci_set_dma_mask() or pci_set_consistent_dma_mask()
Megaraid driver has this change and patch for this will be submitted as
committed.

Thanks,

Seokmann
LSI Logic Corporation
-
To unsubscribe from this list: send the line unsubscribe linux-scsi in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


RE: [patch 05/11] drivers/scsi/*: convert to pci_register_driver

2005-03-07 Thread Ju, Seokmann
On Sunday, March 06, 2005 5:27 PM, Domen wrote:
 diff -puN drivers/scsi/megaraid.c~pci_register_driver-drivers_scsi
 drivers/scsi/megaraid.c
 --- kj/drivers/scsi/megaraid.c~pci_register_driver-drivers_scsi
2005-03-
 05 16:12:48.0 +0100
 +++ kj-domen/drivers/scsi/megaraid.c  2005-03-05 16:12:49.0
 +0100
 @@ -5079,7 +5079,7 @@ static int __init megaraid_init(void)
   megaraid: failed to create megaraid
root\n);
   }
  #endif
 - error = pci_module_init(megaraid_pci_driver);
 + error = pci_register_driver(megaraid_pci_driver);
   if (error) {
  #ifdef CONFIG_PROC_FS
   remove_proc_entry(megaraid, proc_root);
Thank you for help.
The driver will be modified accordingly.

Seokmann 
LSI Logic Corporation

kernel.org/majordomo-info.html
-
To unsubscribe from this list: send the line unsubscribe linux-scsi in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH] SCSI tape fixes: sense descriptor init, bsf-weof, blkno, debugging

2005-03-07 Thread Kai Makisara
The patch at the end of this message applies to 2.6.11 + st descriptor sense
patch + st auto eof patch (i.e., st patches currently in scsi-misc-2.6). The
patch fixes the following problems:

- the sense descriptor is cleared before filling
- BSF and BSFM are added to the commands causing automatic writing of filemark
  if the previous operation was write (tar expects this)
- the block number is set to unknown (-1) if spacing forward ends at BLANK CHECK
- debugging printout of spacing counts fixed to work also with 64-bit systems

Signed-off-by: Kai Makisara [EMAIL PROTECTED]

--- linux-2.6.11-k1/drivers/scsi/st.c   2005-03-07 19:38:45.0 +0200
+++ linux-2.6.11-k2/drivers/scsi/st.c   2005-03-07 21:59:24.0 +0200
@@ -17,7 +17,7 @@
Last modified: 18-JAN-1998 Richard Gooch [EMAIL PROTECTED] Devfs support
  */
 
-static char *verstr = 20050213;
+static char *verstr = 20050307;
 
 #include linux/module.h
 
@@ -268,6 +268,7 @@ static void st_analyze_sense(struct scsi
const u8 *ucp;
const u8 *sense = SRpnt-sr_sense_buffer;
 
+   memset(s, 0, sizeof(struct st_cmdstatus));
s-have_sense = scsi_request_normalize_sense(SRpnt, s-sense_hdr);
 
if (s-have_sense) {
@@ -287,8 +288,6 @@ static void st_analyze_sense(struct scsi
ucp = scsi_sense_desc_find(sense, 
SCSI_SENSE_BUFFERSIZE, 4);
s-flags = ucp ? (ucp[3]  0xe0) : 0;
break;
-   default:
-   s-flags = 0;
}
}
 }
@@ -306,7 +305,7 @@ static int st_chk_result(struct scsi_tap
if (!result)
return 0;
 
-   cmdstatp = STp-buffer-cmdstat;
+   cmdstatp = STp-buffer-cmdstat;
st_analyze_sense(STp-buffer-last_SRpnt, cmdstatp);
 
if (cmdstatp-have_sense)
@@ -2407,6 +2406,22 @@ static int do_load_unload(struct scsi_ta
return retval;
 }
 
+#if DEBUG
+#define ST_DEB_FORWARD  0
+#define ST_DEB_BACKWARD 1
+static void deb_space_print(char *name, int direction, char *units, unsigned 
char *cmd)
+{
+   s32 sc;
+
+   sc = cmd[2]  0x80 ? 0xff00 : 0;
+   sc |= (cmd[2]  16) | (cmd[3]  8) | cmd[4];
+   if (direction)
+   sc = -sc;
+   printk(ST_DEB_MSG %s: Spacing tape %s over %d %s.\n, name,
+  direction ? backward : forward, sc, units);
+}
+#endif
+
 
 /* Internal ioctl function */
 static int st_int_ioctl(struct scsi_tape *STp, unsigned int cmd_in, unsigned 
long arg)
@@ -2445,8 +2460,7 @@ static int st_int_ioctl(struct scsi_tape
cmd[2] = (arg  16);
cmd[3] = (arg  8);
cmd[4] = arg;
-DEBC(printk(ST_DEB_MSG %s: Spacing tape forward over %d 
filemarks.\n,
-   name, cmd[2] * 65536 + cmd[3] * 256 + cmd[4]));
+DEBC(deb_space_print(name, ST_DEB_FORWARD, filemarks, cmd);)
if (fileno = 0)
fileno += arg;
blkno = 0;
@@ -2461,14 +2475,7 @@ static int st_int_ioctl(struct scsi_tape
cmd[2] = (ltmp  16);
cmd[3] = (ltmp  8);
cmd[4] = ltmp;
-DEBC(
- if (cmd[2]  0x80)
-   ltmp = 0xff00;
- ltmp = ltmp | (cmd[2]  16) | (cmd[3]  8) | cmd[4];
- printk(ST_DEB_MSG
-%s: Spacing tape backward over %ld filemarks.\n,
-name, (-ltmp));
-   )
+DEBC(deb_space_print(name, ST_DEB_BACKWARD, filemarks, cmd);)
if (fileno = 0)
fileno -= arg;
blkno = (-1);   /* We can't know the block number */
@@ -2480,8 +2487,7 @@ static int st_int_ioctl(struct scsi_tape
cmd[2] = (arg  16);
cmd[3] = (arg  8);
cmd[4] = arg;
-DEBC(printk(ST_DEB_MSG %s: Spacing tape forward %d 
blocks.\n, name,
-  cmd[2] * 65536 + cmd[3] * 256 + cmd[4]));
+DEBC(deb_space_print(name, ST_DEB_FORWARD, blocks, cmd);)
if (blkno = 0)
blkno += arg;
at_sm = (arg == 0);
@@ -2493,13 +2499,7 @@ static int st_int_ioctl(struct scsi_tape
cmd[2] = (ltmp  16);
cmd[3] = (ltmp  8);
cmd[4] = ltmp;
-DEBC(
- if (cmd[2]  0x80)
-  ltmp = 0xff00;
- ltmp = ltmp | (cmd[2]  16) | (cmd[3]  8) | cmd[4];
- printk(ST_DEB_MSG
-%s: Spacing tape backward %ld blocks.\n, name, 
(-ltmp));
-   )
+DEBC(deb_space_print(name, ST_DEB_BACKWARD, blocks, cmd);)
if (blkno = 0)
blkno -= arg;
at_sm = (arg == 0);
@@ -2510,8 +2510,7 @@ static int st_int_ioctl(struct

Re: [PATCH] m68k link error and NCR5380_exit()

2005-03-07 Thread Kenn Humborg
On Mon, Mar 07, 2005 at 09:53:22AM -0800, Brad Boyer wrote:
 On Tue, Mar 08, 2005 at 12:45:28AM +1100, Finn Thain wrote:
  My main reservation about embarking on this is that I don't think mac_scsi 
  ever actually worked under 2.6 (or 2.5?) kernels. I'm not competent enough 
  to submit a good, untested patch for a broken driver. Maybe the best thing 
  is to make it work before worrying about style. At least then I can test 
  my work.
 
 I certainly never got it to work, but I only tried on my IIfx which
 doesn't have exactly the same version of the chip anyway.
 
  To that end, I've included a boot log below. Maybe someone familiar with 
  the NCR5380 driver can make some sense of the failure?
 
 Looks to me like the interrupt came in after the driver already
 decided to give up for some reason. I had a big problem with that
 while I was trying to fix the driver to use DMA on the IIfx. I
 never did get it to give me the interrupt for dma completion
 before the scsi mid layer timed out.

It broke in 2.6.9 for us Linux/VAX guys.

Try the NCR5380_set_timer() change from this patch:

   http://www.mail-archive.com/linux-scsi@vger.kernel.org/msg01499.html

Later,
Kenn
 
-
To unsubscribe from this list: send the line unsubscribe linux-scsi in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[ANNOUNCE][PATCH 2.6.11 1/3] megaraid_sas: Announcing new module for LSI Logic's SAS based MegaRAID controllers

2005-03-07 Thread Bagalkote, Sreenivas
Hello All,

We are announcing a driver for LSI Logic's new SAS based MegaRAID 
controllers. I am submitting the inlined patch in three parts. Please
review the patches.


Thank you,
Sreenivas Bagalkote
LSI Logic Corporation

Patch 1 of 3:

Signed-off-by: Sreenivas Bagalkote [EMAIL PROTECTED]

diff -Naur linux-2.6.11-orig/Documentation/scsi/ChangeLog.megaraid_sas
linux-2.6.11/Documentation/scsi/ChangeLog.megaraid_sas
--- linux-2.6.11-orig/Documentation/scsi/ChangeLog.megaraid_sas 1969-12-31
19:00:00.0 -0500
+++ linux-2.6.11/Documentation/scsi/ChangeLog.megaraid_sas  2005-03-05
21:18:08.745716776 -0500
@@ -0,0 +1,9 @@
+Release Date   : Fri Mar  4 21:06:57 EST 2005
+Released by: Sreenivas Bagalkote ([EMAIL PROTECTED])
+Current Version: 00.00.01.00
+Older Version  : NA
+
+1. Initial announcement to community - Module for LSI Logic's SAS based
+   RAID controllers.
+
+
diff -Naur linux-2.6.11-orig/drivers/scsi/Kconfig
linux-2.6.11/drivers/scsi/Kconfig
--- linux-2.6.11-orig/drivers/scsi/Kconfig  2005-03-02
02:38:25.0 -0500
+++ linux-2.6.11/drivers/scsi/Kconfig   2005-03-05 21:18:56.538451176 -0500
@@ -404,6 +404,7 @@
  module will be called in2000.
 
 source drivers/scsi/megaraid/Kconfig.megaraid
+source drivers/scsi/megaraid/Kconfig.megaraid_sas
 
 config SCSI_SATA
bool Serial ATA (SATA) support
diff -Naur linux-2.6.11-orig/drivers/scsi/Makefile
linux-2.6.11/drivers/scsi/Makefile
--- linux-2.6.11-orig/drivers/scsi/Makefile 2005-03-02
02:38:19.0 -0500
+++ linux-2.6.11/drivers/scsi/Makefile  2005-03-05 21:19:14.806673984 -0500
@@ -97,6 +97,7 @@
 obj-$(CONFIG_SCSI_DC390T)  += tmscsim.o
 obj-$(CONFIG_MEGARAID_LEGACY)  += megaraid.o
 obj-$(CONFIG_MEGARAID_NEWGEN)  += megaraid/
+obj-$(CONFIG_MEGARAID_SAS) += megaraid/
 obj-$(CONFIG_SCSI_ACARD)   += atp870u.o
 obj-$(CONFIG_SCSI_SUNESP)  += esp.o
 obj-$(CONFIG_SCSI_GDTH)+= gdth.o
diff -Naur linux-2.6.11-orig/drivers/scsi/megaraid/Kconfig.megaraid_sas
linux-2.6.11/drivers/scsi/megaraid/Kconfig.megaraid_sas
--- linux-2.6.11-orig/drivers/scsi/megaraid/Kconfig.megaraid_sas
1969-12-31 19:00:00.0 -0500
+++ linux-2.6.11/drivers/scsi/megaraid/Kconfig.megaraid_sas 2005-03-05
21:27:37.628233488 -0500
@@ -0,0 +1,9 @@
+config MEGARAID_SAS
+   tristate LSI Logic MegaRAID SAS RAID module (New Driver)
+   depends on PCI  SCSI
+   help
+   Module for LSI Logic's SAS based RAID controllers.
+   To compile this driver as a module, choose 'm' here.
+   Module will be called megaraid_sas
+
+
diff -Naur linux-2.6.11-orig/drivers/scsi/megaraid/Makefile
linux-2.6.11/drivers/scsi/megaraid/Makefile
--- linux-2.6.11-orig/drivers/scsi/megaraid/Makefile2005-03-02
02:38:26.0 -0500
+++ linux-2.6.11/drivers/scsi/megaraid/Makefile 2005-03-05
21:27:40.0 -0500
@@ -1,2 +1,3 @@
 obj-$(CONFIG_MEGARAID_MM)  += megaraid_mm.o
 obj-$(CONFIG_MEGARAID_MAILBOX) += megaraid_mbox.o
+obj-$(CONFIG_MEGARAID_SAS) += megaraid_sas.o




-
To unsubscribe from this list: send the line unsubscribe linux-scsi in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [RFC] adding per scsi-host workqueues for defered processing

2005-03-07 Thread Andrew Vasquez
On Sat, 05 Mar 2005, [EMAIL PROTECTED] wrote:

 In thinking this through a little further - if the workq is just
 for the transport, the transport ought to simply create and use
 the workq. There would be no need to modify the host structure.
 
 If we're trying to avoid the potential for several workq's on a
 per-host basis (one by the transport, another by the LLDD, another
 for ?) - the idea of one in the host is worth while.


Yes, that was the general idea -- reduce the number of worker-threads
contending for the same shost resource.  In also thinking a bit more
about this subject, I wonder if there are truly many other (useful)
purposes for a generic 'deferred' work_q at the shost level, other
than for scanning.  

There were some background tasks I shelved until the remote-ports
stuff settled down which I thought could use the deferred processing
thread:

* Initiate LIP -- several customers have asked for this ability as
  several topological configurations isolate disruptive FC events.
* Initiate LLDD rescan (i.e. ports (fibre channel), devices (iSCSI),
  etc.)

I had originally envisioned these functions residing in the transport.


 However, it
 should always be allocated and available. No create flag should
 be needed.
 

Not to sure about that -- a large percentage of drivers would not
(currently) benefit from having a deferred work_q created for each
shost instance it registered.  

--
AV
-
To unsubscribe from this list: send the line unsubscribe linux-scsi in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html