aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2016-08-12Support 'make -j' when compiling ASN.1 modulesBjörn Gustavsson
When attempting to build multiple ASN.1 modules in parallel (e.g. by running 'make -j'), the ASN.1 compiler could crash because the names of the .asn1db files clashed. For example, if A.asn1 and B.asn1 both import from C.asn1, the compiler would write a C.asn1db file when compiling A.asn1 and when compiling B.asn1. We can avoid this problem if the compiler only writes the module's own .asn1db file. That is, when compiling A.asn1, the compiler would only write A.asn1db, not C.asn1db. Also, make sure that we make the write atomic by first writing to a temporary file that is then renamed.
2016-08-12Merge branch 'lukas/erts/tracing/fix_sparc_align_issue/OTP-13803' into maintLukas Larsson
* lukas/erts/tracing/fix_sparc_align_issue/OTP-13803: erts: Align ErtsThrPrgrLaterOp when free'ing tracer
2016-08-12erts: Align ErtsThrPrgrLaterOp when free'ing tracerLukas Larsson
On Sparc all structs with a double word element in are assumed to be allocated on a two word boundary. So we have to make sure that the ErtsThrPrgrLaterOp * points to 8 / 16 byte aligned memory. As it only costs one word I've done it on all architectures in case some unknown other arch also needs this.
2016-08-12Merge branch 'lukas/erts/fix_init_stop_code_load_race/OTP-13802' into maintLukas Larsson
* lukas/erts/fix_init_stop_code_load_race/OTP-13802: erts/kernel: Fix code loading deadlock during init:stop
2016-08-12erts/kernel: Fix code loading deadlock during init:stopLukas Larsson
When init:stop is called it walks the application hierarchy and terminates each process. Some of these processes may do something while terminating and sometimes that something needs to load some new code in order to work. When this happens the code_server could just be in the process of terminating or the erl_prim_loader could be active. In both these cases the request to load the new code would cause a deadlock in the termination of the system. This commit fixes this by init rejecting attempts to load new code when init:stop has been called and fixing a termination race in the code_server. This however means that the process that tried to do something when told to terminate (for instance logging that it is terminating) will crash instead of loading the code.
2016-08-12Merge branch 'binarin/even-more-absolute-paths/PR-1103/OTP-13800' into maintLukas Larsson
* binarin/even-more-absolute-paths/PR-1103/OTP-13800: Use perl discovered by configure Don't make assumptions about build tools paths
2016-08-12Merge branch 'avellable/erts/correct_atomicity_typo' into maintLukas Larsson
* avellable/erts/correct_atomicity_typo: Correct spelling of atomicity
2016-08-11kernel: Export inet types socket_getopt and socket_setoptSverker Eriksson
2016-08-11kernel: Refactor dist_util:con_loopSverker Eriksson
by separating the constant values into tuple ConData. and that exposed the fact that TcpAddress and MyNode where not used.
2016-08-11kernel: Cleanup code with fancy record syntaxSverker Eriksson
2016-08-11Updated OTP versionOTP-18.3.4.4Erlang/OTP
2016-08-11Prepare releaseErlang/OTP
2016-08-11Merge branch 'rickard/erl-crash-dump-bug/OTP-13799' into maint-18Erlang/OTP
* rickard/erl-crash-dump-bug/OTP-13799: Avoid segfault when printing slogan after crashdumping
2016-08-11Merge branch 'rickard/proc-tmo-bug/OTP-13798' into maint-18Erlang/OTP
* rickard/proc-tmo-bug/OTP-13798: Fix race causing lost wakeup on receive-after timeout
2016-08-11Updated OTP versionOTP-19.0.4Erlang/OTP
2016-08-11Prepare releaseErlang/OTP
2016-08-11Merge branch 'rickard/erl-crash-dump-bug/OTP-13799' into maint-19Erlang/OTP
* rickard/erl-crash-dump-bug/OTP-13799: Avoid segfault when printing slogan after crashdumping
2016-08-11Merge branch 'rickard/proc-tmo-bug/OTP-13798' into maint-19Erlang/OTP
* rickard/proc-tmo-bug/OTP-13798: Fix race causing lost wakeup on receive-after timeout
2016-08-11Avoid segfault when printing slogan after crashdumpingRickard Green
2016-08-11Fix race causing lost wakeup on receive-after timeoutRickard Green
2016-08-11[ERL-209] Fix ambiguous_catch_try_state inconsistency errorBjörn Gustavsson
It is not safe to share code between 'catch' blocks.
2016-08-10Merge branch 'ingela/ssl/dialyzer' into maintIngela Anderton Andin
* ingela/ssl/dialyzer: ssl: Conform to dialyzer spec
2016-08-10Merge branch 'sverker/run_erl-pty-race/OTP-13795' into maintSverker Eriksson
2016-08-10run_erl: Add sleepy_child test caseSverker Eriksson
with run_erl option -sleepy-child to provoke race when slave pty is late
2016-08-10Doc fixesRaimo Niskanen
2016-08-09ssl: Conform to dialyzer specIngela Anderton Andin
2016-08-09Merge branch 'maint-19' into maintLukas Larsson
Conflicts: lib/ssl/src/ssl.appup.src
2016-08-08Separate literal area from codeRickard Green
2016-08-08Updated OTP versionOTP-19.0.3Erlang/OTP
2016-08-08Prepare releaseErlang/OTP
2016-08-08Merge branch 'lukas/kernel/fix_os_cmd_background_compat/OTP-13741' into maint-19Erlang/OTP
* lukas/kernel/fix_os_cmd_background_compat/OTP-13741: kernel: Use ^D as eot for os:cmd on unix platforms
2016-08-08Merge branch 'raimo/ssl/version-selection/maint-19/OTP-13753' into maint-19Erlang/OTP
* raimo/ssl/version-selection/maint-19/OTP-13753: Improve version selection
2016-08-08Merge branch 'ingela/inets/mod_esi-handle-PUT-DELETE/OTP-13688' into maint-19Erlang/OTP
* ingela/inets/mod_esi-handle-PUT-DELETE/OTP-13688: inets: Prepare for release inets: Fix typo in doc inets: Add mod_esi test for PUT inets: Unify mod_esi "PUT" callback input inets: Add mod_esi support for PUT AND DELETE
2016-08-08kernel: Use ^D as eot for os:cmd on unix platformsLukas Larsson
This is needed as doing only an 'exit' will only exit the program, but any children started in the program that have stdout/stderr still open will keep the port open until they terminate. i.e. os:cmd("while true; do echo sleep 1; sleep 1; done&"). would block os:cmd forever because the while loop keeps its copies of stdout/stderr open forever. It could be argued that this is correct behaviour, and it is the way it works on windows, but changing this breaks backwards compatability for os:cmd which is not acceptable.
2016-08-08inets: Prepare for releaseIngela Anderton Andin
2016-08-08inets: Fix typo in docIngela Anderton Andin
2016-08-08inets: Add mod_esi test for PUTRaimo Niskanen
2016-08-08inets: Unify mod_esi "PUT" callback inputRaimo Niskanen
Change it to { Input :: string() | undefined, Body :: string() }
2016-08-08inets: Add mod_esi support for PUT AND DELETEIngela Anderton Andin
2016-08-08Merge branch 'duncaen/crypto/fix-algo_cipher-array-size/PR-1140/OTP-13789' ↵Raimo Niskanen
into maint * duncaen/crypto/fix-algo_cipher-array-size/PR-1140/OTP-13789: Fix segfault in crypto by increasing algo_cipher array
2016-08-07Correct spelling of atomicityMahesh Baheti
2016-08-05Merge branch 'maint-18' into maintHans Nilsson
Conflicts: OTP_VERSION lib/ssh/doc/src/notes.xml lib/ssh/test/ssh_sup_SUITE.erl lib/ssh/vsn.mk otp_versions.table
2016-08-05Update primary bootstrapBjörn Gustavsson
2016-08-05Merge branch 'bjorn/compiler/not_live/ERL-202/OTP-13780' into maintBjörn Gustavsson
* bjorn/compiler/not_live/ERL-202/OTP-13780: beam_block: Fix potentially unsafe optimization in move_allocates/1
2016-08-05beam_block: Fix potentially unsafe optimization in move_allocates/1Björn Gustavsson
beam_block has an optimization that only is safe when it is applied immediately after code generation. That is pointed out in a comment: NOTE: Moving allocation instructions is only safe because it is done immediately after code generation so that we KNOW that if {x,X} is initialized, all x registers with lower numbers are also initialized. That assumption may not be true after other optimizations, such as the beam_utils:live_opt/1 optimization. The new beam_reorder pass added in OTP 19 runs before beam_block. Therefore, the optimization is potentially unsafe. The optimization is also unsafe if compilation is started from assembly code in a .S file. Rewrite the optimization to make it safe. See the newly added comment for details. ERL-202
2016-08-05Merge branch 'elbrujohalcon/dialyzer/fix-spec/PR-1134/OTP-13786' into maintBjörn Gustavsson
* elbrujohalcon/dialyzer/fix-spec/PR-1134/OTP-13786: Improve format_warning/1 spec
2016-08-04Updated OTP versionOTP-18.3.4.3Erlang/OTP
2016-08-04Update release notesErlang/OTP
2016-08-04Merge branch 'hans/ssh/sup_fix_ssh_supc_type/OTP-13782' into maint-18Erlang/OTP
* hans/ssh/sup_fix_ssh_supc_type/OTP-13782: ssh: update test suite for supervisors ssh: sshc_sup to use worker for ssh_con_handler ssh: update version number
2016-08-04ssh: update test suite for supervisorsHans Nilsson