aboutsummaryrefslogtreecommitdiffstats
path: root/lib/kernel/src
AgeCommit message (Collapse)Author
2019-06-17Merge branch 'john/kernel/fix-io-proto-user-drv/OTP-15805' into maint-22Erlang/OTP
* john/kernel/fix-io-proto-user-drv/OTP-15805: kernel: Force synchronous port_commands in user/user_drv
2019-05-10Prepare releaseErlang/OTP
2019-05-07kernel: Force synchronous port_commands in user/user_drvJohn Högberg
Banging data to a local port was always synchronous prior to Erlang/OTP R16, and these modules relied on that behavior to report that data had successfully been enqueued on the stdout port. This would cause data to be silently dropped if the command didn't run synchronously and the emulator halted before the port received the data. This was fairly rare in practice, but could be seen from time to time on Windows with escripts that ended with a call to io:format/2, such as the one used by the escript_SUITE:create_and_extract test. This is a minimal band-aid to make things reliable again. A more complete fix would add explicit synchronization with the port.
2019-05-07Merge branch 'lukas/kernel/inet_db_fix_set_of_non-existing_file/OTP-15806'Lukas Larsson
* lukas/kernel/inet_db_fix_set_of_non-existing_file/OTP-15806: kernel: Fix setting of non-existing file as inet_db resolv_conf
2019-05-06kernel: Fix setting of non-existing file as inet_db resolv_confLukas Larsson
This was broken in 7c63a98c28d477.
2019-05-06Merge pull request #2219 from josevalim/jv-auto-host/OTP-15794Lukas Larsson
Add hostname to -remsh if none is given
2019-04-29Add hostname to -remsh if none is givenJosé Valim
The -name option already computes a default hostname if none is given. This PR adds the same behaviour to -remsh. Now we can run: erl -name foo -remsh bar erl -sname foo -remsh bar This simplifies deployment scripts as otherwise they have to compute the hostname by hand or start an Erlang VM instance only to do so.
2019-04-23kernel: Multiple -sname or -name would be ignoredLukas Larsson
If 'erl -sname 1 -sname 2' is run the node is not started in distribution mode at all. This fix makes the last sname be used.
2019-04-12Merge branch 'bjorn/erts/measure-process_main/OTP-15620'Björn Gustavsson
* bjorn/erts/measure-process_main/OTP-15620: Add benchmark Add erts_debug:interpreter_size/0
2019-04-11Merge branch 'sverker/revert-big-creation'Sverker Eriksson
* sverker/revert-big-creation: Revert "erts: Make DFLAG_BIG_CREATION mandatory" Revert "erts: Remove old encoding of pids, ports and refs" Revert "erl_interface: Remove old encoding of pid,port,refs" Revert "epmd: Support 32-bit creation values in local node" Revert "jinterface: Remove old encoding of pid,port,refs" Revert "erl_interface: Support 32-bit creation local cnode" Revert "erts: Document new EPMD response ALIVE2_X_RESP"
2019-04-10Merge pull request #2197 from lbolla/spelling-mistakes-fixBjörn Gustavsson
Fix various spelling mistakes
2019-04-09Revert "epmd: Support 32-bit creation values in local node"Sverker Eriksson
This reverts commit bd8f6106d44a58c261920eef72842bb3bc5a4968. PLUS a little change in epmd_srv.c:750 ("4" -> "replylen") that was part of e2cf4a8a4b03b9f430ba228276c3b2629159e832 by mistake.
2019-04-08Add erts_debug:interpreter_size/0Björn Gustavsson
Add erts_debug:interpreter_size/0 for retrieving the approximate size of the BEAM interpreter (process_main()).
2019-04-01Merge branch 'maint'Sverker Eriksson
* maint: Updated OTP version Prepare release # Conflicts: # OTP_VERSION # make/otp_version_tickets_in_merge
2019-03-31Fix various spelling mistakesLorenzo Bolla
Fix ERL-541 and various other unreported spelling mistakes.
2019-03-29Prepare releaseErlang/OTP
2019-03-29Merge branch 'maint'John Högberg
2019-03-28kernel: Fix performance regression on reading compressed filesJohn Högberg
An internal buffer size was too small, causing a considerable performance degradation compared to OTP 20.
2019-03-26Revert "Prepare release"Henrik Nord
This reverts commit 0118046f9bda8dcf3594184fa439b79267db8017.
2019-03-25Prepare releaseErlang/OTP
2019-03-22Merge branch 'sverker/enable-big-creation/OTP-15603'Sverker Eriksson
* sverker/enable-big-creation/OTP-15603: epmd: Support 32-bit creation values in local node erts: Robustify epmd reply function erts: Reject decoded local refs with too large first word erts: Fix bug in list_to_ref erl_interface: Remove old encoding of pid,port,refs erts: Remove old encoding of pids, ports and refs erts: Make DFLAG_BIG_CREATION mandatory
2019-03-22epmd: Support 32-bit creation values in local nodeSverker Eriksson
* Increase distribution version from 5 to 6 * Introduce new ALIVE2_X_RESP with 32-bit creation as reply to ALIVE2_REQ when sender dist version >= 6 * Still reply old ALIVE2_RESP with tiny creation 1..3 if sender dist version < 6.
2019-03-21Merge branch 'bjorn/hipe-compilation/OTP-15596'Björn Gustavsson
* bjorn/hipe-compilation/OTP-15596: HiPE: Don't fail the compilation for unimplemented instructions
2019-03-21Merge branch 'hasse/kernel/global_async_monitor_node'Hans Bolinder
* hasse/kernel/global_async_monitor_node: kernel: Remove some obsolete code in the global module
2019-03-21Merge branch 'hasse/kernel/global_connect_tries/OTP-15607/ERIERL-280'Hans Bolinder
* hasse/kernel/global_connect_tries/OTP-15607/ERIERL-280: kernel: Global no longer tries to connect more than once
2019-03-21Merge pull request #2170 from josevalim/jv-set-env-errorSiri Hansen
Error on duplicated config apps/keys in -config
2019-03-20HiPE: Don't fail the compilation for unimplemented instructionsBjörn Gustavsson
2019-03-12Merge branch 'maint'Henrik Nord
* maint: Updated OTP version Prepare release
2019-03-11Prepare releaseErlang/OTP
2019-03-08Merge pull request #2088 from josevalim/jv-start-distributionSiri Hansen
Add start_distribution to kernel environment OTP-15668
2019-03-08Merge branch 'maint'Siri Hansen
2019-03-08Merge branch 'siri/logger/file-logging-improvements' into maintSiri Hansen
* siri/logger/file-logging-improvements: [logger] Add option file_check to logger_std_h [logger] Add log file rotation by options to logger_std_h [logger] Add better control of file modes in logger_std_h [logger] Refactor logger_std_h [logger] Make sure log file is re-opened with configured file options
2019-03-08[logger] Add option file_check to logger_std_hSiri Hansen
OTP-15663 This option indicates how often the handler shall check if the log file still exists and if the inode is changed.
2019-03-08[logger] Add log file rotation by options to logger_std_hSiri Hansen
OTP-15479 OTP-15662 New configuration map for logger_std_h: #{type => file, file => file:filename(), modes => [file:mode()], max_no_bytes => pos_integer() | infinity, max_no_files => non_neg_integer(), compress_on_rotate => boolean()} For backwards compatibility, the old variant for specifying the file name via the 'type' parameter is still supported, i.e. {file,FileName} and {file,FileName,Modes}, but it is no longer documented. Rotation scheme: The current log file always has the same name, and the archived files get extensions ".0", ".1", ... The newest archive has extension ".0", and the oldest archive has the highest number. If 'compress_on_rotate' is set to true, the archived files are gzipped and get the additional extension ".gz", e.g. error.log.0.gz. Rotation is turned off by setting 'max_no_bytes' to infinity. Setting 'max_no_files' to 0 does not turn off rotation, but only specifies that no archives are to be saved.
2019-03-07Merge branch 'maint'Siri Hansen
2019-03-07Merge branch 'siri/logger/optimize-formatter/OTP-15647' into maintSiri Hansen
* siri/logger/optimize-formatter/OTP-15647: [logger] Improve formatter performance
2019-03-07[logger] Improve formatter performanceSiri Hansen
2019-03-07Merge branch 'maint'Siri Hansen
2019-03-07Merge branch 'siri/logger/bench' into maintSiri Hansen
* siri/logger/bench: [logger] Add benchmark of big log events with chars_limit and max_size [logger] Add max memory usage to statistics in logger_olp Skip logger benchmarks in normal kernel test [logger] Add benchmark of events per millisecond for handlers
2019-03-07[logger] Add max memory usage to statistics in logger_olpSiri Hansen
2019-03-06Merge branch 'maint'Rickard Green
* maint: Updated OTP version Prepare release
2019-03-06Merge branch 'maint-21' into maintRickard Green
* maint-21: Updated OTP version Prepare release
2019-03-06Merge branch 'maint'Rickard Green
* maint: kernel runtime dependency to erts erts: Add yield via timeout to inet read_packet erts: Don't increase buffer when sctp sndbuf is set erts: Only change inet buffer if not set
2019-03-06Merge branch 'lukas/erts/fix_inet_buffer_auto_adjust/OTP-15651/OTP-15652' ↵Rickard Green
into maint * lukas/erts/fix_inet_buffer_auto_adjust/OTP-15651/OTP-15652: kernel runtime dependency to erts erts: Add yield via timeout to inet read_packet erts: Don't increase buffer when sctp sndbuf is set erts: Only change inet buffer if not set
2019-03-06[logger] Add better control of file modes in logger_std_hSiri Hansen
OTP-15602 It is allowed to set file modes for the handler to use when opening its log file. The given modes were earlier accepted without any checks, which could make the handler behave unexpectedly. This commit makes sure that * if none of write, append or exclusive is given, then append is added * if raw is not given, it is added * if delayed_write or {delayed_write,_,_} is not given, then delayed_write is added
2019-03-05Prepare releaseErlang/OTP
2019-03-05kernel runtime dependency to ertsRickard Green
2019-03-04Error on duplicated config apps/keys in -configJosé Valim
Continuation of d92eb79322. Erlang/OTP 21.3 warned on those cases and now we will raise on Erlang/OTP 22.0.
2019-03-04Add start_distribution to kernel environmentJosé Valim
Sometimes you may want to start Erlang without any of its distribution services. This commit adds an environment configuration that allows so. Because the servers we don't start here are a subset of the servers not started on minimal mode, we do have a guarantee that the system can still operate as the system operates without those apps on minimal mode.
2019-03-04Merge branch 'maint'Raimo Niskanen
* maint: Set early enough start time inet_db: fix a bug when .hosts file is never reloaded