aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2019-03-28erts: Fix bug in process_info(reductions)Sverker Eriksson
returning incorrect result as * current process might not be RUNNING in which case REDS_IN is actually used as def_arg_reg[5] * FCALLS might not have been swapped out * the SAVED_CALLS case was wrong and returned number of reds left
2019-03-28erts: Use ptr_val for pointer in gc msg copySverker Eriksson
Cherry-pick: 3d7d66b84b69f3eb42e8bcd8dc510b6676e31cac Without this fix asserts would trigger in debug build but nothing else would break.
2019-03-28Merge branch 'john/erts/remove-destructive-bs_get_binary2/ERL-901'John Högberg
* john/erts/remove-destructive-bs_get_binary2/ERL-901: erts: Remove unsafe bs_get_binary2 optimization from loader
2019-03-28compile: Add some types to core_parse.hrlHans Bolinder
The core_parse.hrl can be used in applications with the +warn_untyped_record compiler flag.
2019-03-28compiler: Fix documentation of cerl:c_binary/1Hans Bolinder
2019-03-28Merge branch 'bjorn/compiler/cuddle-with-tests'Björn Gustavsson
* bjorn/compiler/cuddle-with-tests: Verify the highest opcode for the r21 test suites Add test_lib:highest_opcode/1 sys_core_fold: Simplify case_expand_var/2 beam_validator: Remove uncovered lines in lists_mod_return_type/3 Cover return type determination of lists functions
2019-03-28erl_tar: Use read_ahead when reading compressed tar filesJohn Högberg
Jumping around in a compressed file is nowhere near as cheap as for uncompressed files, as it requires reading and decompressing up until the desired position. Using read_ahead will improve performance slightly.
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-28Improve printoutsRaimo Niskanen
2019-03-28Dist handshake with nodelayRaimo Niskanen
2019-03-28Implement inet_crypto_dist benchmark exampleRaimo Niskanen
This is a simplistic distribution protocol module for encrypted distribution using a shared secret and only the crypto module, and AEAD ciphers. It is intended to be a benchmark reference for how fast encrypted distribution may get. How secure it would be and also how useful, for actual production use, remains to be investigated.
2019-03-28Merge branch 'ingela/inets/test-cuddle'Ingela Anderton Andin
* ingela/inets/test-cuddle: inets: Check ipv6 support with ct:require
2019-03-28syntax_tools: Fix handling of Unicode filenamesHans Bolinder
2019-03-27Merge branch 'maint'John Högberg
* maint:
2019-03-27Merge branch 'john/erts/seq_trace-sigq-clearing/OTP-15704' into maintJohn Högberg
* john/erts/seq_trace-sigq-clearing/OTP-15704: erts: Handle all signal types when clearing seq_trace token
2019-03-27erts: Remove unsafe bs_get_binary2 optimization from loaderJohn Högberg
A load-time optimization assumed that match contexts had no further uses when a bs_get_binary2 overwrote the match context's register, and figured it would be safe to reuse the match context's memory for the resulting binary. This is no longer safe as of OTP 22, as a match context may be reused after being passed to another function.
2019-03-27Fix faulty bit syntax exampleSverker Eriksson
2019-03-27Merge branch 'john/erts/seq_trace-sigq-clearing/OTP-15704'John Högberg
* john/erts/seq_trace-sigq-clearing/OTP-15704: erts: Handle all signal types when clearing seq_trace token
2019-03-27Merge branch 'john/compiler/fix-type-opt-no-return/ERL-897'John Högberg
* john/compiler/fix-type-opt-no-return/ERL-897: compiler: Fully disable no_return optimizations in try blocks
2019-03-27Merge pull request #2193 from bjorng/bjorn/erts/fix-unsafe-tuning/ERL-899Björn Gustavsson
Fix unsafe optimization made by the loader
2019-03-27erts: Handle all signal types when clearing seq_trace tokenJohn Högberg
We walk through all signal queues in the system when clearing seq_trace, so we must be prepared to encounter all kinds of signals.
2019-03-27Fix unsafe optimization made by the loaderBjörn Gustavsson
Fix the unsafe load-time optimization introduced in 07bdbb3a1edc. https://bugs.erlang.org/browse/ERL-899
2019-03-26erts: Document new EPMD response ALIVE2_X_RESPSverker Eriksson
with 32-bit creation.
2019-03-26erl_interface: Support 32-bit creation local cnodeSverker Eriksson
2019-03-26inets: Check ipv6 support with ct:requireIngela Anderton Andin
2019-03-26Merge branch 'john/erts/explain-empty-stack-check-in-next_catch'John Högberg
* john/erts/explain-empty-stack-check-in-next_catch: erts: Add an explanation for the empty stack check in next_catch
2019-03-26Revert "Updated OTP version"Henrik Nord
This reverts commit 3a8047fcd347a30b0340839437cf367e5b9be339.
2019-03-26compiler: Fully disable no_return optimizations in try blocksJohn Högberg
Validation could fail when a function that never returned was used in a try block (see attached test case). It's possible to solve this without disabling the optimization as the generated code is sound, but I'm not comfortable making such a large change this close to the OTP 22 release.
2019-03-26Revert "Prepare release"Henrik Nord
This reverts commit 0118046f9bda8dcf3594184fa439b79267db8017.
2019-03-26Updated OTP_VERSION for Release CandidateOTP-22.0-rc2Henrik Nord
2019-03-25jinterface: Remove old encoding of pid,port,refsSverker Eriksson
2019-03-25Updated OTP versionErlang/OTP
2019-03-25Prepare releaseErlang/OTP
2019-03-25Merge branch 'sverker/bug-fixing'Sverker Eriksson
* sverker/bug-fixing: erts: Fix erts_debug:set_internal_state(reds_left) erts: Fix binary_SUITE:cmp_old_impl
2019-03-25erts: Fix erts_debug:set_internal_state(reds_left)Sverker Eriksson
to avoid failed ERTS_DBG_CHK_REDS by clearing virtual_reds.
2019-03-25erts: Fix binary_SUITE:cmp_old_implSverker Eriksson
since DFLAG_BIG_CREATION became mandatory in 321dc6ee0241f802c940def174c0a77262e11f21.
2019-03-25Merge branch ↵Lukas Larsson
'lukas/erts/fragment-dist-messages/OTP-13397/OTP-15610/OTP-15611/OTP-15612/OTP-15613/OTP-15703' * lukas/erts/fragment-dist-messages/OTP-13397/OTP-15610/OTP-15611/OTP-15612/OTP-15613/OTP-15703: (26 commits) erts: Yield when exiting/free process is suspended by de doc: Fix Design Princ, statem incorrect anchor erts: Include external msg in need of GC erts: Include dist header in return from dist_ctrl_get_data erts: Fix so that exit/down terms stay alive erts: Pending signals can be for free processes erts: Fix faulty assert in reference_table_term etp: Don't crash etp-stack* when c_p->i is null erts: Adjust dist obuf size correctly after hdr fin erts: Fix non-payload dist exit signals erts: Always do trylock on proc locks when crash dumping Fix tests to work better in debug emulator erts: erts_factory_proc_init should not set hole marker erts: Skip heavy process tab tests in debug emu ts: Use same dynlinking logic for all bsd Revert "erts: Always run fds check after each testcase" erts: Always run fds check after each testcase erts: Always stop any testnodes before testcase exits erts: Add crash dumping of EXITING and FREE processes wx: Remove ERL_FLAGS from Makefile erlc command ...
2019-03-25erts: Yield when exiting/free process is suspended by deLukas Larsson
2019-03-25doc: Fix Design Princ, statem incorrect anchorLukas Larsson
2019-03-25erts: Add an explanation for the empty stack check in next_catchJohn Högberg
2019-03-25erts: Include external msg in need of GCLukas Larsson
When many external messages suddenly appear in the mailbox the young gen size is adjusted accordingly but it was immediately shrunk as the data was not counted towards the shrink size. This commit includes the ext dist size in the shrink calculation which means that the decode of the external messages will not trigger as many GCs which means much better performance.
2019-03-25erts: Include dist header in return from dist_ctrl_get_dataLukas Larsson
2019-03-25erts: Fix so that exit/down terms stay aliveLukas Larsson
When the GC is run or the link/monitor node is deleted, the terms associated with it will also be deallocated so we have to make sure that we don't do any GCs and that all link/monitor nodes are copied onto the heap before the node is deallocated.
2019-03-25erts: Pending signals can be for free processesLukas Larsson
Since we no schedule free processes multiple times, pending signals can be from free as well as current processes.
2019-03-25erts: Fix faulty assert in reference_table_termLukas Larsson
2019-03-25etp: Don't crash etp-stack* when c_p->i is nullLukas Larsson
2019-03-25erts: Adjust dist obuf size correctly after hdr finLukas Larsson
2019-03-25erts: Fix non-payload dist exit signalsLukas Larsson
When interacting with jinterface and erl_interface the old dist messages are used and they incorrectly used the external data.
2019-03-25erts: Always do trylock on proc locks when crash dumpingLukas Larsson
2019-03-25Fix tests to work better in debug emulatorLukas Larsson