aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2019-01-15Merge branch 'ingela/maint-21/active-once/ERL-371/OTP-15504' into maint-21Erlang/OTP
* ingela/maint-21/active-once/ERL-371/OTP-15504: ssl: Guarantee active once data delivery
2019-01-15Merge branch 'lars/xmerl/bug-in-detect-charset/OTP-15492' into maint-21Erlang/OTP
* lars/xmerl/bug-in-detect-charset/OTP-15492: [xmerl] Fix detect charset crash
2019-01-15Merge branch 'bjorn/compiler/interim-tuple-bug/OTP-15501/ERL-807' into maint-21Erlang/OTP
* bjorn/compiler/interim-tuple-bug/OTP-15501/ERL-807: Remove unsafe optimization for delaying creation of stackframe
2019-01-08ssl: Guarantee active once data deliveryIngela Anderton Andin
New internal active N changed timing, and new check is needed.
2019-01-07[xmerl] Fix detect charset crashLars Thorsen
The charset detection parsing crash in some cases when the XML directive is not syntactic correct.
2019-01-07Remove unsafe optimization for delaying creation of stackframeBjörn Gustavsson
b89044a800c4 introduced an optimization that tries to delay creation of stack frames. It turns out that this optimization is not always safe. (See the new test case for an example.) Since the code generator is completely rewritten in the `master` branch for the upcoming OTP 22 release, it does not make sense trying to mend this optimization. It is better to remove it. Out of a sample of about 1000 modules in OTP, about 50 of them are changed as a result of removing this optimization. The compiler in OTP 22 will do the same optimization in a cleaner, safer, and more effective way. https://bugs.erlang.org/browse/ERL-807
2018-12-27Updated OTP versionOTP-21.2.2Erlang/OTP
2018-12-27Prepare releaseErlang/OTP
2018-12-27Merge branch 'hans/ssh/port_leak/OTP-15397' into maint-21Erlang/OTP
* hans/ssh/port_leak/OTP-15397: ssh: Fix port leakage for daemons failing at start ssh: Add port close test # Conflicts: # lib/ssh/test/ssh_basic_SUITE.erl
2018-12-21ssh: Fix port leakage for daemons failing at startHans Nilsson
2018-12-21ssh: Add port close testHans Nilsson
2018-12-20Updated OTP versionOTP-21.2.1Erlang/OTP
2018-12-20Prepare releaseErlang/OTP
2018-12-20Merge branch 'ingela/ssl/patch-maint-21/ERL-308/OTP-15489' into maint-21Erlang/OTP
* ingela/ssl/patch-maint-21/ERL-308/OTP-15489: ssl: Fix renegotiation with new TLS sender ssl: Add renegotiate test case ssl: Remove no longer needed functions ssl: Fix downgrade ssl: Remove checks and conversions not needed ssl: Use binary:copy/2 to avoid list overhead ssl: Remove unnecessary internal event ssl: Clean code ssl: Add static_env record
2018-12-20Merge branch 'sverker/big-band-bug/ERL-804/OTP-15487' into maint-21Erlang/OTP
* sverker/big-band-bug/ERL-804/OTP-15487: erts: Fix bug in 'band' of two negative numbers, one big
2018-12-20Merge branch 'sverker/fix-atomics-get-large-unsigned/PR-2061/OTP-15486' into ↵Erlang/OTP
maint-21 * sverker/fix-atomics-get-large-unsigned/PR-2061/OTP-15486: erts: Fix possible heap corruption getting atomics
2018-12-20Merge branch 'sverker/erts/prim_file-perm-own-bigendian/OTP-15485' into maint-21Erlang/OTP
* sverker/erts/prim_file-perm-own-bigendian/OTP-15485: erts: Fix warning and potential big-endian-bug in prim_file
2018-12-20ssl: Fix renegotiation with new TLS senderIngela Anderton Andin
Wtite connection state was not synchronized when peer initiated renegotiation
2018-12-20ssl: Add renegotiate test caseIngela Anderton Andin
2018-12-20ssl: Remove no longer needed functionsIngela Anderton Andin
As the stop wrapper functions are no longer needed after tls_sender that altered the behaviour of the TLS distribution code.
2018-12-20ssl: Fix downgradeIngela Anderton Andin
Both test case and code needed updates to work as intended. Code needed update due to new tls_sender process and the test case gave false positive reusult erarlier probably due to beeing to sloopy in order to avoid timeouts.
2018-12-20ssl: Remove checks and conversions not neededIngela Anderton Andin
2018-12-20ssl: Use binary:copy/2 to avoid list overheadIngela Anderton Andin
2018-12-20ssl: Remove unnecessary internal eventIngela Anderton Andin
2018-12-20ssl: Clean codeIngela Anderton Andin
Rename Connection:handle_common_event Connection:handle_protocol_record removing use of unnecessary argument and making code easier to understand.
2018-12-20ssl: Add static_env recordIngela Anderton Andin
State values created at init
2018-12-17erts: Fix bug in 'band' of two negative numbers, one bigSverker Eriksson
Similar bug as for bxor fixed by abc4fd372d476821448dfb9 Ex: 1> io:format("~.16B\n", [-16#1110000000000000000 band (-1)]). -1120000000000000000 Wrong result for (-X bsl WS) band -Y. where X is any positive integer WS is erlang:system_info(wordsize)*8*N where N is 1 or larger Y is any positive integer smaller than (1 bsl WS) Fix: The subtraction of 1 (for 2-complement conversion) must be carried along all the way to the last words.
2018-12-13erts: Fix possible heap corruption getting atomicsTomas Abrahamsson
Due to comparison as a signed integer, when getting an unsigned atomic in the range 2^63-1..2^64-1 (when the most significant bit was set), the heap could get corrupted when the integer was retrieved: hsz would get set to zero, but the code proceeded to build a bignum. Steps to reproduce (at least on x86_64): $ erl 1> A = atomics:new(1,[{signed,false}]). 2> atomics:put(A,1,18446744073709551615). 3> atomics:get(A,1). At the last step, the shell would print some garbage and hang.
2018-12-13erts: Fix warning and potential big-endian-bug in prim_fileSverker Eriksson
for set_permission and set_owner.
2018-12-10Updated OTP versionOTP-21.2Erlang/OTP
2018-12-10Prepare releaseErlang/OTP
2018-12-07Merge branch 'maint-20' into maintHenrik Nord
* maint-20: Updated OTP version Prepare release
2018-12-07Merge branch 'dgud/wx/perf-imp' into maintDan Gudmundsson
* dgud/wx/perf-imp: Don't try to wake up wx thread when not necessary
2018-12-07Merge branch 'henrik/ERIERL-278/OTP-15470' into maintHenrik Nord
* henrik/ERIERL-278/OTP-15470: Handle erroneous length during decode (BER only) without crashing
2018-12-06Don't try to wake up wx thread when not necessaryDan Gudmundsson
That kills performance on at least windows when a the load goes up and a lot of commands is sent to the driver.
2018-12-06Updated OTP versionOTP-20.3.8.15Erlang/OTP
2018-12-06Prepare releaseErlang/OTP
2018-12-06Merge branch 'henrik/ERIERL-278/OTP-15470' into maint-20Erlang/OTP
* henrik/ERIERL-278/OTP-15470: Handle erroneous length during decode (BER only) without crashing
2018-12-06Handle erroneous length during decode (BER only) without crashingKenneth Lundin
2018-12-06Merge branch 'lukas/OTP-21.1.1/scheduler_pollset/OTP-15475' into maintLukas Larsson
* lukas/OTP-21.1.1/scheduler_pollset/OTP-15475: erts: Move fds with active true behaviour to own pollset erts: Fix lists_member_2 reduction count erts: Allow code_model_small to be set in xcomp setting erts: Implement delay_send using timer instead of poll erts: Optimize driver_set_timer(0) to fire at once erts: Optimize the inet driver multi timers for one timer erts: Move all inet tcp CONNECTED timers to multi timer erts: Add erts_io_notify_port_task_executed to check_io msacc state erts: Add pre-alloc to ALLOC msacc state erts: Make thr prgr wakeup current or sched 1 erts: Pass thread progress data where possible
2018-12-06erts: Move fds with active true behaviour to own pollsetLukas Larsson
At start of the VM a poll-set that the schedulers will check is created where fds that have triggered many (at the moment, many means 10) times without being deselected inbetween. In this scheduler specific poll-set fds do not use ONESHOT, which means that the number of syscalls goes down dramatically for such fds. This pollset is introduced in order to handle fds that are used by the erlang distribution and that never change their state from {active, true}. This pollset only handles ready_input events, ready_output is still handled by the poll threads. During overload, polling the scheduler poll-set is done on a 10ms timer.
2018-12-06Merge branch 'kenneth/asn1/ERIERL-278/OTP-15470' into maintRaimo Niskanen
* 'kenneth/asn1/ERIERL-278/OTP-15470' of git-server:kenneth_otp: Handle erroneous length during decode (BER only) without crashing
2018-12-06Merge branch 'raimo/test-cuddling' into maintRaimo Niskanen
* raimo/test-cuddling: Rewrite to work for stream connection Update Linux version for pktoptions TTL
2018-12-06Merge pull request #2042 from bjorng/bjorn/compiler/stacktrace/OTP-15481Björn Gustavsson
Fix unsafe optimization of stack trace building
2018-12-05Rewrite to work for stream connectionRaimo Niskanen
2018-12-05Update Linux version for pktoptions TTLRaimo Niskanen
2018-12-05Fix unsafe optimization of stack trace buildingBjörn Gustavsson
The `sys_core_fold` pass of the compiler would optimize away the building of the stacktrace in code such as: try ... catch C:R:Stk -> erlang:raise(C, {R,Stk}, Stk) end That optimization is unsafe and would cause a crash in a later compiler pass.
2018-12-05Merge pull request #2039 from ↵Lukas Larsson
garazdawi/lukas/erts/fix_lit_msg_copy_in_gc/ERL-741/OTP-15478 erts: Fix copy of literal msg during gc
2018-12-04Merge branch 'raimo/ssl/tls_dist-optimization' into maintRaimo Niskanen
* raimo/ssl/tls_dist-optimization: Handle socket close in state downgrade Handle dead sender at terminate Handle tls_sender exit properly Optimize split_bin Improve dist send throughput
2018-12-04Merge branch 'raimo/ssl/tls_dist-profiling' into maintRaimo Niskanen
* raimo/ssl/tls_dist-profiling: Improve benchmark Implement print on other node Fix compiler warnings