From ae0af9300ad4d29cc8ba0ba2979b28522244926e Mon Sep 17 00:00:00 2001 From: mark Date: Fri, 7 Nov 1997 01:04:51 +0000 Subject: [PATCH] Fix a bug in irq_release() when searching interrupt list for the handler to remove. The address of the pointer rather than the address of what is pointed to was use to track the previous handler resulting in problems when releasing a chained irq. (from John Ballance) --- sys/arch/arm32/iomd/iomd_irqhandler.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/arch/arm32/iomd/iomd_irqhandler.c b/sys/arch/arm32/iomd/iomd_irqhandler.c index 7899d09876b4..97eaedfb4d83 100644 --- a/sys/arch/arm32/iomd/iomd_irqhandler.c +++ b/sys/arch/arm32/iomd/iomd_irqhandler.c @@ -1,4 +1,4 @@ -/* $NetBSD: iomd_irqhandler.c,v 1.15 1997/10/14 11:06:01 mark Exp $ */ +/* $NetBSD: iomd_irqhandler.c,v 1.16 1997/11/07 01:04:51 mark Exp $ */ /* * Copyright (c) 1994-1996 Mark Brinicombe. @@ -337,7 +337,7 @@ irq_release(irq, handler) prehand = &irqhandlers[irq]; while (irqhand && handler != irqhand) { - prehand = &irqhand; + prehand = &irqhand->ih_next; irqhand = irqhand->ih_next; }