aboutsummaryrefslogtreecommitdiffstats
path: root/erts
AgeCommit message (Collapse)Author
2017-04-10Update preloaded modulesLukas Larsson
2017-04-10Merge branch 'lukas/erts/print_complex_crash_slogan/OTP-14303'Lukas Larsson
* lukas/erts/print_complex_crash_slogan/OTP-14303: erts: Print more complex terms in crash reason
2017-04-10Merge branch 'sr/epmd/exit-1-if-living-nodes/PR-1402/OTP-14324'Lukas Larsson
* sr/epmd/exit-1-if-living-nodes/PR-1402/OTP-14324: Don't exit 0 if killing epmd is impossible because there's living nodes
2017-04-07beam_emu: Slightly optimize the bxor/2 operatorBjörn Gustavsson
bxor is used in the rand module, so even small optimizations could be worthwile. Suggested by Raimo Niskanen.
2017-04-04Merge branch 'maint'Ingela Anderton Andin
Conflicts: OTP_VERSION erts/vsn.mk lib/crypto/c_src/crypto.c lib/crypto/src/crypto.erl lib/ssh/src/ssh.erl
2017-04-03Merge PR-1076 from g-andrade/feature/ets_conditional_insert OTP-14319Sverker Eriksson
ETS: Allow for conditional insertions
2017-04-03Don't exit 0 if killing epmd is impossible because there's living nodesStephan Renatus
Living nodes will make `epmd -kill` fail, but there's no way to tell except by looking at the commands output. With this change, the exit code will be 1 to indicate failure. Signed-off-by: Stephan Renatus <[email protected]>
2017-03-31Merge PR-1394 from kostis/hipe-ppc-fixes ERL-369 OTP-14314Sverker Eriksson
HiPE PPC fixes
2017-03-31Update release notesErlang/OTP
2017-03-31Update version numbersErlang/OTP
2017-03-31Merge branch 'raimo/file-read_file-leaks-file-descriptors/ERL-383/OTP-14308' ↵Erlang/OTP
into maint-19 * raimo/file-read_file-leaks-file-descriptors/ERL-383/OTP-14308: Close FD after trying to open a directory
2017-03-30Merge branch 'goeldeepak/erts/fix_inet_gethost_long/ERL-61/PR-1345/OTP-14310'Lukas Larsson
* goeldeepak/erts/fix_inet_gethost_long/ERL-61/PR-1345/OTP-14310: This patch fixes the issue in which erlang fails to start if the hostname is 64 characters on a linux system.
2017-03-30Add a missing 0 to an address, which was suspiciously missingKostis Sagonas
2017-03-29Partially revert commit 37d63e9b8a0a96125ada858205286a58a5bed1aeKostis Sagonas
The above commit erroneously declared 'ppc64le' as a 'ppc64' for HiPE enabling. These two architectures are different and one can NOT expect that native code generated for one architecture runs on the other one. Rather than reverting this commit, make sure that the architecture is declared correctly instead of pretending it's a PPC64.
2017-03-29Close FD after trying to open a directoryRaimo Niskanen
2017-03-29Merge branch 'egil/erts/fix-copy-sharing-assert'Björn-Egil Dahlberg
* egil/erts/fix-copy-sharing-assert: erts: Fix faulty assert for refs in copy sharing
2017-03-28Merge PR-1379 from ostrovsky/erl-294 OTP-14307Sverker Eriksson
Improve no-pie solution from bug report ERL-294
2017-03-28erts: Fix faulty assert for refs in copy sharingBjörn-Egil Dahlberg
2017-03-28Fix use of uninitialized variable 'ret'Sverker Eriksson
DID_TRAP will read 'ret' even when error is returned. Found by valgrind.
2017-03-28Merge branch 'sverker/hipe-long-lived'Sverker Eriksson
* sverker/hipe-long-lived: Make hipe_bifs:alloc_data/3 pad addr to alignment erts: Change HIPE allocations from sys_alloc
2017-03-28Merge branch 'lukas/erts/hide-debug-consoles'Lukas Larsson
* lukas/erts/hide-debug-consoles: erts: Only show debug consoles if ERL_CONSOLE_MODE is defined
2017-03-28Merge branch 'lukas/erts/fix_enif_inspect_binary_emasculate/OTP-14304'Lukas Larsson
* lukas/erts/fix_enif_inspect_binary_emasculate/OTP-14304: erts: Add enif_inspect_binary emasculation of refc bins
2017-03-28erts: Print more complex terms in crash reasonLukas Larsson
2017-03-27Merge branch 'sverker/make-config-dep'Sverker Eriksson
ERL-379 * sverker/make-config-dep: erts: Make generated files depend on Makefile
2017-03-27Make hipe_bifs:alloc_data/3 pad addr to alignmentMagnus Lång
7814ec18b made hipe_bifs:alloc_data/3 expect alignments greater than 8 from erts_alloc(), which is not something that it guarantees. Fix it up so that it pads the allocation up to the required alignment, in case it does not initially satisfy the alignment requirement.
2017-03-24Fix double hit bug of select/3 with bound keySverker Eriksson
2017-03-24compiler: Add is_tagged_tuple instructionBjörn-Egil Dahlberg
Rewrite the instruction stream on tagged tuple tests. Tagged tuples means a tuple of any arity with an atom as its first element. Typically records, ok-tuples and error-tuples. from: ... {test,is_tuple,Fail,[Src]}. {test,test_arity,Fail,[Src,Sz]}. ... {get_tuple_element,Src,0,Dst}. ... {test,is_eq_exact,Fail,[Dst,Atom]}. ... to: ... {test,is_tagged_tuple,Fail,[Src,Sz,Atom]}. ...
2017-03-23Merge branch 'egil/erts/fix-no-thread-signal-service'Björn-Egil Dahlberg
* egil/erts/fix-no-thread-signal-service: erts: Don't allocate memory during signal handling erts: Fix erl_async include files for no-threads
2017-03-23Remove redundant variable initializationsGuilherme Andrade
2017-03-22Use ETS table id references on select_replaceGuilherme Andrade
2017-03-22erts: Optimize ets:select_replace to not use heapSverker Eriksson
for temporary matchspec results. ToDo: Would be even nicer if PAM could allocate and build the ETS objects without extra copy_struct needed.
2017-03-22erts: Fix benign bug in match spec machineSverker Eriksson
Looks like this line has truly been dead code as ets has (so far) always been using ERTS_PAM_COPY_RESULT and matchPushExpr is not generated for tracing.
2017-03-22Cleanup some unnecessary variable initializationSverker Eriksson
2017-03-22Add more complete key-safety checkSverker Eriksson
2017-03-22Fix typo that broke debug buildsGuilherme Andrade
2017-03-22Reject unsafe matchspecs on ets:select_replace/2Guilherme Andrade
Preemptively fail operation with badarg if the replacement object might have a different key.
2017-03-22Use magic refs on revamped ETS codeGuilherme Andrade
2017-03-22Deduplicate select* code on ETS hash tablesGuilherme Andrade
Refactor existing solution into a common iteration loop parameterized using stateful callbacks.
2017-03-22Disable ets:select_replace/2 for bagsGuilherme Andrade
The existing implementation presented both semantic inconsistencies and performance issues.
2017-03-22ETS: Allow for matchspec-based replacementGuilherme Andrade
2017-03-22This patch fixes the issue in which erlang fails to startDeepak Goel
if the hostname is 64 characters on a linux system.
2017-03-22Merge branch 'sverker/ets-table-identifiers/OTP-14094'Sverker Eriksson
* sverker/ets-table-identifiers: observer: Polish crashdump viewer for ETS observer: Polish Table Viewer tab stdlib: Remove ets_SUITE:memory_check_summary erts: Improve reduction count during table cleanup erts: Cleanup table status bits erts: Remove now redundant 'id' from DbTableCommon erts: Remove meta_main_tab erts: Pass tid argument down to trapping functions erts: Print table id as ref in crashdump and break menu erts: Replace meta_pid_to{_fixed}_tab with linked lists erts: Correct erl_rbtree comments about yielding erts: Add ERTS_RBT_YIELD_STAT_INIT to erl_rbtree Fix node_container_SUITE list_to_ref/1 Implement ets:all() using scheduler specific data Rename fixation count in ets table to avoid confusion Introduce references as table identifiers
2017-03-22erts: Improve reduction count during table cleanupSverker Eriksson
2017-03-22erts: Cleanup table status bitsSverker Eriksson
2017-03-22erts: Remove now redundant 'id' from DbTableCommonRickard Green
'the_name' keeps name of all tables. 'type' & DB_NAMED_TABLE mark tables as named. table ref id is built from magic bin when needed.
2017-03-22erts: Remove meta_main_tabSverker Eriksson
\o/ O / \ Also removed the body for CHECK_TABLES enabled by HARDDEBUG. Removed quite useless check for hash, but kept dead check code for tree.
2017-03-22erts: Pass tid argument down to trapping functionsSverker Eriksson
to get rid of meta table lookup by integer (tb->common.id)
2017-03-22erts: Print table id as ref in crashdump and break menuSverker Eriksson
2017-03-22erts: Replace meta_pid_to{_fixed}_tab with linked listsSverker Eriksson
from process psd through all owned/fixed tables. As meta_pid_to{_fixed}_tab maps to slot in meta_main_tab which is planned for destruction. In this commit we no longer seize table lock while freeing the table (free_table_cont) as it's not needed and makes the code a bit simpler. Any concurrent operation on the table will only access lock, owner and status and then bail out.
2017-03-22erts: Correct erl_rbtree comments about yieldingSverker Eriksson
true is yielding, false is done. and correct return value for unused foreach_ordered__