summaryrefslogtreecommitdiff
path: root/erts/emulator/test/process_SUITE.erl
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'maint' into masterSverker Eriksson2023-04-191-1/+49
|\
| * Merge branch 'rickard/aliasmonitor-fix/24.3/OTP-18557' into ↵Rickard Green2023-04-181-1/+49
| |\ | | | | | | | | | | | | | | | | | | rickard/aliasmonitor-fix/25.3/OTP-18557 * rickard/aliasmonitor-fix/24.3/OTP-18557: [erts] Fix erroneous removal of alias from alias table
| | * [erts] Fix erroneous removal of alias from alias tableRickard Green2023-04-181-1/+49
| | |
| * | Merge pull request #6953 from ↵Rickard Green2023-03-021-1/+48
| |\ \ | | | | | | | | | | | | | | | | rickard-green/rickard/alias-cleanup-fix/25.2.3/GH-6947/OTP-18496 Alias cleanup fix
| | * \ Merge branch 'rickard/alias-cleanup-fix/24.3/GH-6947/OTP-18496' into ↵Rickard Green2023-03-011-1/+48
| | |\ \ | | | |/ | | | | | | | | | | | | | | | | | | | | rickard/alias-cleanup-fix/25.2.3/GH-6947/OTP-18496 * rickard/alias-cleanup-fix/24.3/GH-6947/OTP-18496: [erts] Ensure cleanup of alias table on alias destruction
| | | * [erts] Ensure cleanup of alias table on alias destructionRickard Green2023-03-011-1/+48
| | | |
| * | | Merge branch 'maint-24' into maintIngela Anderton Andin2023-02-231-1/+1
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * maint-24: Updated OTP version Prepare release Update copyright year
| | * | | Update copyright yearErlang/OTP2023-02-221-1/+1
| | | | |
| | * | | Merge branch 'bjorn/erts/max_heap_size/24/OTP-18463' into maint-24Erlang/OTP2023-02-221-0/+107
| | |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | * bjorn/erts/max_heap_size/24/OTP-18463: Exit process immediately when the max heap size is exceeded
| | | * | | Exit process immediately when the max heap size is exceededBjörn Gustavsson2023-02-141-0/+107
| | | | |/ | | | |/| | | | | | | | | | | | | | | | | | | | | Executing receive-related instructions would cause the process to enter a suspended state forever. Avoid that by scheduling out immediately after any GC if the process is exiting.
| | * | | Update copyright yearErlang/OTP2022-08-171-1/+1
| | | | |
| | * | | Merge branch 'rickard/unlink-exit-fix/24.3.4/OTP-18177' into maint-24Erlang/OTP2022-08-171-2/+41
| | |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * rickard/unlink-exit-fix/24.3.4/OTP-18177: [erts] Fix dist unlink-id-ack signal memory leak [erts] Don't send exit signal due to a link with ongoing unlink op
| | * \ \ \ Merge branch 'rickard/pi-msgq-len-fix/OTP-18169' into maint-24Erlang/OTP2022-08-171-0/+65
| | |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * rickard/pi-msgq-len-fix/OTP-18169: [erts] Fix faulty assert [erts] Fix process_info(Pid, message_queue_len) on other process
| | * \ \ \ \ Merge branch 'rickard/spawn_request-fix/23.3.4/OTP-18164' into maint-24Erlang/OTP2022-08-171-44/+166
| | |\ \ \ \ \ | | | |_|_|/ / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | * rickard/spawn_request-fix/23.3.4/OTP-18164: [erts] Fix lost exit signal from parent to child due to link [erts] Fix lost exit signal due to connection loss
* | | | | | | erts: Fix process_info(_, garbage_collection) for max_heap_sizeSverker Eriksson2023-02-271-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The 2-tuple {max_heap_size, Map} was accidentally lost. https://github.com/erlang/otp/issues/6922 Introduced by 8d5f5ef0b5bd87a79390fe767cbfed9827ba66fe in OTP 26.0-rc1.
* | | | | | | Merge branch 'maint'Björn Gustavsson2023-02-171-0/+107
|\ \ \ \ \ \ \ | |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | * maint: Eliminate "mutable variables" Exit process immediately when the max heap size is exceeded
| * | | | | | Merge branch 'bjorn/erts/max_heap_size/25/OTP-18463' into maintBjörn Gustavsson2023-02-171-0/+107
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * bjorn/erts/max_heap_size/25/OTP-18463: Exit process immediately when the max heap size is exceeded
| | * | | | | | Exit process immediately when the max heap size is exceededBjörn Gustavsson2023-02-151-0/+107
| | | |_|_|_|/ | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Executing receive-related instructions would cause the process to enter a suspended state forever. Avoid that by scheduling out immediately after any GC if the process is exiting.
* | | | | | | Update copyright yearErlang/OTP2023-02-141-1/+1
| | | | | | |
* | | | | | | [erts] 60-bit process/port identifiers on 64-bit runtimeRickard Green2023-02-091-2/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Extending the amount of significant bits in node local process identifiers and port identifiers from 28 bits to 60 bits on 64-bit runtime systems. This makes these identifiers large enough to in practice never having to be reused during the life time of a node.
* | | | | | | Merge branch 'maint'Sverker Eriksson2023-01-231-3/+3
|\ \ \ \ \ \ \ | |/ / / / / /
| * | | | | | common_test: Rename undocumented macro CT_PEER/3 -> CT_PEER_RELSverker Eriksson2022-12-071-3/+3
| |/ / / / / | | | | | | | | | | | | | | | | | | Makes it easier to grep for.
* | | | | | erts: Optionally include off-heap binaries into max_heap_sizeSverker Eriksson2023-01-231-36/+75
|/ / / / /
* | | | | Merge branch 'sverker/erts/send-to-infant-process/OTP-18322' into maintSverker Eriksson2022-11-231-1/+120
|\ \ \ \ \
| * | | | | erts: Fix sending to infant processSverker Eriksson2022-11-231-1/+120
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Symptom: Sending to a spawning process (pid returned from erlang:processes/0) could read an uninitiated p->sig_inq_buffers and crash the VM. Problem: At send, p->sig_inq_buffers is read without any process lock. At process spawn, the Process struct is inserted into proc table with only a handful member initiated but with all locks seized. p->siq_inq_buffers was not part of those handful early initiated. Hence, sig_inq_buffers could be read uninitiated in a short race when the pid is first made accessible in proc table. Since: Bug exists since OTP-25.0 when parallel receive buffers were introduced. Seen: Seen when system process literal_area_collector sends signals to all processes as part of a module purge operation.
* | | | | | kernel|erts: Use memavailable for tests when availableLukas Larsson2022-10-211-10/+9
| | | | | |
* | | | | | erts: Improve node leak check in end_per_testcaseSverker Eriksson2022-10-041-6/+1
|/ / / / / | | | | | | | | | | | | | | | | | | | | Don't lose original failure reason, instead amend "Leaked connections".
* | | | | Merge branch 'sverker/misc-fixes' into maintSverker Eriksson2022-08-231-1/+6
|\ \ \ \ \
| * | | | | erts: Check for leaking peer nodes after testsSverker Eriksson2022-08-161-1/+6
| | | | | |
* | | | | | [erts] Improve flushing of signalsRickard Green2022-07-131-14/+164
| | | | | |
* | | | | | Merge branch 'rickard/unlink-exit-fix/OTP-18177' into maintRickard Green2022-07-131-1/+40
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * rickard/unlink-exit-fix/OTP-18177: [erts] Fix dist unlink-id-ack signal memory leak [erts] Don't send exit signal due to a link with ongoing unlink op
| * \ \ \ \ \ Merge branch 'rickard/unlink-exit-fix/24.3.4/OTP-18177' into ↵Rickard Green2022-07-131-1/+40
| |\ \ \ \ \ \ | | | |_|_|_|/ | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | rickard/unlink-exit-fix/OTP-18177 * rickard/unlink-exit-fix/24.3.4/OTP-18177: [erts] Fix dist unlink-id-ack signal memory leak [erts] Don't send exit signal due to a link with ongoing unlink op
| | * | | | | Merge branch 'rickard/unlink-exit-fix/23.3.4/OTP-18177' into ↵Rickard Green2022-07-131-2/+41
| | |\ \ \ \ \ | | | |_|/ / / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | rickard/unlink-exit-fix/24.3.4/OTP-18177 * rickard/unlink-exit-fix/23.3.4/OTP-18177: [erts] Fix dist unlink-id-ack signal memory leak [erts] Don't send exit signal due to a link with ongoing unlink op
| | | * | | | [erts] Fix dist unlink-id-ack signal memory leakRickard Green2022-07-121-1/+40
| | | | | | |
* | | | | | | Merge branch 'rickard/spawn_request-fix/OTP-18164' into maintRickard Green2022-07-131-52/+171
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * rickard/spawn_request-fix/OTP-18164: [erts] Fix lost exit signal from parent to child due to link [erts] Fix lost exit signal due to connection loss
| * \ \ \ \ \ \ Merge branch 'rickard/spawn_request-fix/23.3.4/OTP-18164' into ↵Rickard Green2022-07-131-52/+171
| |\ \ \ \ \ \ \ | | |/ / / / / / | |/| | | | / / | | | |_|_|/ / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | rickard/spawn_request-fix/OTP-18164 * rickard/spawn_request-fix/23.3.4/OTP-18164: [erts] Fix lost exit signal from parent to child due to link [erts] Fix lost exit signal due to connection loss
| | * | | | | [erts] Fix lost exit signal from parent to child due to linkRickard Green2022-07-131-44/+89
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | An exit signal from a parent process to a child process due to a link was lost if: * the parent process terminated before the spawn-request had completed, * the spawn-request was a distributed, and * the exit reason was larger than one machine word.
| | * | | | | [erts] Fix lost exit signal due to connection lossRickard Green2022-07-131-0/+77
| | | |/ / / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Loss of a connection over which a not yet completed spawn request was ongoing could cause loss of exit signals. Such loss of exit signals was very rare. Besides the above described connection loss also the following conditions had to be satisfied: * The spawn request that was interrupted by the connection loss also had to set up a link between the parent process and the child process. * The parent process that issued the spawn request also had to be terminating while the spawn request was interrupted by the connection loss. * The same parent process also had to have made other spawn requests to other nodes than to the node to which the connection was lost. * These spawn requests to the other nodes also had to set up links. * These spawn requests to the other nodes also had to be not yet completed at the time of the connection loss. That is, the spawn reply from the child process had not yet reached the parent process. If all the conditions above were met, exit signals to the children spawned due to the above described spawn requests to other nodes *could* be lost. The above bug also caused a significant memory leak when it was triggered since the destruction of the parent process never completed.
* | | | | | Merge branch 'rickard/pi-msgq-len-fix/OTP-18169' into maintRickard Green2022-07-071-0/+65
|\ \ \ \ \ \ | |_|_|_|/ / |/| | | | / | | |_|_|/ | |/| | | * rickard/pi-msgq-len-fix/OTP-18169: [erts] Fix process_info(Pid, message_queue_len) on other process
| * | | | [erts] Fix process_info(Pid, message_queue_len) on other processRickard Green2022-07-071-0/+65
| | | | |
* | | | | fix +hmax command line argument to accept > 4 GbMaxim Fedorov2022-06-201-0/+14
| |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | It is possible to set the maximum heap size for the process using process_flag(max_heap_size, #{size => (1 bsl 59) -1}). However command line parameter +hmax would not work with anything beyond 4 Gb (536870911 words) due to signed int32 used to parse the command line.
* | | | Update copyright yearErlang/OTP2022-04-111-1/+1
| | | |
* | | | Support remote parent in process_info(_, parent)Rickard Green2022-03-221-1/+19
| | | |
* | | | [erts] Expose parent process via process_info(_, parent)Maxim Fedorov2022-03-211-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Parent process information is available in the VM process structure, but is not exposed via process_info. Sometimes it is very convenient to know who spawned processes that are not supporting any OTP behaviours (where this information is stored in a process dictionary). Parent process is returned only for locally started processes. Remotely started process, or 'init' process that has no parent, return 'undefined'.
* | | | [erts] reduce console output for Common TestMaxim Fedorov2022-01-081-11/+14
| | | | | | | | | | | | | | | | | | | | | | | | Some test cases produce 20+ Mb of debug output which does not help to figure out a problem. This change suppresses logs, leaving a chance to remove suppression for local runs.
* | | | Merge branch 'maint'Rickard Green2021-12-131-1/+1
|\ \ \ \ | | |_|/ | |/| | | | | | | | | | * maint: Update copyright year
| * | | Update copyright yearRickard Green2021-12-131-1/+1
| | | |
* | | | Fix typos in erts/emulator/testKian-Meng, Ang2021-12-021-3/+3
| | | |
* | | | Merge branch 'rickard/rm-peer-fallbacks'Rickard Green2021-12-011-84/+3
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | * rickard/rm-peer-fallbacks: Remove fallbacks needed before the peer module was merged
| * | | | Remove fallbacks needed before the peer module was mergedRickard Green2021-11-191-84/+3
| | | | |