diff options
author | Lukas Larsson <[email protected]> | 2016-03-18 14:55:51 +0100 |
---|---|---|
committer | Lukas Larsson <[email protected]> | 2016-03-18 14:55:51 +0100 |
commit | 49aed19fc304ed28e46988099f2f13f8fa73d3d4 (patch) | |
tree | 4648a301618d2c0581907e83adb2402393116f1c /erts/emulator/beam | |
parent | 586e8f0cb587355221ed8a24c4e8ca06e8404192 (diff) | |
parent | 6cec93eb4e697fc1451b0b4729fc3d4874581ebd (diff) | |
download | otp-49aed19fc304ed28e46988099f2f13f8fa73d3d4.tar.gz otp-49aed19fc304ed28e46988099f2f13f8fa73d3d4.tar.bz2 otp-49aed19fc304ed28e46988099f2f13f8fa73d3d4.zip |
Merge branch 'lukas/erts/fix_scheduler_suspend/ERL-94/PR-978/OTP-13425'
* lukas/erts/fix_scheduler_suspend/ERL-94/PR-978/OTP-13425:
erts: Fix install of suspend handler
Conflicts:
erts/emulator/sys/unix/erl_unix_sys.h
erts/emulator/sys/unix/sys.c
Diffstat (limited to 'erts/emulator/beam')
-rw-r--r-- | erts/emulator/beam/break.c | 4 | ||||
-rw-r--r-- | erts/emulator/beam/erl_init.c | 1 |
2 files changed, 3 insertions, 2 deletions
diff --git a/erts/emulator/beam/break.c b/erts/emulator/beam/break.c index 8c039ef132..446598362c 100644 --- a/erts/emulator/beam/break.c +++ b/erts/emulator/beam/break.c @@ -684,7 +684,7 @@ erl_crash_dump_v(char *file, int line, char* fmt, va_list args) crash dump. */ erts_thr_progress_fatal_error_block(&tpd_buf); -#ifdef ERTS_THR_HAVE_SIG_FUNCS +#ifdef ERTS_SYS_SUSPEND_SIGNAL /* * We suspend all scheduler threads so that we can dump some * data about the currently running processes and scheduler data. @@ -818,7 +818,7 @@ erl_crash_dump_v(char *file, int line, char* fmt, va_list args) #ifdef ERTS_SMP -#if defined(ERTS_THR_HAVE_SIG_FUNCS) +#ifdef ERTS_SYS_SUSPEND_SIGNAL /* We resume all schedulers so that we are in a known safe state when we write the rest of the crash dump */ diff --git a/erts/emulator/beam/erl_init.c b/erts/emulator/beam/erl_init.c index 86c4eeb484..0c81a95705 100644 --- a/erts/emulator/beam/erl_init.c +++ b/erts/emulator/beam/erl_init.c @@ -2188,6 +2188,7 @@ erl_start(int argc, char **argv) init_break_handler(); if (replace_intr) erts_replace_intr(); + sys_init_suspend_handler(); #endif boot_argc = argc - i; /* Number of arguments to init */ |