aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2018-10-29Merge branch 'maint-18' into maintRickard Green
* maint-18: Updated OTP version Prepare release
2018-10-29Merge pull request #1977 from RogierWV/maint/OTP-15389Lukas Larsson
Fix run_erl.c so it compiles on Solaris
2018-10-29Merge pull request #1983 from binaryseed/bug-default-address_please/OTP-15388Lukas Larsson
Fix the default implementation of address_please
2018-10-29Merge branch 'jimdigriz/os_mon/fix_cpu_sup_android/OTP-15387' into maintLukas Larsson
* jimdigriz/os_mon/fix_cpu_sup_android/OTP-15387: Make Erlang's cpu_sup function better on Android SELinux is another cause of MSG_CTRUNC
2018-10-29Optimize operator '--' and yield on large inputsJohn Högberg
The removal set now uses a red-black tree instead of an array on large inputs, decreasing runtime complexity from `n*n` to `n*log(n)`. It will also exit early when there are no more items left in the removal set, drastically improving performance and memory use when the items to be removed are present near the head of the list. This got a lot more complicated than before as the overhead of always using a red-black tree was unacceptable when either of the inputs were small, but this compromise has okay-to-decent performance regardless of input size. Co-authored-by: Dmytro Lytovchenko <[email protected]>
2018-10-26Make reltool correctly handle Windows 'ERL_LIBS'Stavros Aronis
Without this patch reltool would try to split strings like "C:\foo" into ["C","\foo"].
2018-10-26ssl: fix timezone-related bug in ssl_pem_cacheMaxim Fedorov
Caught with unit test in ssl_pem_cache_SUITE. When local timezone is PST (Pacific Standard Time), PEM cache was not evicting expired entries due to file time converstion was done using calendar:now_to_datetime, while file modification time is actually in local time. Use os:system_time() to align with file_info modified time.
2018-10-26Updated OTP versionOTP-18.3.4.10Erlang/OTP
2018-10-26Prepare releaseErlang/OTP
2018-10-26Merge branch 'sverker/erts/18/memory-leak-terminating-port/OTP-14609' into ↵Erlang/OTP
maint-18 * sverker/erts/18/memory-leak-terminating-port/OTP-14609: erts: Fix memory leak when sending to terminating port
2018-10-26Inline erts_cmpJohn Högberg
This greatly increases the performance of '--'/2 which does a lot of term comparisons.
2018-10-26Update profiling.xmlxbofang
memory typo
2018-10-25[cdv] Fix handling of truncated literalsSiri Hansen
2018-10-25Clarify a magical allocation sizeDmytro Lytovchenko
2018-10-25Fix trapping in lists:reverse/2John Högberg
The first stage wasn't bounded by reductions, and it bumped far more reductions than it should have due to a logic bug.
2018-10-24Fix docs on gen_event optional callbackBrujo Benavides
It returns `ok`, instead of `noreply`.
2018-10-24Extend the sharing-preserving routines to optionally copy literalsBjörn Gustavsson
In the implementation of the zero-copying term storage, we want to preserve sharing, but not copy literals because the modules holding the literals could be unloaded under our feet.
2018-10-24Merge branch 'bjorn/observer/fix-crashdump_viewer/ERL-722/OTP-15365' into maintBjörn Gustavsson
* bjorn/observer/fix-crashdump_viewer/ERL-722/OTP-15365: Eliminate crash in crashdump_viewer reading some literal maps
2018-10-24Merge pull request #1991 from bjorng/bjorn/erts/fix-max_heap_size/OTP-15360Björn Gustavsson
Honor the max heap size when copying literals after purging
2018-10-24Merge pull request #1992 from bjorng/bjorn/stdlib/beam_lib/ERL-696Björn Gustavsson
beam_lib: Clarify the beam() type in code and documentation OTP-15378
2018-10-24Merge branch 'hans/crypto/cuddle_tests' into maintHans Nilsson
* hans/crypto/cuddle_tests: crypto: Fix tests failing if more than one test engine available This could happen in an Valgrind run: crypto: Disable engine tests on Darwin and Windows Does not work.
2018-10-24crypto: Fix tests failing if more than one test engine availableHans Nilsson
This could happen in an Valgrind run: === Reason: no case clause matching ["otp_test_engine.so", "otp_test_engine.valgrind.so"] in function crypto:check_otp_test_engine/1 (crypto.erl, line 2026) in call from engine_SUITE:engine_load_all_methods/1 (engine_SUITE.erl, line 154)
2018-10-24crypto: Disable engine tests on Darwin and WindowsHans Nilsson
Does not work.
2018-10-24Merge branch 'hans/ssh/document_user/OTP-15314' into maintHans Nilsson
* hans/ssh/document_user/OTP-15314: ssh: Re-phrase and adjust the documentation (ssh_file.xml) ssh: Move some option's documentation to ssh_file user_dir user_dir_fun (missing previously) *_passphrase system_dir ssh: Clearify a couple of options user_dir, system_dir and *_passphrase are only used in the default callback module ssh_file ssh: Links updated in ssh.xml ssh: Add reference manual page for the ssh_file module ssh: Add new User's Guide chapter about SSH terminology The term "user" means different things in OpenSSH and in Erlang/SSH. This new chapter explains why.
2018-10-24ssh: Re-phrase and adjust the documentation (ssh_file.xml)Hans Nilsson
2018-10-24ssh: Move some option's documentation to ssh_fileHans Nilsson
user_dir user_dir_fun (missing previously) *_passphrase system_dir
2018-10-24ssh: Clearify a couple of optionsHans Nilsson
user_dir, system_dir and *_passphrase are only used in the default callback module ssh_file
2018-10-24ssh: Links updated in ssh.xmlHans Nilsson
2018-10-24ssh: Add reference manual page for the ssh_file moduleHans Nilsson
This callback module has the knowledge about the different files used by Erlang/OTP SSH. It was unfortunatly not documented previously.
2018-10-24ssh: Add new User's Guide chapter about SSH terminologyHans Nilsson
The term "user" means different things in OpenSSH and in Erlang/SSH. This new chapter explains why.
2018-10-23Merge branch 'rickard/development_runtime_dependency/OTP-15341' into maintRickard Green
* rickard/development_runtime_dependency/OTP-15341: Fixup development runtime dependencies
2018-10-23Fixup development runtime dependenciesRickard Green
The script 'make/fixup_development_runtime_dependencies' is run at the end of a build of development branches in order to fixup future not yet resolved versions (<app name>-@<ticket>(:<ticket>)+@) in 'runtime_dependencies'.
2018-10-23Update version info for internal patch merge scriptsRickard Green
2018-10-23Merge branch 'ingela/public_key/DSA-SHA2/OTP-15367' into maintIngela Anderton Andin
* ingela/public_key/DSA-SHA2/OTP-15367: public_key: Add DSA with SHA2 support
2018-10-23Merge branch 'ingela/public_key/DSA-SHA2/OTP-15367' into maintIngela Anderton Andin
* ingela/public_key/DSA-SHA2/OTP-15367: public_key: Add DSA with SHA2 support
2018-10-23public_key: Add DSA with SHA2 supportIngela Anderton Andin
2018-10-23erts: Make thr prgr wakeup current or sched 1Lukas Larsson
Before this change, it was always the aux thread that was woken to handle thread progress events scheduled to happen when all schedulers were going to sleep. This was ok in the pre-OTP-21 implementation when the aux thread just slept on a tse. Now that it sleeps in the fallback pollset this uses too much cpu so instead we wake the thread that is doing the request if it is a managed thread, or else we wake scheduler 1.
2018-10-23erts: Pass thread progress data where possibleLukas Larsson
The poll thread does a lot of waking up and then going back to sleep. A large part of the waking up is managing thread progress and a large part of that was using thread specific data to get the thread progress data pointer. With this refactor the tpd is passed to each of the functions which greatly decreases the number of ethr_get_tsd calls which in turn halves the CPU usage of the poller thread in certain scenarios.
2018-10-23Merge branch 'ingela/ssl/use-correct-len-aead' into maintIngela Anderton Andin
* ingela/ssl/use-correct-len-aead: ssl: Correct length to be used in additional data in CHACHA20_POLY1305 cipher
2018-10-23ssl: Correct length to be used in additional data in CHACHA20_POLY1305 cipherIngela Anderton Andin
2018-10-22Update version info for internal patch merge scriptsRickard Green
2018-10-22Merge branch 'raimo/tcp-close-while-send/maint/ERL-561/OTP-12242' into maintRaimo Niskanen
* raimo/tcp-close-while-send/maint/ERL-561/OTP-12242: Write test case Fix hanging gen_tcp send vs close race Conflicts: erts/preloaded/ebin/prim_inet.beam
2018-10-22Merge branch 'ingela/ssl/aead-refactor' into maintIngela Anderton Andin
* ingela/ssl/aead-refactor: ssl: Refactor AEAD ciphers
2018-10-22Eliminate crash in crashdump_viewer reading some literal mapsBjörn Gustavsson
Literal maps with complex keys such as: #{"one"=>1,"two"=>2,"three"=>3,"four"=>4}. would produce a crash dump that `crashdump_viewer` was unable to read. https://bugs.erlang.org/browse/ERL-722
2018-10-21Add version info for internal patch merge scriptsRickard Green
2018-10-19ssl: Refactor AEAD ciphersIngela Anderton Andin
TLS-1.3 needs to handle AEAD inputs diffrently than previous versions. Refactor code to facilitate TLS-1.3 additions. Change CHACHA20_POLY1305 NONCE to match RFC 7905. This will be important later when we fix interop with TLS compatible crypto invocation.
2018-10-19public_key: Add DSA with SHA2 supportIngela Anderton Andin
2018-10-19Write test caseRaimo Niskanen
2018-10-19Fix hanging gen_tcp send vs close raceRaimo Niskanen
While a gen_tcp send was in progress with filled buffers and slow receiver a close (from another process) would place the port in a half dead state so the port could not signal back to send, that waited for confirmation. The solution is to after some time (5 s) of waiting for send confirmation set a monitor on the port, which detects if the port becomes half dead due to close from another process. The close pending loop has also been improved to use the linger timeout for waiting, and to set a system timeout (arbitrarily selected 3 min) to not wait forever when the other end reads data s l o w l y (tarpitting, kind of).
2018-10-19Merge branch 'maint-19' into maintHans Nilsson
* maint-19: Updated OTP version Prepare release