aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/beam/erl_process.c
diff options
context:
space:
mode:
authorRickard Green <rickard@erlang.org>2010-08-31 14:33:59 +0200
committerRickard Green <rickard@erlang.org>2010-08-31 14:33:59 +0200
commit4b9764486a928ef737da318bdb50d0ebe68f8a93 (patch)
tree40cc8d26e69679d1d105d0422e5751229c39ea08 /erts/emulator/beam/erl_process.c
parent0bcb7009fe4f3bbdf630c226d7e7335f9c005cf0 (diff)
downloadotp-4b9764486a928ef737da318bdb50d0ebe68f8a93.tar.gz
otp-4b9764486a928ef737da318bdb50d0ebe68f8a93.tar.bz2
otp-4b9764486a928ef737da318bdb50d0ebe68f8a93.zip
Fix erroneous error reports about unbind failure
On platforms where binding of schedulers is not supported, numerous error reports on the form "Scheduler <N> failed to unbind from cpu -1: enotsup" were erroneously issued. This bug was introduced in the 'dev' branch before R14B (commit 1b273b618002d65159453fdfb9520a9476e4423a). That is, the bug has never been seen in a released runtime system. Reported-By: Tuncer Ayaz
Diffstat (limited to 'erts/emulator/beam/erl_process.c')
-rw-r--r--erts/emulator/beam/erl_process.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/erts/emulator/beam/erl_process.c b/erts/emulator/beam/erl_process.c
index 0e78727316..0417109a8a 100644
--- a/erts/emulator/beam/erl_process.c
+++ b/erts/emulator/beam/erl_process.c
@@ -3970,13 +3970,13 @@ check_cpu_bind(ErtsSchedulerData *esdp)
goto unbind;
}
}
- else if (cpu_id < 0) /* && scheduler2cpu_map[esdp->no].bound_id >= 0) */ {
+ else if (cpu_id < 0) {
unbind:
/* Get rid of old binding */
res = erts_unbind_from_cpu(erts_cpuinfo);
if (res == 0)
esdp->cpu_id = scheduler2cpu_map[esdp->no].bound_id = -1;
- else {
+ else if (res != -ENOTSUP) {
erts_dsprintf_buf_t *dsbufp = erts_create_logger_dsbuf();
erts_dsprintf(dsbufp, "Scheduler %d failed to unbind from cpu %d: %s\n",
(int) esdp->no, cpu_id, erl_errno_id(-res));