aboutsummaryrefslogtreecommitdiffstats
path: root/lib
AgeCommit message (Collapse)Author
2019-06-11Merge pull request #2277 from mattludwigs/fix-ssl-passive-flag-defaultIngela Andin
Fix SSL cb_info missing underscore in default OTP-15887
2019-06-11beam_ssa_type: Fix meet/join inconsistencyJohn Högberg
meet/2 and join/2 were not entirely consistent with each other, and it was possible to meet integers that didn't overlap, producing a nonsense result. None of these can cause issues in the OTP 22 track as far as we can tell, so a patch doesn't feel necessary at this time.
2019-06-11beam_ssa_type: Fix 'band' type determinationJohn Högberg
The use of meet/2 was incorrect as we weren't guaranteed to provide a more specific type. This is unlikely to cause errors in OTP 22 as our ranges were *always* '0 .. X' or 'X .. X', and a meet/2 of two integers would take the least specific minimum value and most specific maximum value, making things work by accident. This is covered by beam_type_SUITE:integers/1, and was made visible when beam_types:meet/2 was fixed to reject integers that didn't overlap fully.
2019-06-11beam_validator: Reduce literals to their typesJohn Högberg
We didn't gain anything by tracking literals exactly, and it greatly complicates sharing types between passes.
2019-06-11beam_validator: Refactor local call validationJohn Högberg
2019-06-11beam_validator: Simplify the match context typeJohn Högberg
There's no need to have an id as part of the type, as the value reference (through which the type is reached) uniquely identifies the match context.
2019-06-11beam_validator: Use integers as tuple element keysJohn Högberg
This simplifies a later migration to a unified type format, as the literal representation may differ between passes, so passing container types keyed by literals will fail.
2019-06-11Fix the test case cpu_sup_SUITE:util_valuesKjell Winblad
The message signaling that the spinning processes had stopped was previously sent too early.
2019-06-11ETS ordered_set: Improvements to the CA tree implementationKjell Winblad
This commit only affects the implementation of ETS `ordered_set` tables with the `write_concurrency` option enabled. Such tables are implemented with a data structure that is called the contention adapting search tree (CA tree). This commit introduces the following changes: * This commit causes a join to be triggered in one randomly selected base node in about one of 1000 read unlock calls for base node locks. No such joins happened before this commit. Before this commit, operations that only acquired looks in read-mode never triggered any contention adaptation. Therefore, the CA tree could get stuck in a sub-optimal state in certain scenarios. This could happen, for example, when a CA tree is first populated with parallel inserts (which will cause splits of base nodes) and then only read-only operations are applied to the data structure. Benchmark results from the `ets_SUITE:lookup_catree_par_vs_seq_init_benchmark/0` benchmark function (which is included in this commit) shows that this change can improve the throughput of the CA tree in the scenario described above. * Read-only operations will now also increase values of statistics counters when they detect that they need to wait for other operations. Only write operation changed statistics counters before this commit. This improves the statistics that the adaptation heuristics is based on. * Additionally, this commit adds an upper and lower limit to the contention statistics variables in the base nodes. Such limits did not exist before this commit. This should, for example, make the CA tree more responsive to contention after long periods of low contention.
2019-06-11Merge branch 'maint'Hans Nilsson
* maint: Remove duplication of SSH encoding macros Remove duplicate ssh_userauth.hrl
2019-06-11Merge branch 'hans/ssh/internal_cleaning/PR-2255/PR-2256/OTP-15876' into maintHans Nilsson
* hans/ssh/internal_cleaning/PR-2255/PR-2256/OTP-15876: Remove duplication of SSH encoding macros Remove duplicate ssh_userauth.hrl
2019-06-11Merge branch 'maint'Péter Dimitrov
* maint: ssl: Update standards compliance ssl: Fix alert handling (TLS 1.3) ssl: Add tests for ALPN in TLS 1.3 ssl: Implement ALPN in TLS 1.3 ssl: Add TLS 1.3 test group to ssl_certificate_verify_SUITE ssl: Fix negative tests in ssl_basic_SUITE
2019-06-11Merge pull request #2276 from peterdmv/ssl/tls13-alpnPéter Dimitrov
Implement ALPN in TLS 1.3
2019-06-11stdlib: Fix a bug concerning io_lib option 'chars_limit'Hans Bolinder
See also https://bugs.erlang.org/browse/ERL-967.
2019-06-11Merge branch 'maint'Ingela Anderton Andin
2019-06-11Merge branch 'ingela/public_key/PEBS2-AES/ERL-952/OTP-15870' into maintIngela Anderton Andin
* ingela/public_key/PEBS2-AES/ERL-952/OTP-15870: public_key: Add AES to PBE2
2019-06-11Merge branch 'maint'John Högberg
* maint: erts: Fix bad loader optimization of get_tuple_element beam_ssa_type: Fix incorrect bitstring unit determination
2019-06-11Merge branch 'john/erts/fix-bad-get_tuple_element-opt/OTP-15871/ERIERL-374' ↵John Högberg
into maint * john/erts/fix-bad-get_tuple_element-opt/OTP-15871/ERIERL-374: erts: Fix bad loader optimization of get_tuple_element
2019-06-11Merge branch 'john/compiler/fix-bad-bitstring-type-opt/OTP-15872' into maintJohn Högberg
* john/compiler/fix-bad-bitstring-type-opt/OTP-15872: beam_ssa_type: Fix incorrect bitstring unit determination
2019-06-10erts: Fix bad loader optimization of get_tuple_elementJohn Högberg
The following sequence would be wrongly optimized into a i_get_tuple_element2 instruction, reading an element from the wrong tuple: {get_tuple_element,{x,0},1,{x,0}}. {get_tuple_element,{x,0},2,{x,1}}.
2019-06-10beam_ssa_type: Fix incorrect bitstring unit determinationJohn Högberg
The compiler would treat the "Unit" of bs_init instructions as the unit of the result instead of the required unit of the input, causing is_binary checks to be wrongly optimized away.
2019-06-10Merge branch 'maint'Siri Hansen
2019-06-10Merge branch 'siri/ct/hook-terminated-not-initiated/ERIERL-370/OTP-15863' ↵Siri Hansen
into maint * siri/ct/hook-terminated-not-initiated/ERIERL-370/OTP-15863: [ct] Fix bug where Hook:terminate/1 was called before Hook:init/2
2019-06-10public_key: Add AES to PBE2Ingela Anderton Andin
2019-06-10Merge branch 'maint'Ingela Anderton Andin
2019-06-10Merge branch 'ingela/ssl/dtls-multiplxor/ERL-962/OTP-15864' into maintIngela Anderton Andin
* ingela/ssl/dtls-multiplxor/ERL-962/OTP-15864: ssl: Add missing gen_server return value in DTLS packet demux process
2019-06-10Testing two PRsHans Nilsson
Merge commit '508ddd5aaa189ddcf7a06f4342c187b07ec1734a'; commit '5160870a868bfcb29bd8f1a2c12b7b7b7963d946' into hans/ssh/PRs * commit '508ddd5aaa189ddcf7a06f4342c187b07ec1734a': Remove duplication of SSH encoding macros * commit '5160870a868bfcb29bd8f1a2c12b7b7b7963d946': Remove duplicate ssh_userauth.hrl
2019-06-08specs_gen script fix error messagelarry
The warning message was using input file, not output file: Example: could not write file '../src/alarm_handler.erl': no such file or directory Which is the input file, the correct message is: could not write file '../specs/alarm_handler.specs': no such file or directory
2019-06-07Fix SSL cb_info missing underscore in defaultMatt Ludwigs
2019-06-07ssl: Add missing gen_server return value in DTLS packet demux processIngela Anderton Andin
2019-06-07Correct type spec for gen_sctp:connect/4,5Raimo Niskanen
2019-06-07[snmp|test] Use system monitor to discover slow VM issuesMicael Karlberg
We have experienced intermittent failures of random test cases on slow VMs. In order to get more info about the system, we use system monitor to collect info. We have one global monitor system, and one local monitor on each node. Each local monitor report to the global, which in turn prints a message.
2019-06-07ssl: Update standards compliancePéter Dimitrov
2019-06-07ssl: Fix alert handling (TLS 1.3)Péter Dimitrov
Server and client use different secrets when sending certificate related alerts. This is due to a change to the TLS protocol where clients send their 'certificate' message after they have received the server's 'finished' message.
2019-06-07ssl: Add tests for ALPN in TLS 1.3Péter Dimitrov
2019-06-07ssl: Implement ALPN in TLS 1.3Péter Dimitrov
2019-06-07ssl: Add TLS 1.3 test group to ssl_certificate_verify_SUITEPéter Dimitrov
2019-06-07ssl: Fix negative tests in ssl_basic_SUITEPéter Dimitrov
2019-06-07cerl: Fix spelling error in a case of ctype()Kostis Sagonas
2019-06-06Remove duplication of SSH encoding macrosPaul Meinhardt
2019-06-06Remove duplicate ssh_userauth.hrlPaul Meinhardt
The `ssh_userauth.hrl` header file was a duplicate of `ssh_auth.hrl` not used anywhere except for the ssh benchmark suite.
2019-06-05Merge branch 'maint'Siri Hansen
2019-06-05Merge branch 'siri/logger/relatve-log-file-path/OTP-15850' into maintSiri Hansen
* siri/logger/relatve-log-file-path/OTP-15850: [logger] Store file name as absolute path in logger_std_h
2019-06-05Merge branch 'maint'Hans Bolinder
* maint: dialyzer: Correct indentation of field warnings
2019-06-05Merge branch 'hasse/dialyzer/fix_string_split/OTP-15861/ERL-953' into maintHans Bolinder
* hasse/dialyzer/fix_string_split/OTP-15861/ERL-953: dialyzer: Correct indentation of field warnings
2019-06-05ssl: Fix broken return valueIngela Anderton Andin
2019-06-05[ct] Fix bug where Hook:terminate/1 was called before Hook:init/2Siri Hansen
This problem was introduced with commit acd87425acf7705328b01aa8f0a804207ffe4790, when the new hook function post_groups/2 and post_all/3 were added.
2019-06-04ssl: Returned "alert error string" should be same as logged alert stringIngela Anderton Andin
2019-06-04erts: Fix {active,N} close race condition on windowsLukas Larsson
When a close is detected on windows, we need to keep track of it as it will not trigger again.
2019-06-04Merge branch 'maint'Ingela Anderton Andin