aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2016-09-14Don't leak old code when loading a modules with an on_load functionBjörn Gustavsson
Normally, calling code:delete/1 before re-loading the code for a module is unnecessary but causes no problem. But there will be be problems if the new code has an on_load function. Code with an on_load function will always be loaded as old code to allowed it to be easily purged if the on_load function would fail. If the on_load function succeeds, the old and current code will be swapped. So in the scenario where code:delete/1 has been called explicitly, there is old code but no current code. Loading code with an on_load function will cause the reference to the old code to be overwritten. That will at best cause a memory leak, and at worst an emulator crash (especially if NIFs are involved). To avoid that situation, we will put the code with the on_load function in a special, third slot in Module. ERL-240
2016-09-14Merge branch 'bjorn/erts/start-scripts/ERL-250' into maintBjörn Gustavsson
* bjorn/erts/start-scripts/ERL-250: Turn off parallel make for start scripts Makefile
2016-09-14Merge branch 'bjorn/compiler/beam_validator/OTP-13863' into maintBjörn Gustavsson
* bjorn/compiler/beam_validator/OTP-13863: beam_validator: Handle unreachable instructions
2016-09-14Merge branch 'rickard/test-cuddle' into maintRickard Green
* rickard/test-cuddle: Ensure long enough sleep in driver_SUITE:timer_delay driver
2016-09-14Merge branch 'maint-19' into maintHenrik Nord
2016-09-14Merge branch 'ingela/ssl/packet-tests' into maintIngela Anderton Andin
* ingela/ssl/packet-tests: ssl: Add timetrap scale calls ssl: Add nodelay to packet=0|raw tests
2016-09-13Updated OTP versionOTP-19.0.6Erlang/OTP
2016-09-13Prepare releaseErlang/OTP
2016-09-13Merge branch 'rickard/dist-map-gc-fix/OTP-13889' into maint-19Erlang/OTP
* rickard/dist-map-gc-fix/OTP-13889: Fix crash due to heap fragments left after GC
2016-09-13ssl: Add timetrap scale callsIngela Anderton Andin
2016-09-13Fix crash due to heap fragments left after GCRickard Green
Do not decode distribution messages as part of the GC operation. Distribution messages containing maps may generate heap fragments.
2016-09-13beam_validator: Handle unreachable instructionsBjörn Gustavsson
ab03678e introduced an optimization in the beam_z pass that could introduce unreachable code in BEAM files (a 'jump' instruction is removed after a 'raise' instruction, but the code following the target of the 'jump' is not removed). Since this situation happens very rarely, there is no point in adding another pass that can remove unreachable code after beam_z. Instead we will make sure that beam_validator can skip the unreachable code. Skipping unreachable code is already done in valfun_1/2 (for historical reasons), but we will also need to do it in val_dsetel/2.
2016-09-13Silence warnings in cryptoRaimo Niskanen
2016-09-13Merge branch 'hasse/parsetools/suppress_dialyzer_warnings/OTP-13681' into maintHans Bolinder
* hasse/parsetools/suppress_dialyzer_warnings/OTP-13681: parsetools: Suppress Dialyzer-warnings
2016-09-13Turn off parallel make for start scripts MakefileBjörn Gustavsson
At least on macOS (OS X), /usr/bin/install does not seem to be thread-safe when creating directories. That is, if several invocations of /usr/bin/install attempts to create the same directory, one or more of the invocations may fail with an error, causing the build to fail. Avoid the problem by turning off parallel make for the Makefile in erts/start_scripts. Reported-by: https://bugs.erlang.org/browse/ERL-250
2016-09-12Merge branch 'anders/diameter/19.1/OTP-13838' into maintAnders Svensson
* anders/diameter/19.1/OTP-13838: vsn -> 1.12.1 Update appup for 19.1 Fix xmllint errors in documentation Remove documentation overkill Don't run traffic tests in parallel when {string_decode, true} Remove copyright from generated dictionary modules Fix dictionary function typo Fix dictionary typo in relay example
2016-09-12Merge branch 'anders/diameter/failover/OTP-13412' into maintAnders Svensson
* anders/diameter/failover/OTP-13412: Make peer failover more efficient
2016-09-12Merge branch 'anders/diameter/min_heap_size/OTP-13796' into maintAnders Svensson
* anders/diameter/min_heap_size/OTP-13796: Let unfortunate min_heap_size setting be disabled
2016-09-12Merge branch 'anders/diameter/19/listen/OTP-13787' into maintAnders Svensson
* anders/diameter/19/listen/OTP-13787: Close listening sockets at service death
2016-09-12Merge branch 'ferd/bypass-pem-cache/PR-1143/OTP-13883' into maintIngela Anderton Andin
* ferd/bypass-pem-cache/PR-1143/OTP-13883: ssl: Add documentation of bypass_pem_cache application environment configuration ssl: Add new benchmarks to skip file for normal testing Adding PEM cache bypass benchmark entries Fixing CRL searching in cache bypass Add option to bypass SSL PEM cache
2016-09-12Merge branch 'ingela/snmp/ipv6-tests' into maintIngela Anderton Andin
* ingela/snmp/ipv6-tests: snmp: Use ipv6 common test configuration check
2016-09-12snmp: Use ipv6 common test configuration checkIngela Anderton Andin
The test for ipv6 could return false positives which resulted in failing test cases due lack of full ipv6 support.It could be nice with a working run-time check but this will do for now.
2016-09-12Merge branch 'ingela/ssl/clean-env' into maintIngela Anderton Andin
* ingela/ssl/clean-env: ssl: Make sure tests get a clean start
2016-09-12ssl: Add documentation of bypass_pem_cache application environment configurationIngela Anderton Andin
2016-09-12Merge branch 'lars/xmerl-anchor-problems/OTP-13880' into maintLars Thorsen
* lars/xmerl-anchor-problems/OTP-13880: [xmerl] Fix link problems in documentation
2016-09-12parsetools: Suppress Dialyzer-warningsHans Bolinder
When using Yecc's operator precedence declarations (Right, Nonassoc, Left), it is possible that some clauses of the generated code are unreachable. Dialyzer complains, at least if SET_LIMIT in erl_types is set sufficiently high (to avoid sets of integers to collapse to the integer() type). Rather than trying to figure out exactly which clauses are unreachable, Yecc generates a Dialyzer suppression.
2016-09-12Merge branch 'margnus1/dialyzer/fix_maps_opaque/ERL-249/PR-1161/OTP-13878' ↵Hans Bolinder
into maint * margnus1/dialyzer/fix_maps_opaque/ERL-249/PR-1161/OTP-13878: erl_bif_types: Properly unopaque maps:merge/2 args
2016-09-12[xmerl] Fix link problems in documentationLars Thorsen
2016-09-11vsn -> 1.12.1Anders Svensson
2016-09-11Update appup for 19.1Anders Svensson
OTP-13412 more efficient peer failover OTP-13787 close listening sockets OTP-13796 min_heap_size OTP-13838 typo in diameter_traffic No load order requirements.
2016-09-11Let unfortunate min_heap_size setting be disabledAnders Svensson
The setting in all diameter server processes has existed since the beginning of time. Whether it's actually useful is questionable, but it does lead to increased memory usage, especially if there are many peer connections whose processes wouldn't otherwise be large. Let the setting be disabled with -diameter min_heap_size false. (Or any value that isn't a non-negative integer.) The diameter application itself only calls diameter_lib:spawn_opts(server, []), but let other arguments remain for backwards compatibility, since diameter_lib:spawn_opts/2 has been abused from outside of diameter.
2016-09-10Merge branch 'ingela/snmp/app-test' into maintIngela Anderton Andin
* ingela/snmp/app-test: snmp: Uncomment compiler files in app.src file snmp: Use built-in support for testing application files
2016-09-10snmp: Uncomment compiler files in app.src fileIngela Anderton Andin
The files are not used in runtime of the snmp app, but they are still part of the application and beam files are generated. Not including them will make the general app test fail.
2016-09-10snmp: Use built-in support for testing application filesIngela Anderton Andin
2016-09-10Merge branch 'ingela/diameter/cuddle-tests' into maintIngela Anderton Andin
* ingela/diameter/cuddle-tests: diameter: Do not test SCTP on sparc-sun-solaris2.10
2016-09-10diameter: Do not test SCTP on sparc-sun-solaris2.10Ingela Anderton Andin
The SCPT stack has a different behavior in solaris2.10 then in later versions and linux. Diameter implementation does not support this behavior.
2016-09-09Merge branch 'rickard/nif-restore-current/OTP-13877' into maintRickard Green
* rickard/nif-restore-current/OTP-13877: Fix restore of 'current' field when rescheduled NIF completes
2016-09-09Fix restore of 'current' field when rescheduled NIF completesRickard Green
2016-09-07Merge branch 'michaesc/crypto/honour-OPENSSL_NO_DES/ERL-203/OTP-13783' into ↵Raimo Niskanen
maint * michaesc/crypto/honour-OPENSSL_NO_DES/ERL-203/OTP-13783: Add '_cfb' alias for misspelled '_cbf' cipher Fix badarg -> notsup and test cases Honour OPENSSL_NO_DES Conflicts: lib/crypto/c_src/crypto.c
2016-09-07erl_bif_types: Properly unopaque maps:merge/2 argsMagnus Lång
erl_bif_types:type/5 was calling erl_types:map_pairwise_merge/3 directly with its (potentially opaque) arguments, causing Dialyzer crashes. Bug (ERL-249) reported and minimised test case provided by Felipe Ripoll.
2016-09-07ssl: Make sure tests get a clean startIngela Anderton Andin
2016-09-07Merge branch 'egil/hipe/fix-match-order-opaque-types/OTP-13876' into maintBjörn-Egil Dahlberg
* egil/hipe/fix-match-order-opaque-types/OTP-13876: hipe: Fix erl_types opaque match order
2016-09-07Merge branch 'egil/erts/start-scripts-dependency/ERL-241/OTP-13871' into maintBjörn-Egil Dahlberg
* egil/erts/start-scripts-dependency/ERL-241/OTP-13871: erts: Fix start scripts generation dependency in Makefile
2016-09-07Merge branch 'bjorn/compiler/lc-internal-failure/OTP-13863' into maintBjörn Gustavsson
* bjorn/compiler/lc-internal-failure/OTP-13863: sys_core_fold: Don't move a fun into a guard
2016-09-07Merge branch 'lars/utf-8-path-bugs/ERL-179/OTP-13718' into maintLars Thorsen
* lars/utf-8-path-bugs/ERL-179/OTP-13718: [snmp] Correct bug when path to mib contains UTF-8 characters [ic] Fix but when UTF-8 character in path to idl spec
2016-09-07[snmp] Correct bug when path to mib contains UTF-8 charactersLars Thorsen
2016-09-07[ic] Fix but when UTF-8 character in path to idl specLars Thorsen
The path is only used when writing a comment so the correction just allowed UTF-8 characters in that io_lib:format call. IC don't support UTF-8 in the specs or their names (generated modules contains coding: latin-1) but the path is only used in a comment so it's not a problem if it can't be written correctly as long as nothing fails.
2016-09-07Merge branch 'peppe/stdlib/zip-security-flaw/OTP-13633' into maintPeter Andersson
OTP-13633
2016-09-07Merge branch 'ingela/ssl/ssl_basic_SUITE-timeouts' into maintIngela Anderton Andin
* ingela/ssl/ssl_basic_SUITE-timeouts: ssl: Tune timeout ssl: Consistent timeout handling
2016-09-07ssl: Tune timeoutIngela Anderton Andin