aboutsummaryrefslogtreecommitdiffstats
path: root/erts
AgeCommit message (Collapse)Author
2017-06-05Merge branch 'maint'Lars Thorsen
Conflicts: OTP_VERSION erts/vsn.mk
2017-06-05Merge branch 'maint-19' into maintLars Thorsen
2017-06-03Stabilize call_with_huge_message_queue/1Björn Gustavsson
Time measurements are always tricky, particulary on virtual hosts. On one particular virtual host, the measured times were often 0. Measuring the time for 100 calls instead of 10 calls helps, but 0 can still be returned, so we will also need to discard measurements that return 0 and try again.
2017-06-03same_time_yielding/1: Avoid failing if there are many schedulersBjörn Gustavsson
On a computer with 32 schedulers, there would be 9632 (301*32) 'timeout' message in the receive queue. Receiving them with a selective receive (matching on the timer ID) is quite slow. Change the test case to read out the queue in the order the messages are stored in the queue.
2017-06-03Remove obsolete old_scheduler_SUITEBjörn Gustavsson
old_scheduler_SUITE was written before the SMP emulator. It does not test anything that scheduler_SUITE does not test. Keeping it wastes time when running the emulator test suite, and does not help us find any bugs that scheduler_SUITE would find.
2017-06-03Robustify process_SUITE:spawn_opt_max_heap_size/1Björn Gustavsson
process_SUITE starts os_mon in init_per_suite/1. Therefore, there may be occasional alarm info messages received. Make sure that they are ignored and don't cause the test fail to fail. Also, get rid of the flush/0 function that discards all messages in the message queue. Instead, be more selective and only discard {error, ...} messages.
2017-06-03Contain damage cause by spawn_opt_max_heap_size failingBjörn Gustavsson
If process_SUITE:spawn_opt_max_heap_size/1 failed, the default value for the maximum heap size could have been changed. That would cause other test cases that spawned huge processes to fail. Contain the damage by always restoring the default value for max_heap_size in end_per_testcase/2.
2017-06-03Make bulk_send_bigbig/1 purely informationalBjörn Gustavsson
bulk_send_bigbig/1 sometimes fails even if there is nothing wrong. Stop testing the ratio, and just return information about the speed and number of monitor messages. The testcase will still serve as a smoke test of the +zdbbl option.
2017-06-03distribution_SUITE: Refactor bulk_send_bigbig/1Björn Gustavsson
Refactor bulk_send_bigbig/1 to make it somewhat easier to follow.
2017-06-03receive_SUITE: Remove ?line macrosBjörn Gustavsson
2017-06-03Lengthen too short timetrapsBjörn Gustavsson
c062dfc485a added timetraps to test suites that had no timetraps. Some of added timetraps are only 5 or 10 seconds, which is can be too short time on some slow computers. Change those times to one or two minutes.
2017-06-03Fix process_SUITE:low_prio/1Björn Gustavsson
It is expected that low-priority processes should be allowed to run about 1/8 of the time of normal-priority processes. The proportion calculated was usually considerably lower than 1/8. It seems that the main reason is the punishement in reductions when sending to a process that alreday has many messages in the message queue. I have verified that by running the emulator with the +snsp to turn off the send punishment. To avoid that punishment, let the server process run at high priority so that it can keep its message queue short. It seems that the proportion is now very close to 1/8. Therefore, we can tighten the margins for the proportion.
2017-06-02Merge branch 'lukas/erts/hipe_mkliterals_libs/ERIERL-14/OTP-14447'Lukas Larsson
* lukas/erts/hipe_mkliterals_libs/ERIERL-14/OTP-14447: hipe: Fix hipe_mkliterals make recipe
2017-06-02Merge pull request #1473 from SalikhovDinislam/static_codeLukas Larsson
Make some C code static
2017-06-02Merge pull request #1472 from SalikhovDinislam/dead_codeLukas Larsson
erts: Remove unused functions from erl_cpu_topology
2017-06-02Merge pull request #1471 from gomoripeti/fix_erl_tracer_exampleLukas Larsson
Update erl_msg_tracer example
2017-06-02Prepare releaseRickard Green
2017-06-02Update release notesErlang/OTP
2017-06-02Update version numbersErlang/OTP
2017-06-02Merge branch 'john/erts/lcnt-table-name/ERIERL-22/OTP-14442'John Högberg
2017-06-02Merge branch 'john/erts/refactor-gcsuite'John Högberg
2017-06-01Merge branch 'rickard/purge-hibernated-19' into rickard/purge-hibernated-20Rickard Green
* rickard/purge-hibernated-19: Update testcase to check that purge handle hibernated process correct
2017-06-01Merge branch 'rickard/purge-hibernated' into rickard/purge-hibernated-19Rickard Green
* rickard/purge-hibernated: Update testcase to check that purge handle hibernated process correct Conflicts: erts/emulator/test/code_SUITE.erl
2017-06-01Update testcase to check that purge handle hibernated process correctRickard Green
2017-06-01Merge branch 'rickard/purge-hibernated-19' into rickard/purge-hibernated-20Rickard Green
* rickard/purge-hibernated-19: Do not GC hibernated process from other processes Fix check_process_code() on hibernated process Conflicts: erts/emulator/beam/beam_bif_load.c erts/emulator/beam/erl_process.c erts/emulator/beam/erl_process.h
2017-06-01Merge branch 'rickard/purge-hibernated' into rickard/purge-hibernated-19Rickard Green
* rickard/purge-hibernated: Do not GC hibernated process from other processes Fix check_process_code() on hibernated process Conflicts: erts/emulator/beam/beam_bif_load.c erts/emulator/beam/erl_gc.c erts/emulator/beam/erl_process.h
2017-06-01Do not GC hibernated process from other processesRickard Green
2017-06-01Fix check_process_code() on hibernated processRickard Green
2017-06-01Unconditionally clear IO buffers on send/shutdown errorsJohn Högberg
This fixes a bug where a send/shutdown error on an active-mode socket results in the port never being properly closed.
2017-05-31Revert "Prepare release"Hans Nilsson
This reverts commit eaf8ca41dfa4850437ad270d3897399c9358ced0.
2017-05-31Break out a lot of duplicated code in minor_major_gc_option_ZZZJohn Högberg
2017-05-31Make sure that asynchronous replies are not lostBjörn Gustavsson
(First attempt to fix in 23f132d9ab776a.) If an synchronous GC was requested by calling: erlang:garbage_collect(Pid, [{async,Ref}]) the reply message could in certain circumstances be lost. The problem is that cleanup_sys_tasks() is never called if there are dirty tasks, but no other active system tasks. Also shorten the long waiting times in the test case binary_SUITE:trapping/1 to make it much more likely that the GC have not already finished when the process is killed.
2017-05-31Fix a race condition that consistently affected lc+lcnt buildsJohn Högberg
The garbage_collect message could be received while waiting for trace messages, causing the test to crash erroneously.
2017-05-30Prepare releaseErlang/OTP
2017-05-29Merge branch 'rickard/sys-proc-off-heap-msgq'Rickard Green
OTP-14438 * rickard/sys-proc-off-heap-msgq: Enable off-heap message queue for code purger, et. al.
2017-05-29Enable off-heap message queue for code purger, et. al.Rickard Green
2017-05-29Merge branch 'bjorn/erts/fix-sys-task-cleanup'Björn Gustavsson
* bjorn/erts/fix-sys-task-cleanup: erl_process.c: Add more assertions in process termination Make sure that asynchronous replies are not lost
2017-05-29Fix WX lock check assertion on MacOSXRickard Green
The fix avoids registering the main thread as an emulator thread on MacOSX. This since WX steals the main thread for its own usage on MacOSX, and use the thread as an ordinary driver thread.
2017-05-29hipe: Fix hipe_mkliterals make recipeLukas Larsson
If a link dependency is added in LDFLAGS it should be resolved in LIBS, so we have to use LIBS and not TYPE_LIBS.
2017-05-29erl_process.c: Add more assertions in process terminationBjörn Gustavsson
Before terminating a process, add assertions to make sure that all queues for system tasks have been emptied.
2017-05-29Make sure that asynchronous replies are not lostBjörn Gustavsson
If an synchronous GC was requested by calling: erlang:garbage_collect(Pid, [{async,Ref}]) the reply message could in certain circumstances be lost. The problem is in cleanup_sys_tasks() in erl_process.c. If there were at least one dirty task, only the first dirty task would be cleaned up. All other systems tasks would not be cleaned up (that is, no replies would be sent to other processes waiting for the tasks to finish).
2017-05-29Merge branch 'sverker/crash-dump-seconds-doc'Rickard Green
OTP-14434 * sverker/crash-dump-seconds-doc: erts: Clarify ERL_CRASH_DUMP_SECONDS docs
2017-05-29Merge branch 'bjorn/cuddle-with-tests'Björn Gustavsson
* bjorn/cuddle-with-tests: bs_construct_SUITE: Correct calculation of free memory
2017-05-24Identify db_hash_slot locks by their table name instead of slot indexJohn Högberg
2017-05-24Merge branch 'rickard/escript-space-path-fix/OTP-14433'Rickard Green
* rickard/escript-space-path-fix/OTP-14433: escript: Do not split path to Erlang system into multiple words
2017-05-24erts: Clarify ERL_CRASH_DUMP_SECONDS docsSverker Eriksson
especially default behavior without -heart, which is wait indefinitely for crash dump.
2017-05-24Merge pull request #1475 from rickard-green/rickard/escript-emulator-fixRickard Green
Fix erlang system lookup from escript bug introduced in PR #1293 OTP-14201
2017-05-24bs_construct_SUITE: Correct calculation of free memoryBjörn Gustavsson
free_mem/0 returned the number of free Kb, but the caller assumed that it was in Mb. Also add another clause to further scale down the size of the binaries created.
2017-05-24Merge branch 'sverker/test-cuddle'Sverker Eriksson
2017-05-24Merge branch 'dgud/erts/revert-default-process-name'Dan Gudmundsson
* dgud/erts/revert-default-process-name: Revert setting default argv0 name