diff options
Diffstat (limited to 'erts')
-rw-r--r-- | erts/doc/src/time_correction.xml | 2 | ||||
-rw-r--r-- | erts/emulator/beam/erl_process.c | 1 | ||||
-rw-r--r-- | erts/emulator/sys/common/erl_poll.c | 2 | ||||
-rw-r--r-- | erts/example/time_compat.erl | 11 |
4 files changed, 10 insertions, 6 deletions
diff --git a/erts/doc/src/time_correction.xml b/erts/doc/src/time_correction.xml index e7d2aedf96..aed38fbb92 100644 --- a/erts/doc/src/time_correction.xml +++ b/erts/doc/src/time_correction.xml @@ -614,6 +614,7 @@ <item><p><seealso marker="erlang#system_info_time_warp_mode"><c>erlang:system_info(time_warp_mode)</c></seealso></p></item> <item><p><seealso marker="erlang#system_info_time_correction"><c>erlang:system_info(time_correction)</c></seealso></p></item> <item><p><seealso marker="erlang#system_info_start_time"><c>erlang:system_info(start_time)</c></seealso></p></item> + <item><p><seealso marker="erlang#system_info_end_time"><c>erlang:system_info(end_time)</c></seealso></p></item> </list> <marker id="The_New_Erlang_Monotonic_Time"/> @@ -866,6 +867,7 @@ EventTag = {Time, UMI}</code> API can easily be implemented using existing primitives (except for <seealso marker="erlang#system_info_start_time"><c>erlang:system_info(start_time)</c></seealso>, + <seealso marker="erlang#system_info_end_time"><c>erlang:system_info(end_time)</c></seealso>, <seealso marker="erlang#system_info_os_monotonic_time_source"><c>erlang:system_info(os_monotonic_time_source)</c></seealso>, and <seealso marker="erlang#system_info_os_system_time_source"><c>erlang:system_info(os_system_time_source)</c></seealso>). By wrapping the API with functions that fall back on diff --git a/erts/emulator/beam/erl_process.c b/erts/emulator/beam/erl_process.c index 9ae16b1898..7b3d12ce09 100644 --- a/erts/emulator/beam/erl_process.c +++ b/erts/emulator/beam/erl_process.c @@ -5497,6 +5497,7 @@ init_scheduler_data(ErtsSchedulerData* esdp, int num, ErtsRunQueue* runq, char** daww_ptr, size_t daww_sz) { + esdp->timer_wheel = NULL; #ifdef ERTS_SMP erts_bits_init_state(&esdp->erl_bits_state); esdp->match_pseudo_process = NULL; diff --git a/erts/emulator/sys/common/erl_poll.c b/erts/emulator/sys/common/erl_poll.c index 4f0a54957b..884c403da4 100644 --- a/erts/emulator/sys/common/erl_poll.c +++ b/erts/emulator/sys/common/erl_poll.c @@ -777,7 +777,7 @@ grow_poll_fds(ErtsPollSet ps, int min_ix) static void grow_select_fds(int fd, ERTS_fd_set* fds) { - int new_len = ERTS_POLL_EXPORT(erts_poll_get_table_len)(fd + 1); + int new_len = erts_poll_new_table_len(fds->sz, fd + 1); if (new_len > max_fds) new_len = max_fds; new_len = ERTS_FD_SIZE(new_len); diff --git a/erts/example/time_compat.erl b/erts/example/time_compat.erl index 54f6ba0790..b87c6cc550 100644 --- a/erts/example/time_compat.erl +++ b/erts/example/time_compat.erl @@ -1,7 +1,7 @@ %% %% %CopyrightBegin% %% -%% Copyright Ericsson AB 2014. All Rights Reserved. +%% Copyright Ericsson AB 2014-2015. All Rights Reserved. %% %% Licensed under the Apache License, Version 2.0 (the "License"); %% you may not use this file except in compliance with the License. @@ -26,9 +26,9 @@ %% versions. This way your code can automatically take advantage %% of the improvements in the API when available. This is an %% example of how to implement such an API, but it can be used -%% as is if you want to. Just add this module to your project, -%% and call the API via this module instead of calling the -%% BIFs directly. +%% as is if you want to. Just add (a preferrably renamed version of) +%% this module to your project, and call the API via this module +%% instead of calling the BIFs directly. %% -module(time_compat). @@ -242,7 +242,8 @@ system_info(Item) -> final; NotSupArg when NotSupArg == os_monotonic_time_source; NotSupArg == os_system_time_source; - NotSupArg == start_time -> + NotSupArg == start_time; + NotSupArg == end_time -> %% Cannot emulate this... erlang:error(notsup, [NotSupArg]); _ -> |