Subject: Re: port-alpha/36628: cdhdtape image panics with memory management
To: None <tsutsui@NetBSD.org, gnats-admin@netbsd.org,>
From: Izumi Tsutsui <tsutsui@ceres.dti.ne.jp>
List: netbsd-bugs
Date: 07/26/2007 14:35:02
The following reply was made to PR port-alpha/36628; it has been noted by GNATS.
From: Izumi Tsutsui <tsutsui@ceres.dti.ne.jp>
To: ChristophFranzen@gmx.net
Cc: gnats-bugs@NetBSD.org, tsutsui@ceres.dti.ne.jp
Subject: Re: port-alpha/36628: cdhdtape image panics with memory management
trap on Jensen
Date: Thu, 26 Jul 2007 23:31:14 +0900
ChristophFranzen@gmx.net wrote:
> ahb0 at eisa0 slot 2: Adaptec AHA-1742A SCSI
> panic: jensenio_eisa_intr_map: bogus IRQ 9114572
Umm. sys/arch/alpha/jensenio/jensenio_intr.c:jensenio_eisa_intr_map()
seems to check a wrong (uninitialized) arg. (How did it work before!?)
Please try again:
http://www.ceres.dti.ne.jp/~tsutsui/netbsd/cdhdtape-GENERIC-20070726.gz
Index: jensenio/jensenio_intr.c
===================================================================
RCS file: /cvsroot/src/sys/arch/alpha/jensenio/jensenio_intr.c,v
retrieving revision 1.5
diff -u -r1.5 jensenio_intr.c
--- jensenio/jensenio_intr.c 24 Dec 2005 20:06:46 -0000 1.5
+++ jensenio/jensenio_intr.c 26 Jul 2007 14:12:38 -0000
@@ -167,12 +167,14 @@
jensenio_eisa_intr_map(void *v, u_int eirq, eisa_intr_handle_t *ihp)
{
- if (*ihp >= JENSEN_MAX_IRQ)
- panic("jensenio_eisa_intr_map: bogus IRQ %d", *ihp);
+ if (eirq >= JENSEN_MAX_IRQ) {
+ printf("%s: bogus IRQ %d\n", __func__, eirq);
+ *ihp = -1;
+ return (1);
+ }
if (jensenio_intr_deftype[eirq] == IST_UNUSABLE) {
- printf("jensenio_eisa_intr_map: unusable irq %d\n",
- eirq);
+ printf("%s: unusable irq %d\n", __func__, eirq);
*ihp = -1;
return (1);
}
---
Izumi Tsutsui