Age | Commit message (Collapse) | Author |
|
Besides using two words for 'milliseconds' et. al. they are
also changed from plural to singular.
|
|
* rickard/erl-crash-dump-bug/OTP-13799:
Avoid segfault when printing slogan after crashdumping
|
|
* rickard/proc-tmo-bug/OTP-13798:
Fix race causing lost wakeup on receive-after timeout
|
|
|
|
|
|
* sverker/update_counter-deadlock/ERL-188/OTP-13731:
erts: Add test ets_SUITE:update_counter_table_growth
erts: Fix deadlock in ets:update_counter/4
erts: Optimize db_finalize_dbterm_hash
|
|
in 'set' with 'write_concurrency'
when inserting default object causes table to grow
and the bucket to split is protected by same lock as the key.
|
|
Always free term after WUNLOCK_HASH
|
|
Symptom: VM abort "Overrun stack and heap"
Problem: The temporary bignum created in buffer tmp_big[] will be
part of the GC initiated by TestHeapPreserve, but its size is not
included which can cause the GC to overflow if very unlucky.
Solution: Do not include tmp_big in the GC.
|
|
|
|
* lukas/erts/nif_allow_port_command_in_non_sched_thread/OTP-13442:
erts: Allow enif_port_command in non-sched thread
|
|
Yes this is an ugly workaround. One approach for a better
solution could be to introduce an internal secret atom
tagged as an atom with a unique index, but impossible
to find by string hash lookup/insert.
|
|
|
|
|
|
It has to be possible to send trace messages to a port
from non-schedulers threads (specifically from the
sys_msg_dispatcher).
|
|
|
|
|
|
* kvakvs/erts/monitor_port/OTP-11384:
erts: Add port monitors
|
|
* erlang:monitor/2 with port argument is added, erlang:demonitor, using port task API and avoiding locking;
* port_info and process_info support for monitored ports (with named port monitors support);
* Exit signals contain type 'process' or 'port';
* Propagation of port exit signals;
* Self-cleaning when origin process dies with monitor on;
* 8 test cases + testcase for port driver crashing;
* Documentation for all of the above (monitor, demonitor, port_info and process_info) updated
|
|
* egil/fix-simple-crashdump-with-maps/OTP-13657:
erts: Don't crash on maps on crash dumps
|
|
* egil/lttng-change-domain:
runtime_tools: Change LTTng dyntrace domain
erts: Change LTTng otp domain
|
|
- Large Maps could cause a stack overrun during crash dump generation.
- This is a simple workaround until a solution has been implemented.
- The error has no impact on a running system.
|
|
* rickard/misc-ds:
Replace enif_is_on_dirty_scheduler() with enif_thread_type()
No GC on dirty IO schedulers
|
|
This reverts commit 7c133fb1094ad1cabbb5cfc157483a43c816c6a9.
|
|
This reverts commit f4bdac18cb9dd45185e911308a5ebd95ff10d7fd.
|
|
|
|
|
|
From 'com_ericsson_otp' to 'org_erlang_otp'.
This domain name is more suitable.
|
|
|
|
|
|
|
|
|
|
that would go undetected and cause havoc if module is purged.
|
|
in tables without write_concurrency
and remove it totally #ifndef ERTS_SMP
|
|
from 700% to 200%
|
|
|
|
|
|
|
|
|
|
* rickard/off_heap-nonsmp-fix/OTP-13366:
Do not send on_heap msgs to error logger in non-smp emulator
|
|
* rickard/mv-dirty-reds-count/OTP-13123:
Move dirty reduction count to erts_dirty_process_main()
|
|
* vinoski/dirty_process_main/OTP-13123:
Add dirty_process_main function
|
|
|
|
Dirty schedulers only execute NIFs, so having them execute the full
process_main function isn't necessary. Add dirty_process_main for
dirty schedulers to execute instead.
Add erts_pre_dirty_nif(), called when preparing to execute a dirty
nif.
Add more dirty NIF tests to verify that activities requiring the
process main lock can succeed when the process is executing a dirty
NIF.
|
|
|
|
|
|
and replace with a nice else-if chain.
|
|
The same bug was fixed for OTP 18 in cb62c989e59f0ec8556f9f1d4e9a45b
by provoking yet another GC.
But now in 19 we are ok with heap fragments
so just remove the asserts.
|
|
|
|
* rickard/on_heap-fix/OTP-13366:
Improve message allocation in enif_send()
Fix message queue update on replacement and removal of message
|