aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator
diff options
context:
space:
mode:
authorHans Nilsson <[email protected]>2017-02-03 11:38:02 +0100
committerHans Nilsson <[email protected]>2017-02-03 11:38:02 +0100
commit4208945259f1a32f4261fc603b2f2be9057c5d50 (patch)
tree0dcb00848ee6af8364546b4bf9ab23ede97c862e /erts/emulator
parent24dc54fdb810fa29c13b7bd4d38c8d940b939cdc (diff)
parentb2f2d1059fda823d3f71086a77adeb99d5475b94 (diff)
downloadotp-4208945259f1a32f4261fc603b2f2be9057c5d50.tar.gz
otp-4208945259f1a32f4261fc603b2f2be9057c5d50.tar.bz2
otp-4208945259f1a32f4261fc603b2f2be9057c5d50.zip
erge branch 'maint'
Conflicts: OTP_VERSION
Diffstat (limited to 'erts/emulator')
-rw-r--r--erts/emulator/beam/erl_init.c1
-rw-r--r--erts/emulator/sys/unix/sys.c46
2 files changed, 47 insertions, 0 deletions
diff --git a/erts/emulator/beam/erl_init.c b/erts/emulator/beam/erl_init.c
index 88bd002a8c..c5904b375e 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 *******************************/