lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20070529191347.9b1edd8b.akpm@linux-foundation.org>
Date:	Tue, 29 May 2007 19:13:47 -0700
From:	Andrew Morton <akpm@...ux-foundation.org>
To:	"Yinghai Lu" <yhlu.kernel@...il.com>
Cc:	"Vivek Goyal" <vgoyal@...ibm.com>,
	"Eric W. Biederman" <ebiederm@...ssion.com>, aacraid@...ptec.com,
	"Linux Kernel Mailing List" <linux-kernel@...r.kernel.org>,
	linux-scsi@...r.kernel.org,
	Michal Piotrowski <michal.k.k.piotrowski@...il.com>
Subject: Re: kexec and aacraid broken

On Tue, 29 May 2007 18:59:32 -0700 "Yinghai Lu" <yhlu.kernel@...il.com> wrote:

> latest tree, can not use kexec to load 2.6.22-rc3 at least.
> 
> got:
> 
> AAC0: adapter kernel panic'd fffffffd
> AAC0: adapter kernel failed to start, init status=0

One of the two diffs below, I guess.  Please do a `patch -R -p1' of this
email and retest?

> 
> but can load 2.6.21.3
> 

Michal, can you please add this to the regression list?




commit 9e4d4a5d71d673901d9c1df5146ce545c2cc0cc0
Author: Salyzyn, Mark <mark_salyzyn@...ptec.com>
Date:   Tue May 1 11:43:06 2007 -0400

    [SCSI] aacraid: superfluous adapter reset for IBM 8 series ServeRAID controllers
    
    The kexec patch introduced a superfluous (and otherwise inert) reset of
    some adapters. The register can have a hardware default value that has
    zeros for the undefined interrupts. This patch refines the test of the
    interrupt enable register to focus on only the interrupts that affect
    the driver in order to detect if an incomplete shutdown of the Adapter
    had occurred (kdump).
    
    Signed-off-by: Mark Salyzyn <aacraid@...ptec.com>
    Signed-off-by: James Bottomley <James.Bottomley@...elEye.com>

diff --git a/drivers/scsi/aacraid/rx.c b/drivers/scsi/aacraid/rx.c
index b6ee3c0..291cd14 100644
--- a/drivers/scsi/aacraid/rx.c
+++ b/drivers/scsi/aacraid/rx.c
@@ -542,7 +542,7 @@ int _aac_rx_init(struct aac_dev *dev)
 	dev->a_ops.adapter_sync_cmd = rx_sync_cmd;
 	dev->a_ops.adapter_enable_int = aac_rx_disable_interrupt;
 	dev->OIMR = status = rx_readb (dev, MUnit.OIMR);
-	if ((((status & 0xff) != 0xff) || reset_devices) &&
+	if ((((status & 0x0c) != 0x0c) || reset_devices) &&
 	  !aac_rx_restart_adapter(dev, 0))
 		++restart;
 	/*
commit a5694ec545a880f9d23463fddc894f5096cc68fa
Author: Salyzyn, Mark <mark_salyzyn@...ptec.com>
Date:   Mon Apr 30 13:22:24 2007 -0400

    [SCSI] aacraid: kexec fix (reset interrupt handler)
    
    Another layer on this onion also discovered by Duane, the
    interrupt enable handler also needed to be set ... The interrupt enable
    was called from within the synchronous command handler.
    
    Signed-off-by: Mark Salyzyn <aacraid@...ptec.com>
    Signed-off-by: James Bottomley <James.Bottomley@...elEye.com>

diff --git a/drivers/scsi/aacraid/rx.c b/drivers/scsi/aacraid/rx.c
index 0c71315..b6ee3c0 100644
--- a/drivers/scsi/aacraid/rx.c
+++ b/drivers/scsi/aacraid/rx.c
@@ -539,6 +539,8 @@ int _aac_rx_init(struct aac_dev *dev)
 	}
 
 	/* Failure to reset here is an option ... */
+	dev->a_ops.adapter_sync_cmd = rx_sync_cmd;
+	dev->a_ops.adapter_enable_int = aac_rx_disable_interrupt;
 	dev->OIMR = status = rx_readb (dev, MUnit.OIMR);
 	if ((((status & 0xff) != 0xff) || reset_devices) &&
 	  !aac_rx_restart_adapter(dev, 0))

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ