aboutsummaryrefslogtreecommitdiff
path: root/sys/dev
diff options
context:
space:
mode:
authorConrad Meyer <cem@FreeBSD.org>2015-10-24 23:45:56 +0000
committerConrad Meyer <cem@FreeBSD.org>2015-10-24 23:45:56 +0000
commit4becebdf9edc22812a6fab3afdacc05af363dc7e (patch)
treeaaf661f24d1f0db80218c61f0491a37decb65045 /sys/dev
parentf7157235b8b436d37394e556e9811e9c7f8aa990 (diff)
downloadsrc-4becebdf9edc22812a6fab3afdacc05af363dc7e.tar.gz
src-4becebdf9edc22812a6fab3afdacc05af363dc7e.zip
ioat: Always re-arm interrupts in process_events
It doesn't hurt, even if there is nothing to do. Sponsored by: EMC / Isilon Storage Division
Notes
Notes: svn path=/head/; revision=289909
Diffstat (limited to 'sys/dev')
-rw-r--r--sys/dev/ioat/ioat.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/sys/dev/ioat/ioat.c b/sys/dev/ioat/ioat.c
index 730d2b3faad9..4daefb140227 100644
--- a/sys/dev/ioat/ioat.c
+++ b/sys/dev/ioat/ioat.c
@@ -575,10 +575,8 @@ ioat_process_events(struct ioat_softc *ioat)
ioat_log_message(3, "%s\n", __func__);
- if (status == ioat->last_seen) {
- mtx_unlock(&ioat->cleanup_lock);
- return;
- }
+ if (status == ioat->last_seen)
+ goto out;
while (1) {
desc = ioat_get_ring_entry(ioat, ioat->tail);
@@ -602,6 +600,7 @@ ioat_process_events(struct ioat_softc *ioat)
ioat_timer_callback, ioat);
}
+out:
ioat_write_chanctrl(ioat, IOAT_CHANCTRL_RUN);
mtx_unlock(&ioat->cleanup_lock);