From da744139fa6b36700e35e6512bada2c046ed15da Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Axel=20D=C3=B6rfler?= Date: Mon, 26 Nov 2007 21:47:22 +0000 Subject: [PATCH] Fixed setting up an interrupt using the new filter method: INTR_FAST doesn't have to be set in this case. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23001 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/libs/compat/freebsd_network/bus.c | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/src/libs/compat/freebsd_network/bus.c b/src/libs/compat/freebsd_network/bus.c index 51a11db13a..3b2fc2a245 100644 --- a/src/libs/compat/freebsd_network/bus.c +++ b/src/libs/compat/freebsd_network/bus.c @@ -296,18 +296,15 @@ bus_setup_intr(device_t dev, struct resource *res, int flags, intr->arg = arg; intr->irq = res->r_bushandle; intr->flags = flags; + intr->sem = -1; + intr->thread = -1; - if (flags & INTR_FAST) { - intr->sem = -1; - intr->thread = -1; - - if (filter != NULL) { - status = install_io_interrupt_handler(intr->irq, - (interrupt_handler)intr->filter, intr->arg, 0); - } else { - status = install_io_interrupt_handler(intr->irq, - intr_fast_wrapper, intr, 0); - } + if (filter != NULL) { + status = install_io_interrupt_handler(intr->irq, + (interrupt_handler)intr->filter, intr->arg, 0); + } else if (flags & INTR_FAST) { + status = install_io_interrupt_handler(intr->irq, + intr_fast_wrapper, intr, 0); } else { snprintf(semName, sizeof(semName), "%s intr", dev->dev_name);