aboutsummaryrefslogtreecommitdiff
path: root/sys/kern/subr_smp.c
diff options
context:
space:
mode:
authorJeff Roberson <jeff@FreeBSD.org>2012-12-19 20:08:06 +0000
committerJeff Roberson <jeff@FreeBSD.org>2012-12-19 20:08:06 +0000
commit5b39d5c7393cbbb7258aa6202ca94c9e45508609 (patch)
tree1dc8fdbb47c0a6a1f3db11d7c587ccd2594b3c9c /sys/kern/subr_smp.c
parentf8fe3dc9aab6599e8fe3c3cb8a50579015e14030 (diff)
downloadsrc-5b39d5c7393cbbb7258aa6202ca94c9e45508609.tar.gz
src-5b39d5c7393cbbb7258aa6202ca94c9e45508609.zip
- Correctly handle EWOULDBLOCK in quiesce_cpus
Discussed with: mav
Notes
Notes: svn path=/head/; revision=244444
Diffstat (limited to 'sys/kern/subr_smp.c')
-rw-r--r--sys/kern/subr_smp.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/kern/subr_smp.c b/sys/kern/subr_smp.c
index 3b27dce62380..36147989ddf3 100644
--- a/sys/kern/subr_smp.c
+++ b/sys/kern/subr_smp.c
@@ -766,8 +766,9 @@ quiesce_cpus(cpuset_t map, const char *wmesg, int prio)
thread_unlock(curthread);
while (gen[cpu] == pcpu->pc_idlethread->td_generation) {
error = tsleep(quiesce_cpus, prio, wmesg, 1);
- if (error)
+ if (error != EWOULDBLOCK)
goto out;
+ error = 0;
}
}
out: