aboutsummaryrefslogtreecommitdiffstats
path: root/erts
AgeCommit message (Collapse)Author
2019-02-18erts: Remove etp macro offsetofLukas Larsson
The macro command was added quite recently and far from all of our testmachines have this command
2019-02-18erts: Add yield via timeout to inet read_packetLukas Larsson
The idea here is that the timeout of 0 will work like a yield so that that we don't starve other ports/processes, but it is faster than the select trigger. We don't deselect on the socket because it does not matter if it is triggered laster or not as we'll just get an EAGAIN. Doing this also circumvents the fact that no select is done on active true style sockets until all I/O has been handled. So in a system with a lot of active true style I/O this will could be very benificial.
2019-02-18erts: Don't increase buffer when sctp sndbuf is setLukas Larsson
This is most likely a copy-paste bug that has lived in the code unnoticed for 5+ years...
2019-02-18erts: Only change inet buffer if not setLukas Larsson
We only want to autoupdate update the buffer if recbuf is set if the buffer has not been set before.
2019-02-18erts: Make enif_consume_timeslice no-op on dirty schedSverker Eriksson
2019-02-18Merge branch 'lukas/erts/fix-exit_status-netbsd/OTP-15558' into maintLukas Larsson
* lukas/erts/fix-exit_status-netbsd/OTP-15558: Fix EV_DISPATCH detection on NetBSD
2019-02-18Merge branch 'maint-21' into maintRaimo Niskanen
* maint-21: Updated OTP version Prepare release
2019-02-15erts: Reduce number of list traversals in term_to_binarySverker Eriksson
by patching list length when we reach end of list. And remove unnecessary traversals in is_string and is_external_string beyond the max length for STRING_EXT.
2019-02-15Prepare releaseErlang/OTP
2019-02-15Merge branch 'raimo/erts/gen_tcp-listen-linger-slow/ERIERL-303/OTP-14728' ↵Raimo Niskanen
into maint * raimo/erts/gen_tcp-listen-linger-slow/ERIERL-303/OTP-14728: Check empty_out_q at close also for linger Conflicts: erts/preloaded/ebin/prim_inet.beam
2019-02-15Merge pull request #2140 from ↵Björn Gustavsson
bjorng/bjorn/erts/persistent_term-default/ERL-843/OTP-15576 Add persistent_term:get(Key, DefaultValue)
2019-02-14erts: Avoid heart killing a nicely exiting emulatorSverker Eriksson
Symptom: Heart kills exiting emulator before is has flushed all ports and with HEART_KILL_SIGNAL=SIGABRT it may also produce unnecessary core dumps from doing init:reboot() for example. Problem: Heart port is closed together with all the others in handle_reap_ports() which is detected by heart OS process. Solution 1: Leave the heart port alone in handle_reap_ports() and let it be closed by OS when emulator exists. It doesn't need to be flushed anyway. Solution 2: When heart OS process gets EOF on connection let it wait max 5 seconds for emulator process to self terminate before trying to kill it.
2019-02-14Merge pull request #2118 from kjellwinblad/fix_valgrind_problem_bignum OTP-15583Kjell Winblad
Fix bug in binary:encode_unsigned causing a read of uninitialized memory
2019-02-14Merge branch 'maint-20' into maintAnders Svensson
* maint-20: Updated OTP version Prepare release
2019-02-14Prepare releaseErlang/OTP
2019-02-14Merge branch 'john/erts/spectre-configure-flag-otp_20/OTP-15430/ERIERL-237' ↵Erlang/OTP
into maint-20 * john/erts/spectre-configure-flag-otp_20/OTP-15430/ERIERL-237: Allow disabling retpoline in interpreter loop Add a ./configure flag for spectre mitigation
2019-02-14Merge pull request #2113 from richcarl/optional-tuple-callsBjörn Gustavsson
Optional tuple calls OTP-15580
2019-02-14Add persistent_term:get(Key, DefaultValue)Björn Gustavsson
https://bugs.erlang.org/browse/ERL-843
2019-02-11Check empty_out_q at close also for lingerRaimo Niskanen
2019-02-11Merge branch 'sverker/enif_select-faulty-assert' into maintSverker Eriksson
* sverker/enif_select-faulty-assert: erts: Fix faulty debug assert in enif_select
2019-02-11Merge branch 'sverker/map-from-ks-vs-bug/OTP-15567' into maintSverker Eriksson
* sverker/map-from-ks-vs-bug/OTP-15567: erts: Add test for bug in enif_make_maps_from_arrays erts: Fix bug in erts_map_from_ks_and_vs
2019-02-06erts: Fix faulty debug assert in enif_selectSverker Eriksson
2019-02-06erts: Add test for bug in enif_make_maps_from_arraysSverker Eriksson
2019-02-06Merge tag 'OTP-21.2' into sverker/map-from-ks-vs-bugSverker Eriksson
2019-02-06erts: Fix bug in erts_map_from_ks_and_vsSverker Eriksson
This sleeping bug was introduced in OTP 19.1 but not possible not provoke until OTP 21.0 when enif_make_map_from_arrays was introduced.
2019-02-06Merge branch 'sverker/fix-compile-warning' into maintSverker Eriksson
* sverker/fix-compile-warning: erts: Fix compiler warning for IS_SSMALL
2019-02-05Merge branch 'lukas/erts/cerl-etp-rr-support' into maintLukas Larsson
* lukas/erts/cerl-etp-rr-support: erts: Expand rr support in cerl and etp
2019-02-05erts: Expand rr support in cerl and etpLukas Larsson
2019-02-04Fix typo in erlang.xmlTobiasz
2019-02-01Fix EV_DISPATCH detection on NetBSDLukas Larsson
2019-02-01erts: Fix erlang:system_info(kernel_poll) to return correct valueLukas Larsson
2019-02-01fix: erts: Remove dead ERTS_MAGIC_REF_BIF_TIMERS codeLukas Larsson
2019-02-01erts: Remove dead ERTS_MAGIC_REF_BIF_TIMERS codeLukas Larsson
Using magic refs for big timers caused too large a stress on the off_heap GC implementation to be viable, so it was never enable. The code is now broken because of other changes to we might as well remove it.
2019-01-31Merge branch 'sverker/port-control-badarg/OTP-15555' into maintSverker Eriksson
* sverker/port-control-badarg/OTP-15555: erts: Add doc warnings for erlang:port_command|call|control erts: Add magic port control numbers
2019-01-30erts: Fix compiler warning for IS_SSMALLSverker Eriksson
"shift count negative or too big, undefined behavior"
2019-01-30Fix bug in binary:encode_unsigned causing a read of uninitialized memoryKjell Winblad
The bug could be seen by running the test that is added by this commit in a valgrind enabled emulator. Co-authored-by: John Högberg <[email protected]>
2019-01-28erts: Add doc warnings for erlang:port_command|call|controlSverker Eriksson
done on unknown ports.
2019-01-28erts: Add magic port control numbersSverker Eriksson
to increase the probablity of a nice badarg from erlang:port_control.
2019-01-28Add -ztma option for enabling tuple callsRichard Carlsson
2019-01-28Reinstate tuple calls support in the beam emulatorRichard Carlsson
This reverts commit f2b332186a for beam_emu.c only, to enable an upgrade path for existing beam code compiled under OTP 20 with parameterized modules.
2019-01-25Merge branch 'maint-21' into maintLukas Larsson
* maint-21: Updated OTP version Prepare release
2019-01-24Prepare releaseErlang/OTP
2019-01-24Merge branch 'lukas/erts/scheduler-pollset-fixes/OTP-15538' into maint-21Erlang/OTP
* lukas/erts/scheduler-pollset-fixes/OTP-15538: erts: Fix getting of poll events on linux >= 4.15.0 erts: Use reduction based polling for starved poll-set erts: Fix pollset test cases
2019-01-24Merge branch 'lukas/erts/fix_spawn_driver_early_close/OTP-15537' into maint-21Erlang/OTP
* lukas/erts/fix_spawn_driver_early_close/OTP-15537: erts: Fix too early close of spawn driver fd
2019-01-24Merge branch 'lukas/erts/fix_inet_multitimer_cleanup/OTP-15536' into maint-21Erlang/OTP
* lukas/erts/fix_inet_multitimer_cleanup/OTP-15536: erts: Fix cleanup of the inet MultiTimer
2019-01-23Merge branch 'lukas/erts/set_logger_process/OTP-15375' into maintLukas Larsson
* lukas/erts/set_logger_process/OTP-15375: erts: Fix type of system_logger variable
2019-01-23erts: Fix type of system_logger variableLukas Larsson
2019-01-23Merge branch 'lukas/erts/scheduler-pollset-fixes/OTP-15538' into maintLukas Larsson
* lukas/erts/scheduler-pollset-fixes/OTP-15538: erts: Fix getting of poll events on linux >= 4.15.0 erts: Use reduction based polling for starved poll-set erts: Fix pollset test cases
2019-01-23Merge branch 'lukas/erts/fix_spawn_driver_early_close/OTP-15537' into maintLukas Larsson
* lukas/erts/fix_spawn_driver_early_close/OTP-15537: erts: Fix too early close of spawn driver fd
2019-01-23Merge branch 'lukas/erts/fix_inet_multitimer_cleanup/OTP-15536' into maintLukas Larsson
* lukas/erts/fix_inet_multitimer_cleanup/OTP-15536: erts: Fix cleanup of the inet MultiTimer