From 5dfe9e26eabfd080d82fd9209e3a289ac08b6fda Mon Sep 17 00:00:00 2001 From: scottl Date: Fri, 30 Jan 2004 07:04:39 +0000 Subject: Take the plunge and make this driver be INTR_FAST. This re-arranges the interrupt handler so that no locks are needed, and schedules the command completion routine with a taskqueue_fast. This also corrects the locking in the command thread and removes the need for operation flags. Simple load tests show that this is now considerably faster than FreeBSD 4.x in the SMP case when multiple i/o tasks are running. --- sys/dev/aac/aac_pci.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'sys/dev/aac/aac_pci.c') diff --git a/sys/dev/aac/aac_pci.c b/sys/dev/aac/aac_pci.c index 051a3e5..0d69364 100644 --- a/sys/dev/aac/aac_pci.c +++ b/sys/dev/aac/aac_pci.c @@ -224,7 +224,7 @@ aac_pci_attach(device_t dev) #define INTR_ENTROPY 0 #endif if (bus_setup_intr(sc->aac_dev, sc->aac_irq, - INTR_MPSAFE|INTR_TYPE_BIO|INTR_ENTROPY, aac_intr, + INTR_FAST|INTR_TYPE_BIO, aac_intr, sc, &sc->aac_intr)) { device_printf(sc->aac_dev, "can't set up interrupt\n"); goto out; -- cgit v1.1