diff options
author | Hans Nilsson <[email protected]> | 2017-02-03 11:33:23 +0100 |
---|---|---|
committer | Hans Nilsson <[email protected]> | 2017-02-03 11:33:23 +0100 |
commit | f0867aa2ccbbf5677e0577bba08f8b7bc53ec0ed (patch) | |
tree | c00a87aafdd637788ba5e7321eacd234604e1ef6 /erts/emulator | |
parent | 73e5d40659f48b5aa7b4e25878fa0282ddb30b23 (diff) | |
parent | 79ea550fdf9ebd02c1932728dac509cd0d520a7c (diff) | |
download | otp-f0867aa2ccbbf5677e0577bba08f8b7bc53ec0ed.tar.gz otp-f0867aa2ccbbf5677e0577bba08f8b7bc53ec0ed.tar.bz2 otp-f0867aa2ccbbf5677e0577bba08f8b7bc53ec0ed.zip |
Merge branch 'maint-18' into maint
Conflicts:
OTP_VERSION
erts/doc/src/notes.xml
erts/emulator/sys/unix/erl_unix_sys.h
erts/emulator/sys/unix/sys.c
erts/vsn.mk
lib/crypto/c_src/crypto.c
lib/crypto/doc/src/notes.xml
lib/crypto/vsn.mk
lib/inets/doc/src/notes.xml
lib/inets/vsn.mk
lib/ssh/doc/src/notes.xml
lib/ssh/src/ssh.app.src
lib/ssh/src/ssh_connection_handler.erl
lib/ssh/vsn.mk
otp_versions.table
Diffstat (limited to 'erts/emulator')
-rw-r--r-- | erts/emulator/beam/erl_init.c | 1 | ||||
-rw-r--r-- | erts/emulator/sys/unix/sys.c | 46 |
2 files changed, 47 insertions, 0 deletions
diff --git a/erts/emulator/beam/erl_init.c b/erts/emulator/beam/erl_init.c index 070cc3f2d0..2fd97208cc 100644 --- a/erts/emulator/beam/erl_init.c +++ b/erts/emulator/beam/erl_init.c @@ -2220,6 +2220,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 */ diff --git a/erts/emulator/sys/unix/sys.c b/erts/emulator/sys/unix/sys.c index e135dbff99..fa95473db8 100644 --- a/erts/emulator/sys/unix/sys.c +++ b/erts/emulator/sys/unix/sys.c @@ -819,15 +819,61 @@ void init_break_handler(void) } void sys_init_suspend_handler(void) +<<<<<<< HEAD { #ifdef ERTS_SYS_SUSPEND_SIGNAL sys_signal(ERTS_SYS_SUSPEND_SIGNAL, suspend_signal); +======= +{ +#ifdef ERTS_SYS_SUSPEND_SIGNAL + sys_signal(ERTS_SYS_SUSPEND_SIGNAL, suspend_signal); +#endif +} + +int sys_max_files(void) +{ + return(max_files); +} + +static void block_signals(void) +{ +#if !CHLDWTHR + sys_sigblock(SIGCHLD); +#endif +#ifndef ERTS_SMP + sys_sigblock(SIGINT); +#ifndef ETHR_UNUSABLE_SIGUSRX + sys_sigblock(SIGUSR1); +#endif /* #ifndef ETHR_UNUSABLE_SIGUSRX */ +#endif /* #ifndef ERTS_SMP */ + +#ifdef ERTS_SYS_SUSPEND_SIGNAL + sys_sigblock(ERTS_SYS_SUSPEND_SIGNAL); +>>>>>>> maint-18 #endif } int sys_max_files(void) { +<<<<<<< HEAD return(max_files); +======= + /* Update erl_child_setup.c if changed */ +#if !CHLDWTHR + sys_sigrelease(SIGCHLD); +#endif +#ifndef ERTS_SMP + sys_sigrelease(SIGINT); +#ifndef ETHR_UNUSABLE_SIGUSRX + sys_sigrelease(SIGUSR1); +#endif /* #ifndef ETHR_UNUSABLE_SIGUSRX */ +#endif /* #ifndef ERTS_SMP */ + +#ifdef ERTS_SYS_SUSPEND_SIGNAL + sys_sigrelease(ERTS_SYS_SUSPEND_SIGNAL); +#endif + +>>>>>>> maint-18 } /************************** OS info *******************************/ |