aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2018-06-05erts: Cleanup in proc_queue_signalSverker Eriksson
* Remove 'last' arg to sig_enqueue_trace_cleanup * Only notify 'rp' if enqueue succeeded
2018-06-05erts: Fix broken signal queueSverker Eriksson
broken on master by 613cde66c25464121f2f6dace99782bad0e07d9b Scenario: proc_queue_signal() fails to send switched pending signal due to state & ERTS_PSFLG_FREE, and then calls erts_proc_sig_send_monitor_down() to enqueue to self followed by sig_enqueue_trace_cleanup() that destroyed 'next' pointer of enqueued signal. Solution: Switch order and do sig_enqueue_trace_cleanup() first.
2018-06-05Merge branch 'maint'John Högberg
* maint: Updated OTP version Prepare release inets: Gracefully handle bad headers
2018-06-05Merge branch 'maint-20' into maintJohn Högberg
* maint-20: Updated OTP version Prepare release inets: Gracefully handle bad headers [erl_docgen] Update version [erl_docgen] Add missing file db_funcs.xsl to file list erts: Fix bug in system_profile erts: Fix bug in enif_binary_to_term for immediates
2018-06-05Merge branch 'hans/ssh/cuddle_tests'Hans Nilsson
* hans/ssh/cuddle_tests: ssh: Remove dubious pubkey setup
2018-06-05ssh: Remove dubious pubkey setupHans Nilsson
Conflicts: lib/ssh/test/ssh_algorithms_SUITE.erl
2018-06-05stdlib: Fix error reason for maps:with/withoutLukas Larsson
2018-06-05Updated OTP versionOTP-20.3.7Erlang/OTP
2018-06-05Prepare releaseErlang/OTP
2018-06-05Merge branch 'ingela/inets/header-handling/OTP-15092' into maint-20Erlang/OTP
* ingela/inets/header-handling/OTP-15092: inets: Gracefully handle bad headers
2018-06-05Merge branch 'lars/erl_docgen/fix-xsl-makefile/OTP-15091' into maint-20Erlang/OTP
* lars/erl_docgen/fix-xsl-makefile/OTP-15091: [erl_docgen] Update version [erl_docgen] Add missing file db_funcs.xsl to file list
2018-06-05Merge branch 'sverker/system-profile-bug/OTP-15085' into maint-20Erlang/OTP
* sverker/system-profile-bug/OTP-15085: erts: Fix bug in system_profile
2018-06-05Merge branch 'sverker/enif_binary_to_term-bug/OTP-15080' into maint-20Erlang/OTP
* sverker/enif_binary_to_term-bug/OTP-15080: erts: Fix bug in enif_binary_to_term for immediates
2018-06-05mikpe/erts-port_task-invalid-call/PR-1828/ERL-621/OTP-15108Lukas Larsson
do not call abort_signal_task() with invalid data
2018-06-05erts: Fix emulator log messages to use erlang:system_timeLukas Larsson
This was changed in the logger in 8aa64c90ddd20ec0ca8cc5fe92a6124324c51da5.
2018-06-05Merge branch 'dgud/stdlib/string-case-bin-bug'Dan Gudmundsson
* dgud/stdlib/string-case-bin-bug: Fix *case bugs for binaries
2018-06-05Merge pull request #1830 from arcz/patch-1Hans Bolinder
Missing space in gen_event doc
2018-06-04erts: Fix race between ets table deletion and auto-unfixSverker Eriksson
Problem: 1. Process A fixates table T. 2. Process B starts deleting table T (either by ets:delete or exit) and does tid_clear(). 3. Process A exits and does proc_cleanup_fixed_table() and get NULL from btid2tab() and deallocates DbFixation. 4. Process B continues deleting table in free_fixations_locked() and finds the deallocated DbFixation in the fixing_procs tree. Solution: Wait with tid_clear() until after free_fixations_locked() has traversed the fixing_procs tree.
2018-06-04Revert "Run the sharing optimisation in beam_jump until fixpoint"José Valim
We have found cases where compilation drastically slows down due to this commit. We are working on a minimal cases and plan to bring this patch back once we can work our the performance issues. This reverts commit f7c9383f4c3d4b6819b5ba4d54c7093df806fe4a.
2018-06-04kernel: Add LOGGER_SERVER_TAG to logger_serverLukas Larsson
This makes recursive calls to not dead-lock logger_server.
2018-06-04Merge branch 'sverker/pooled-age-order'Sverker Eriksson
* sverker/pooled-age-order: erts: Let allocator pooled_tree also use Age Order
2018-06-04Merge branch 'sverker/erlang-memory-fix'Sverker Eriksson
* sverker/erlang-memory-fix: erts: Purge unused allocation types erts: Fix erlang:memory for 'processes' and 'processes_used'
2018-06-04Merge PR-1823 from jesperes/ERL-629-erl_call-free-before-use OTP-15105Sverker Eriksson
ERL-629 Do not free() module buffer until it has been used
2018-06-04Merge branch 'sverker/ets-count/OTP-14987'Sverker Eriksson
* sverker/ets-count/OTP-14987: erts,stdlib: Improve docs about obsolete ets_limit erts: Reduce test log noise from ets_SUITE erts: Increase scalability of ets name lookup erts: Rename one of delete_trap to select_delete_trap erts: Refactor usage of am_atom_put to ERTS_MAKE_AM erts: Add system_info(ets_count) erts: Fix narrow race between ets:new and ets:delete
2018-06-04erts,stdlib: Improve docs about obsolete ets_limitSverker Eriksson
2018-06-04erts: Reduce test log noise from ets_SUITESverker Eriksson
2018-06-04erts: Increase scalability of ets name lookupSverker Eriksson
by expanding the default size of the hash table and increase number of locks.
2018-06-04erts: Rename one of delete_trap to select_delete_trapSverker Eriksson
2018-06-04erts: Refactor usage of am_atom_put to ERTS_MAKE_AMSverker Eriksson
and let compiler determine string lengths. These were actually wrong in erl_db.c: count_trap\0 replace_tra select_tra
2018-06-04erts: Add system_info(ets_count)Sverker Eriksson
2018-06-04Merge branch 'hasse/dialyzer/improve_contract_warnings/OTP-14982'Hans Bolinder
* hasse/dialyzer/improve_contract_warnings/OTP-14982: erts: Improve contracts of zlib kernel: Improve contracts erts: Improve a contract stdlib: Improve a contract compiler: Improve a contract dialyzer: Refine the test for overspecified functions
2018-06-04Merge branch 'hans/public_key/match_fun_https/OTP-14962'Hans Nilsson
* hans/public_key/match_fun_https/OTP-14962: public_key: Testcase for cert with wildcard in SAN public_key: Doc public_key: Matchfun for HTTPS
2018-06-04Merge branch 'hans/crypto/EVP_DH_key/OTP-14864'Hans Nilsson
* hans/crypto/EVP_DH_key/OTP-14864: crypto: Valgrind suggestions
2018-06-04crypto: Valgrind suggestionsHans Nilsson
2018-06-04public_key: Testcase for cert with wildcard in SANHans Nilsson
2018-06-04public_key: DocHans Nilsson
2018-06-04public_key: Matchfun for HTTPSHans Nilsson
2018-06-04Merge branch 'hasse/syntax_tools/fix_map_type/OTP-15098/ERIERL-177'Hans Bolinder
* hasse/syntax_tools/fix_map_type/OTP-15098/ERIERL-177: syntax_tools: Fix a bug regarding reverting map types.
2018-06-04Fix *case bugs for binariesDan Gudmundsson
Bad optimizing code introduced in 5c51e87bee9d
2018-06-04Merge pull request #1806 from bitnitdit/erlang-xml-typosLukas Larsson
Fix typos in erlang.xml
2018-06-04sys_core_fold: Fix name capture problemBjörn Gustavsson
sys_core_fold could do unsafe transformations on the code from the old inliner (invoked using the compiler option `{inline,[{F/A}]}` to request inlining of specific functions). To explain the bug, let's first look at an example that sys_core_fold handles correctly. Consider this code: 'foo'/2 = fun (Arg1,Arg2) -> let <B> = Arg2 in let <A,B> = <B,Arg1> in {A,B} In this example, the lets can be completely eliminated, since the arguments for the lets are variables (as opposed to expressions). Since the variable B is rebound in the inner let, `sys_core_fold` must take special care when doing the substitutions. Here is the correct result: 'foo'/2 = fun (Arg1, Arg2) -> {Arg2,Arg1} Consider a slight modifictation of the example: 'bar'/2 = fun (Arg1,Arg2) -> let <B> = [Arg2] in let <A,B> = <B,[Arg1]> in {A,B} Here some of the arguments for the lets are expressions, so the lets must be kept. sys_core_fold does not handle this example correctly: 'bar'/2 = fun (Arg1,Arg2) -> let <B> = [Arg2] in let <B> = [Arg1] in {B,B} In the inner let, the variable A has been eliminated and replaced with the variable B in the body (the first B in the tuple). Since the B in the outer let is never used, the outer let will be eliminated, giving: 'bar'/2 = fun (Arg1,Arg2) -> let <B> = [Arg1] in {B,B} To handle this example correctly, sys_core_fold must rename the variable B in the inner let like this to avoid capturing B: 'bar'/2 = fun (Arg1,Arg2) -> let <B> = [Arg2] in let <NewName> = [Arg1] in {B,NewName} (Note: The `v3_kernel` pass alreday handles those examples correctly in case `sys_core_fold` has been disabled.)
2018-06-04sys_core_inline: Avoid spurious warningsBjörn Gustavsson
Add more `compiler_generated` attributes to avoid spurious compiler warnings triggered by the bug fix in the next commit.
2018-06-04Merge branch 'lukas/stdlib/fix-io_o_request_raise/OTP-15101'Lukas Larsson
* lukas/stdlib/fix-io_o_request_raise/OTP-15101: stdlib: Fix io:put_chars/2 error
2018-06-04Merge branch 'lukas/erts/fix-scheduler-data-sched-out-bug/OTP-13123'Lukas Larsson
* lukas/erts/fix-scheduler-data-sched-out-bug/OTP-13123: erts: Make sure scheduler_data is set
2018-06-04Merge branch 'lukas/otp/fix-mkdir-makefile-error'Lukas Larsson
2018-06-02Fix typo in inet docArtur Cygan
2018-06-01Merge branch 'hans/ssh/channel_polish/OTP-15083'Hans Nilsson
* hans/ssh/channel_polish/OTP-15083: ssh: Better crash report for bad channel callback module
2018-06-01Merge branch 'hans/ssh/channel_testsuite/OTP-15051'Hans Nilsson
* hans/ssh/channel_testsuite/OTP-15051: ssh: Channel testsuite
2018-06-01Merge branch 'hans/ssh/rm_depr'Hans Nilsson
* hans/ssh/rm_depr: ssh: Change get_stacktrace
2018-06-01Merge branch 'hasse/stdlib/iso3339_fix'Hans Bolinder
* hasse/stdlib/iso3339_fix: stdlib: Add links to RFC 3339 in calendar(3)