Andreas Herrmann | 1 Dec 02:42 2005
Picon

[patch 0/4] zfcp bug fixes

I have a couple of bug fixes for zfcp.
Don't know whether it is too late to get them into 2.6.15.

In any case they are built against 2.6.15-rc3.

Regards,

Andreas
-
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo <at> vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Andreas Herrmann | 1 Dec 02:46 2005
Picon

[patch 1/4] zfcp: fix spinlock initialization

From: Heiko Carstens <heiko.carstens <at> de.ibm.com>

[patch 1/4] zfcp: fix spinlock initialization

Move initialization of locks and lists to adapter allocation function.
Otherwise we might end up with some uninitialized locks, like e.g. the
erp locks which only will be inititialized if an error recovery thread
for an adapter will be started.

Signed-off-by: Heiko Carstens <heiko.carstens <at> de.ibm.com>
Signed-off-by: Andreas Herrmann <aherrman <at> de.ibm.com>

diff -Nurp linux-2.6.15-rc3/drivers/s390/scsi/zfcp_aux.c linux-2.6.x/drivers/s390/scsi/zfcp_aux.c
--- linux-2.6.15-rc3/drivers/s390/scsi/zfcp_aux.c	2005-12-01 00:10:35.000000000 +0100
+++ linux-2.6.x/drivers/s390/scsi/zfcp_aux.c	2005-12-01 01:14:36.000000000 +0100
 <at>  <at>  -996,6 +996,20  <at>  <at>  zfcp_adapter_enqueue(struct ccw_device *
 	spin_lock_init(&adapter->fsf_req_list_lock);
 	INIT_LIST_HEAD(&adapter->fsf_req_list_head);

+	/* initialize debug locks */
+
+	spin_lock_init(&adapter->erp_dbf_lock);
+	spin_lock_init(&adapter->hba_dbf_lock);
+	spin_lock_init(&adapter->san_dbf_lock);
+	spin_lock_init(&adapter->scsi_dbf_lock);
+
+	/* initialize error recovery stuff */
+
+	rwlock_init(&adapter->erp_lock);
+	sema_init(&adapter->erp_ready_sem, 0);
(Continue reading)

Andreas Herrmann | 1 Dec 02:48 2005
Picon

[patch 3/4] zfcp: fix link down handling during firmware update

From: Maxim Shchetynin <maxim <at> de.ibm.com>

[patch 3/4] zfcp: fix link down handling during firmware update

Don't check link down payload in case of firmware update.

Signed-off-by: Maxim Shchetynin <maxim <at> de.ibm.com>
Signed-off-by: Andreas Herrmann <aherrman <at> de.ibm.com>

diff -Nurp linux-2.6.15-rc3/drivers/s390/scsi/zfcp_fsf.c linux-2.6.x/drivers/s390/scsi/zfcp_fsf.c
--- linux-2.6.15-rc3/drivers/s390/scsi/zfcp_fsf.c	2005-12-01 01:17:15.000000000 +0100
+++ linux-2.6.x/drivers/s390/scsi/zfcp_fsf.c	2005-12-01 01:17:53.000000000 +0100
 <at>  <at>  -554,6 +554,17  <at>  <at>  static void
 zfcp_fsf_link_down_info_eval(struct zfcp_adapter *adapter,
 			     struct fsf_link_down_info *link_down)
 {
+	if (atomic_test_mask(ZFCP_STATUS_ADAPTER_LINK_UNPLUGGED,
+	                     &adapter->status))
+		return;
+
+	atomic_set_mask(ZFCP_STATUS_ADAPTER_LINK_UNPLUGGED, &adapter->status);
+
+	if (link_down == NULL) {
+		zfcp_erp_adapter_reopen(adapter, 0);
+		return;
+	}
+
 	switch (link_down->error_code) {
 	case FSF_PSQ_LINK_NO_LIGHT:
 		ZFCP_LOG_NORMAL("The local link to adapter %s is down "
(Continue reading)

Andreas Herrmann | 1 Dec 02:50 2005
Picon

[patch 2/4] zfcp: fix adapter initialization

From: Andreas Herrmann <aherrman <at> de.ibm.com>

[patch 2/4] zfcp: fix adapter initialization

Fixed various problems in opening sequence of adapters which was previously
changed with NPIV support:
o corrected handling when exchange port data function is not supported,
  otherwise adapters on z900 cannot be opened anymore
o corrected setup of timer for exchange port data if called from error
  recovery
o corrected check of return code of exchange config data

Signed-off-by: Andreas Herrmann <aherrman <at> de.ibm.com>

 zfcp_erp.c |   89 +++++++++++++++++++++----------------------------------------
 zfcp_fsf.c |   60 +++++++++++++++++++++--------------------
 2 files changed, 64 insertions(+), 85 deletions(-)

diff -Nurp linux-2.6.15-rc3/drivers/s390/scsi/zfcp_erp.c linux-2.6.x/drivers/s390/scsi/zfcp_erp.c
--- linux-2.6.15-rc3/drivers/s390/scsi/zfcp_erp.c	2005-12-01 01:15:58.000000000 +0100
+++ linux-2.6.x/drivers/s390/scsi/zfcp_erp.c	2005-12-01 01:16:29.000000000 +0100
 <at>  <at>  -2243,29 +2243,26  <at>  <at>  zfcp_erp_adapter_strategy_close_qdio(str
 	return retval;
 }

-/*
- * function:    zfcp_fsf_init
- *
- * purpose:	initializes FSF operation for the specified adapter
- *
(Continue reading)

Andreas Herrmann | 1 Dec 02:49 2005
Picon

[patch 4/4] zfcp: fix return code of zfcp_scsi_slave_alloc

From: Andreas Herrmann <aherrman <at> de.ibm.com>

[patch 4/4] zfcp: fix return code of zfcp_scsi_slave_alloc

Change return code in slave_alloc to avoid irritating error message from
scsi_alloc_sdev() when scsi stack tries target scan.

Signed-off-by: Andreas Herrmann <aherrman <at> de.ibm.com>

diff -Nurp linux-2.6.15-rc3/drivers/s390/scsi/zfcp_scsi.c linux-2.6.x/drivers/s390/scsi/zfcp_scsi.c
--- linux-2.6.15-rc3/drivers/s390/scsi/zfcp_scsi.c	2005-10-28 02:02:08.000000000 +0200
+++ linux-2.6.x/drivers/s390/scsi/zfcp_scsi.c	2005-12-01 01:18:54.000000000 +0100
 <at>  <at>  -179,7 +179,7  <at>  <at>  zfcp_scsi_slave_alloc(struct scsi_device
 	struct zfcp_adapter *adapter;
 	struct zfcp_unit *unit;
 	unsigned long flags;
-	int retval = -ENODEV;
+	int retval = -ENXIO;

 	adapter = (struct zfcp_adapter *) sdp->host->hostdata[0];
 	if (!adapter)
-
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo <at> vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Darrick J. Wong | 1 Dec 06:57 2005
Picon

[PATCH] aic79xx should be able to ignore HostRAID enabled adapters

Hi there,

I have an IBM x346 with some Adaptec 7902 SCSI controllers; one has HostRAID
enabled in a RAID array, and the other does not.  Upon bootup, the aic79xx
driver will grab both controllers even though I'd prefer that Adaptec's a320raid
driver grab the HostRAID controller.  (When attached to the RAID array, the
aic79xx driver presents each drive in the array as a separate SCSI device.)  If
HostRAID is turned on, the PCI class code is 0x0104 (RAID) and if it's turned
off, the class code is 0x0100 (SCSI).

Unfortunately, there currently is no provision in the aic79xx driver to ignore
RAID controllers--if the PCI device/vendor IDs match, the driver takes the
controller.  The attached patch modifies the PCI probe function to ignore RAID
controllers and a module parameter "attach_HostRAID" to toggle this behavior.
If one passes "attach_HostRAID=1" to insmod, the driver will take RAID
controllers; "attach_HostRAID=0", it won't.  The default is to set it to zero.

The patch should apply cleanly against 2.6.14 and I've verified that it works
correctly on a x346 and a x226, both of which have a 7902b.  I'd appreciate a
few more eyes to look over it, and if there aren't any objections I'd like to
submit this for inclusion in mainline.

--Darrick

--------------------------
Signed-Off-By: Darrick Wong <djwong <at> us.ibm.com>

diff -Naurp orig/drivers/scsi/aic7xxx/aic79xx_osm_pci.c
linux-2.6.14.3/drivers/scsi/aic7xxx/aic79xx_osm_pci.c
--- orig/drivers/scsi/aic7xxx/aic79xx_osm_pci.c	2005-11-24 14:10:21.000000000 -0800
(Continue reading)

Jeff Garzik | 1 Dec 07:41 2005
Picon

Re: [PATCH] aic79xx should be able to ignore HostRAID enabled adapters

Darrick J. Wong wrote:
> Hi there,
> 
> I have an IBM x346 with some Adaptec 7902 SCSI controllers; one has HostRAID
> enabled in a RAID array, and the other does not.  Upon bootup, the aic79xx
> driver will grab both controllers even though I'd prefer that Adaptec's a320raid
> driver grab the HostRAID controller.  (When attached to the RAID array, the
> aic79xx driver presents each drive in the array as a separate SCSI device.)  If
> HostRAID is turned on, the PCI class code is 0x0104 (RAID) and if it's turned
> off, the class code is 0x0100 (SCSI).
> 
> Unfortunately, there currently is no provision in the aic79xx driver to ignore
> RAID controllers--if the PCI device/vendor IDs match, the driver takes the
> controller.

This is the correct behavior.  Under Linux, the driver should export 
only the underlying hardware, and nothing more.  This is how all the 
SATA controller drivers function, and this is how aic79xx functions.

Use a tool such as 'dmraid' for vendor-proprietary RAID solutions.

Your patch is therefore strongly NAK'd.

	Jeff

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

(Continue reading)

Arjan van de Ven | 1 Dec 09:08 2005

Re: [PATCH] aic79xx should be able to ignore HostRAID enabled adapters

>   Upon bootup, the aic79xx
> driver will grab both controllers even though I'd prefer that Adaptec's a320raid
> driver grab the HostRAID controller.  

where is the sourcecode for the a320raid driver?

afaik dmraid supports this format already, and if not I would urge you
to help the dmraid project to support it instead..

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

Darrick J. Wong | 1 Dec 09:22 2005
Picon

Re: [PATCH] aic79xx should be able to ignore HostRAID enabled adapters

Jeff,

Good, this was the exact response that I was hoping for, as I've been told to
convince Adaptec to drop the binary RAID drivers in favor of helping out dmraid
development instead.  That process will probably be difficult, but at least I
now have incontrovertible proof that nobody will bend over backwards to support
them and that dmraid is the way to go.  Not that I'm terribly surprised by this.

I would, however, like to apologize for all this churlishness.  Hopefully some
day I won't have to deal with these binary modules altogether, and I won't have
to resort to such methods to get vendors to Do the Right Thing(tm).

--D

(A pity that dmraid doesn't do hostraid right now, otherwise none of this would
be necessary.)

Jeff Garzik wrote:

> This is the correct behavior.  Under Linux, the driver should export
> only the underlying hardware, and nothing more.  This is how all the
> SATA controller drivers function, and this is how aic79xx functions.
> 
> Use a tool such as 'dmraid' for vendor-proprietary RAID solutions.
> 
> Your patch is therefore strongly NAK'd.
> 
>     Jeff
Hadmut Danisch | 1 Dec 11:20 2005
Picon

aic79xx and RAID ?

Hi,

I have a question about the aic79xx driver and RAID.

A friend of mine tries to install Linux on a IBM rack server machine,
which has two hard disks and a aic 7902 SCSI/RAID controller. 
He has configured both disks as a RAID1 mirror in the BIOS. 

However, when booting Linux (SuSE or Knoppix), the kernel recognizes
the controller and loads the aic79xx driver, but does not recognize
the RAID mirror. Instead it presents both disks as separate disks
/dev/sda and /dev/sdb. 

I could not find any documentation except that which comes with the
kernel (Documentation/scsi/aic79xx.txt), but it doesn't say anything
about RAID. 

Where could I find any hint about how to use RAID disks with aic7902
cards?

regards
Hadmut Danisch
-
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo <at> vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Gmane