summaryrefslogtreecommitdiffstats
path: root/sys/kern/kern_intr.c
diff options
context:
space:
mode:
authorneel <neel@FreeBSD.org>2013-02-07 06:48:47 +0000
committerneel <neel@FreeBSD.org>2013-02-07 06:48:47 +0000
commit3cb1652f75d73d68f0c8151f78a0a42d74987535 (patch)
tree5c4e0718e269366d362f0d1d3ef0a5f47abc7c03 /sys/kern/kern_intr.c
parentc05e12cd73e3f0e6f8d35b37fb4396e5852bb17b (diff)
downloadFreeBSD-src-3cb1652f75d73d68f0c8151f78a0a42d74987535.zip
FreeBSD-src-3cb1652f75d73d68f0c8151f78a0a42d74987535.tar.gz
If an interrupt event's assign_cpu method fails, then restore the original
cpuset mask for the associated interrupt thread. The text used above is verbatim from r195249 and the code should now be in line with the intent of that commit.
Diffstat (limited to 'sys/kern/kern_intr.c')
-rw-r--r--sys/kern/kern_intr.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/kern/kern_intr.c b/sys/kern/kern_intr.c
index bce2397..d2c31fd 100644
--- a/sys/kern/kern_intr.c
+++ b/sys/kern/kern_intr.c
@@ -336,7 +336,7 @@ intr_event_bind(struct intr_event *ie, u_char cpu)
if (ie->ie_cpu == NOCPU)
CPU_COPY(cpuset_root, &mask);
else
- CPU_SET(cpu, &mask);
+ CPU_SET(ie->ie_cpu, &mask);
id = ie->ie_thread->it_thread->td_tid;
mtx_unlock(&ie->ie_lock);
(void)cpuset_setthread(id, &mask);
OpenPOWER on IntegriCloud