aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/beam/sys.h
diff options
context:
space:
mode:
authorRickard Green <[email protected]>2010-12-21 14:49:54 +0100
committerRickard Green <[email protected]>2011-02-25 12:15:10 +0100
commit26bff7f4c9b6477b18be4ab82204c3d294d58943 (patch)
tree09aa0b3a1aa40a1cee13ebc0cc9ec0f713e375b7 /erts/emulator/beam/sys.h
parentea42e018f6495b3443fa97c8239f3d1831e3cebf (diff)
downloadotp-26bff7f4c9b6477b18be4ab82204c3d294d58943.tar.gz
otp-26bff7f4c9b6477b18be4ab82204c3d294d58943.tar.bz2
otp-26bff7f4c9b6477b18be4ab82204c3d294d58943.zip
Send warning instead of abort on EBUSY from pthread_mutex_destroy
Due to a bug in glibc the runtime system could abort while trying to destroy a mutex. The runtime system will now issue a warning instead of aborting.
Diffstat (limited to 'erts/emulator/beam/sys.h')
-rw-r--r--erts/emulator/beam/sys.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/erts/emulator/beam/sys.h b/erts/emulator/beam/sys.h
index 5a4dad0a28..fbd8bafa6e 100644
--- a/erts/emulator/beam/sys.h
+++ b/erts/emulator/beam/sys.h
@@ -338,6 +338,10 @@ typedef unsigned char byte;
(((size_t) 8) - (((size_t) (X)) & ((size_t) 7)))
#include "erl_lock_check.h"
+
+/* needed by erl_smp.h */
+int erts_send_warning_to_logger_str_nogl(char *);
+
#include "erl_smp.h"
#ifdef ERTS_WANT_BREAK_HANDLING
@@ -524,7 +528,8 @@ int erts_send_info_to_logger_nogl(erts_dsprintf_buf_t *);
int erts_send_warning_to_logger_nogl(erts_dsprintf_buf_t *);
int erts_send_error_to_logger_nogl(erts_dsprintf_buf_t *);
int erts_send_info_to_logger_str_nogl(char *);
-int erts_send_warning_to_logger_str_nogl(char *);
+/* needed by erl_smp.h (declared above)
+ int erts_send_warning_to_logger_str_nogl(char *); */
int erts_send_error_to_logger_str_nogl(char *);
typedef struct preload {