aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2017-06-12Merge pull request #1483 from bjorng/bjorn/compiler/bsm-anno/ERIERL-30Björn Gustavsson
Fix unsafe bit syntax matching optimization
2017-06-12Merge branch ↵Raimo Niskanen
'raimo/kernel/inet_ntoa_1-IPv6-lowercase/ERIERL-20/ERL-429/OTP-13006' * raimo/kernel/inet_ntoa_1-IPv6-lowercase/ERIERL-20/ERL-429/OTP-13006: Accept IPv6 address %suffixes when parsing Adjust inet:ntoa/1 to RFC5952, but not deeper Update inet:ntoa according to modern RFCs
2017-06-12Accept IPv6 address %suffixes when parsingRaimo Niskanen
This only implements decimal suffixes, and furthermore only with a leading "0". A complete implementation would probably allow one and probably two digit suffixes without. But what primarily is missing is translating interface names to and from interface indexes. This also only implements the parsing, and uses the FreeBSD trick of squeezing in the Scope Id in the second 16-bit word of the fe80::/64 or ff02:/64 address prefix. But inet_drv is not prepared to handle this word, so it might only work on FreeBSD, not being supported even there... So inet_drv needs to handle this too.
2017-06-09Merge pull request #1400 from tburghart/trb/erts/enif_whereisRickard Green
Add enif_whereis_pid() and enif_whereis_port() functions OTP-14453
2017-06-08Merge branch 'maint'Rickard Green
* maint: Updated OTP version Update release notes Update version numbers erts: Fix so that 81b628 (sigterm=kill) works Updated OTP version Prepare release Unconditionally clear IO buffers on send/shutdown errors Conflicts: OTP_VERSION erts/emulator/sys/unix/sys.c erts/vsn.mk
2017-06-08Merge branch 'rickard/purge-hibernated-20'Rickard Green
* rickard/purge-hibernated-20: Update testcase to check that purge handle hibernated process correct Do not GC hibernated process from other processes Fix check_process_code() on hibernated process
2017-06-08Merge branch 'maint-19' into maintRickard Green
* maint-19: Updated OTP version Update release notes Update version numbers erts: Fix so that 81b628 (sigterm=kill) works Updated OTP version Prepare release Update testcase to check that purge handle hibernated process correct Do not GC hibernated process from other processes Fix check_process_code() on hibernated process Unconditionally clear IO buffers on send/shutdown errors
2017-06-08Merge tag 'OTP-19.1.6.1' into maint-19Rickard Green
=== OTP-19.1.6.1 === Changed Applications: - erts-8.1.1.1 Unchanged Applications: - asn1-4.0.4 - common_test-1.12.3 - compiler-7.0.2 - cosEvent-2.2.1 - cosEventDomain-1.2.1 - cosFileTransfer-1.2.1 - cosNotification-1.2.2 - cosProperty-1.2.1 - cosTime-1.2.2 - cosTransactions-1.3.2 - crypto-3.7.1 - debugger-4.2.1 - dialyzer-3.0.2 - diameter-1.12.1 - edoc-0.8 - eldap-1.2.2 - erl_docgen-0.6 - erl_interface-3.9.1 - et-1.6 - eunit-2.3.1 - gs-1.6.2 - hipe-3.15.2 - ic-4.4.2 - inets-6.3.3 - jinterface-1.7.1 - kernel-5.1 - megaco-3.18.1 - mnesia-4.14.1 - observer-2.2.2 - odbc-2.11.3 - orber-3.8.2 - os_mon-2.4.1 - otp_mibs-1.1.1 - parsetools-2.1.3 - percept-0.9 - public_key-1.2 - reltool-0.7.2 - runtime_tools-1.10.1 - sasl-3.0.1 - snmp-5.2.4 - ssh-4.3.6 - ssl-8.0.3 - stdlib-3.1 - syntax_tools-2.1 - tools-2.8.6 - typer-0.9.11 - wx-1.7.1 - xmerl-1.3.12 * tag 'OTP-19.1.6.1': Updated OTP version Prepare release Conflicts: OTP_VERSION erts/vsn.mk otp_versions.table
2017-06-08Merge branch 'siri/reltool/fix-doc-example'Siri Hansen
* siri/reltool/fix-doc-example: [reltool] Fix outdated example in user's guide
2017-06-07Merge branch 'maint'Raimo Niskanen
2017-06-07Merge branch 'bjorn/cuddle-with-tests'Björn Gustavsson
* bjorn/cuddle-with-tests: Stabilize call_with_huge_message_queue/1 same_time_yielding/1: Avoid failing if there are many schedulers Remove obsolete old_scheduler_SUITE Robustify process_SUITE:spawn_opt_max_heap_size/1 Contain damage cause by spawn_opt_max_heap_size failing Make bulk_send_bigbig/1 purely informational distribution_SUITE: Refactor bulk_send_bigbig/1 receive_SUITE: Remove ?line macros Lengthen too short timetraps Fix process_SUITE:low_prio/1
2017-06-07Merge branch 'bjorn/erts/fix-sys-task-cleanup'Björn Gustavsson
* bjorn/erts/fix-sys-task-cleanup: Make sure that asynchronous replies are not lost
2017-06-07Merge pull request #1482 from grahamrhay/patch-1Raimo Niskanen
Fix typo
2017-06-07Fix unsafe bit syntax matching optimizationBjörn Gustavsson
As part of sys_core_fold, variables involved in bit syntax matching would be annotated when it would be safe for a later pass to do the delayed sub-binary creation optimization. An implicit assumption regarding the annotation was that the code must not be further optimized. That assumption was broken in 05130e48555891, which introduced a fixpoint iteration (applying the optimizations until there were no more changes). That means that a variable could be annotated as safe for reusing the match context in one iteration, but a later iteration could rewrite the code in a way that would make the optimization unsafe. One way to fix this would be to clear all reuse_for_context annotations before each iteration. But that would be wasteful. Instead I chose to fix the problem by moving out the annotation code to a separate pass (sys_core_bsm) that is run later after all major optimizations of Core Erlang has been done.
2017-06-07Adjust inet:ntoa/1 to RFC5952, but not deeperRaimo Niskanen
There are a multitude of RFC:s that point to each other and some of them suggest different addresses with IPv4 suffixes. Use the IPv4 suffix text representation only for the old well known ::a.b.c.d and ::ffff:a.b.c.d prefixes. The others seems to be moving targets.
2017-06-07Updated OTP versionOTP-19.3.6Erlang/OTP
2017-06-07Update release notesErlang/OTP
2017-06-07Update version numbersErlang/OTP
2017-06-07Merge branch 'lukas/erts/fix_zz_sigterm_kill/OTP-14451' into maint-19Erlang/OTP
* lukas/erts/fix_zz_sigterm_kill/OTP-14451: erts: Fix so that 81b628 (sigterm=kill) works
2017-06-07Merge branch 'rickard/purge-hibernated-19/ERIERL-24/OTP-14444' into maint-19Erlang/OTP
* rickard/purge-hibernated-19/ERIERL-24/OTP-14444: Update testcase to check that purge handle hibernated process correct Do not GC hibernated process from other processes Fix check_process_code() on hibernated process
2017-06-07Merge branch 'john/erts/fix-zombie-tcp-ports/ERL-430/OTP-14441' into maint-19Erlang/OTP
* john/erts/fix-zombie-tcp-ports/ERL-430/OTP-14441: Unconditionally clear IO buffers on send/shutdown errors
2017-06-07Merge branch 'hans/eldap/cuddle_tests'Hans Nilsson
2017-06-07eldap: Prevent test to fail at end if ssl is not availableHans Nilsson
2017-06-07Merge branch 'ingela/inets/ERL-382'Ingela Anderton Andin
* ingela/inets/ERL-382: inets: httpc - Gracefull normal shutdown
2017-06-07Merge branch 'ingela/dtls/retransmisssion-timers'Ingela Anderton Andin
* ingela/dtls/retransmisssion-timers: dtls: Fetch next DTLS record when dropping resent handshake data dtls: Use enter actions
2017-06-07Merge branch 'lukas/erts/sendfile_sunos_fix/OTP-14424'Lukas Larsson
* lukas/erts/sendfile_sunos_fix/OTP-14424: erts: Fix sendfile closeduring scenario on sunos
2017-06-07Merge branch 'dgud/observer/edit-pid-port-ref'Dan Gudmundsson
* dgud/observer/edit-pid-port-ref: observer: Allow edit of pid, port and refs
2017-06-07Merge branch 'dgud/fix-unicode-atom'Dan Gudmundsson
* dgud/fix-unicode-atom: mnesia: Print tables with ~ts to support unicode atoms
2017-06-07erts: Fix sendfile closeduring scenario on sunosLukas Larsson
On Solaris, giving a too long sfv_len results in an EINVAL error, but data is still transmitted and len is correctly. So we translate this to a success with that amount of data sent. This may hide some other errors that causes EINVAL, but it is the best we can do for now.
2017-06-07dtls: Fetch next DTLS record when dropping resent handshake dataIngela Anderton Andin
2017-06-07dtls: Use enter actionsIngela Anderton Andin
Using enter actions for retransmission timers makes the code easier to understand. Previously the retransmission timer was incorrectly started in the connection state. Using enter actions feels like a cleaner approach than bloating the state with more flags.
2017-06-05erts: Fix so that 81b628 (sigterm=kill) worksLukas Larsson
OTP-14451
2017-06-05Merge branch 'lukas/erts/20_minor_fixes'Lukas Larsson
* lukas/erts/20_minor_fixes: kernel: Iterate for correct time in os_SUITE:perf_counter
2017-06-05Merge branch 'maint'Lars Thorsen
Conflicts: OTP_VERSION erts/vsn.mk
2017-06-05Merge commit '13b3ff0f9b45e61c071ddbec2ce45345fddecefe'Lars Thorsen
2017-06-05Merge branch 'maint-19' into maintLars Thorsen
2017-06-04Fix typoGraham Hay
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-02kernel: Iterate for correct time in os_SUITE:perf_counterLukas Larsson
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-02Updated OTP versionOTP-19.1.6.1Rickard Green