diff options
author | Björn-Egil Dahlberg <[email protected]> | 2017-03-23 09:43:33 +0100 |
---|---|---|
committer | Björn-Egil Dahlberg <[email protected]> | 2017-03-23 09:43:33 +0100 |
commit | 3b6f4eada751ebb4f8db6a5964347e877f2b8aab (patch) | |
tree | 887fdd32281281dabc0a35e318075a51c70437e7 /erts/emulator/beam | |
parent | c5e09d9315044bb9ac27702f6a9d3c6f290a3b8e (diff) | |
parent | 0dec7ddb341b2b7d2643f86dd9e9497b3f5268a7 (diff) | |
download | otp-3b6f4eada751ebb4f8db6a5964347e877f2b8aab.tar.gz otp-3b6f4eada751ebb4f8db6a5964347e877f2b8aab.tar.bz2 otp-3b6f4eada751ebb4f8db6a5964347e877f2b8aab.zip |
Merge branch 'egil/erts/fix-no-thread-signal-service'
* egil/erts/fix-no-thread-signal-service:
erts: Don't allocate memory during signal handling
erts: Fix erl_async include files for no-threads
Diffstat (limited to 'erts/emulator/beam')
-rw-r--r-- | erts/emulator/beam/erl_async.h | 8 | ||||
-rw-r--r-- | erts/emulator/beam/sys.h | 6 |
2 files changed, 10 insertions, 4 deletions
diff --git a/erts/emulator/beam/erl_async.h b/erts/emulator/beam/erl_async.h index 473c7686e5..c884a5040d 100644 --- a/erts/emulator/beam/erl_async.h +++ b/erts/emulator/beam/erl_async.h @@ -27,7 +27,6 @@ extern int erts_async_max_threads; #define ERTS_ASYNC_THREAD_MAX_STACK_SIZE 8192 /* Kilo words */ extern int erts_async_thread_suggested_stack_size; -#ifdef USE_THREADS #ifdef ERTS_SMP /* @@ -47,6 +46,10 @@ extern int erts_async_thread_suggested_stack_size; # define ERTS_USE_ASYNC_READY_Q 0 #endif +#ifndef USE_THREADS +# undef ERTS_USE_ASYNC_READY_Q +# define ERTS_USE_ASYNC_READY_Q 0 +#endif /* !USE_THREADS */ #if ERTS_USE_ASYNC_READY_Q int erts_check_async_ready(void *); int erts_async_ready_clean(void *, void *); @@ -58,10 +61,7 @@ void *erts_get_async_ready_queue(Uint sched_id); #endif #endif /* ERTS_USE_ASYNC_READY_Q */ -#endif /* USE_THREADS */ - void erts_init_async(void); void erts_exit_flush_async(void); - #endif /* ERL_ASYNC_H__ */ diff --git a/erts/emulator/beam/sys.h b/erts/emulator/beam/sys.h index c6ea8049c3..144dd60d21 100644 --- a/erts/emulator/beam/sys.h +++ b/erts/emulator/beam/sys.h @@ -487,6 +487,12 @@ extern volatile int erts_break_requested; void erts_do_break_handling(void); #endif +#if !defined(ERTS_SMP) && !defined(__WIN32__) +extern volatile Uint erts_signal_state; +#define ERTS_SIGNAL_STATE erts_signal_state +void erts_handle_signal_state(void); +#endif + #ifdef ERTS_SMP extern erts_smp_atomic32_t erts_writing_erl_crash_dump; extern erts_tsd_key_t erts_is_crash_dumping_key; |