aboutsummaryrefslogtreecommitdiffstats
path: root/erts/preloaded
diff options
context:
space:
mode:
authorBjörn-Egil Dahlberg <[email protected]>2016-02-25 15:53:48 +0100
committerBjörn-Egil Dahlberg <[email protected]>2016-02-25 16:04:33 +0100
commit8ead4dbf8a2f73325dbc3113abf2e5dd4f885bb2 (patch)
tree0b3ba7d2c7d6702e685e0fa5ef64bab0b710055d /erts/preloaded
parent023f096db6c225499b7af0fdea984a078bd660f9 (diff)
parent93d2038e91854d4bc4fd75dac7005719a79949cd (diff)
downloadotp-8ead4dbf8a2f73325dbc3113abf2e5dd4f885bb2.tar.gz
otp-8ead4dbf8a2f73325dbc3113abf2e5dd4f885bb2.tar.bz2
otp-8ead4dbf8a2f73325dbc3113abf2e5dd4f885bb2.zip
Merge branch 'maint'
Conflicts: erts/emulator/beam/erl_alloc.types erts/emulator/beam/erl_bif_info.c erts/emulator/beam/erl_process.c erts/preloaded/ebin/erts_internal.beam
Diffstat (limited to 'erts/preloaded')
-rw-r--r--erts/preloaded/ebin/erts_internal.beambin9392 -> 9976 bytes
-rw-r--r--erts/preloaded/src/erts_internal.erl20
2 files changed, 20 insertions, 0 deletions
diff --git a/erts/preloaded/ebin/erts_internal.beam b/erts/preloaded/ebin/erts_internal.beam
index 5590f5a911..88da34b192 100644
--- a/erts/preloaded/ebin/erts_internal.beam
+++ b/erts/preloaded/ebin/erts_internal.beam
Binary files differ
diff --git a/erts/preloaded/src/erts_internal.erl b/erts/preloaded/src/erts_internal.erl
index 26025d6704..330fcc4a9c 100644
--- a/erts/preloaded/src/erts_internal.erl
+++ b/erts/preloaded/src/erts_internal.erl
@@ -35,6 +35,9 @@
-export([open_port/2, port_command/3, port_connect/2, port_close/1,
port_control/3, port_call/3, port_info/1, port_info/2]).
+-export([system_check/1,
+ gather_system_check_result/1]).
+
-export([request_system_task/3]).
-export([check_process_code/3]).
@@ -281,6 +284,23 @@ copy_literals(_Mod, _Bool) ->
purge_module(_Module) ->
erlang:nif_error(undefined).
+-spec system_check(Type) -> 'ok' when
+ Type :: 'schedulers'.
+
+system_check(_Type) ->
+ erlang:nif_error(undefined).
+
+gather_system_check_result(Ref) when is_reference(Ref) ->
+ gather_system_check_result(Ref, erlang:system_info(schedulers)).
+
+gather_system_check_result(_Ref, 0) ->
+ ok;
+gather_system_check_result(Ref, N) ->
+ receive
+ Ref ->
+ gather_system_check_result(Ref, N - 1)
+ end.
+
%% term compare where integer() < float() = true
-spec cmp_term(A,B) -> Result when