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