Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
|
|
Using magic refs for big timers caused too large a stress on
the off_heap GC implementation to be viable, so it was never
enable. The code is now broken because of other changes to
we might as well remove it.
|
|
|
|
to increase the probablity of a nice badarg
from erlang:port_control.
|
|
Apply type optimizations across local function calls
|
|
This commit lets the type optimization pass work across functions,
tracking return and argument types to eliminate redundant tests.
|
|
|
|
* lukas/erts/set_logger_process/OTP-15375:
erts: Fix type of system_logger variable
|
|
|
|
* bjorn/erts/optimize-is_function2:
Optimize the is_function/2 guard test
|
|
|
|
* lukas/erts/scheduler-pollset-fixes/OTP-15538:
erts: Fix getting of poll events on linux >= 4.15.0
erts: Use reduction based polling for starved poll-set
erts: Fix pollset test cases
|
|
* lukas/erts/fix_spawn_driver_early_close/OTP-15537:
erts: Fix too early close of spawn driver fd
|
|
* lukas/erts/fix_inet_multitimer_cleanup/OTP-15536:
erts: Fix cleanup of the inet MultiTimer
|
|
|
|
The is_function2 instruction is executed surprisingly
frequently when running dialyzer or the compiler. It
cannot hurt to optimize it a little.
|
|
|
|
When the schedulers never go to sleep (and thus never polls)
it may be that the fds in schedulers poll-sets are never polled.
Before this commit, this was solved by starting a timer when an
overload was detected. This had issues as overloads were not always
detected in time. So this commit reverts to the pre OTP-21 behaviour
so keep a global counter makes that the poll is called when it should.
|
|
|
|
* bjorn/erts/fix-pt-dumping:
Fix incorrect dumping of some persistent terms
|
|
josevalim/jv-no-bin-alloc-on-empty-append/OTP-15535
Do not allocate new bitstring/binary on empty append
|
|
There seems to be an incorrect merge conflict resolution
in abde22933f5a that merged maint to master. Dumping of
references (and possibly other terms) were broken.
|
|
* maint:
Fix bug causing dirty scheduler sleeper list inconsistency
|
|
* rickard/dirty_scheduler_collapse/maint-21/OTP-15509:
Fix bug causing dirty scheduler sleeper list inconsistency
|
|
|
|
* lukas/erts/spawn_opt_max_heap_tc_fix:
erts: Fix process_SUITE:max_heap tests
|
|
|
|
|
|
If the main lock is not taken then any process running
on a dirty scheduler may cause all kinds of problems.
|
|
Conflicts:
erts/emulator/beam/bif.c
erts/preloaded/ebin/erlang.beam
erts/preloaded/ebin/erts_internal.beam
erts/preloaded/ebin/prim_file.beam
|
|
* lukas/erts/set_logger_process/OTP-15375:
Update preloaded modules
erts: Add erlang:system_flag(system_logger,_)
|
|
rickard/dirty_scheduler_collapse/maint-21/OTP-15509
* rickard/dirty_scheduler_collapse/OTP-15509:
Fix bug causing dirty scheduler sleeper list inconsistency
|
|
|
|
This flag allows logger and other components to set the
process which log messages from ERTS are to be sent.
|
|
* maint:
Fix passing large integers as base to integer_to_X/2
|
|
I noticed this seconds after merging... :(
|
|
* maint:
Implement integer_to_list/2 and integer_to_binary/2 as CIFs
Accept base in all integer-printing functions
Document cleanup semantics for atomics and counters
|
|
This makes them roughly as fast as integer_to_list/1 and
integer_to_binary/1.
|
|
|
|
otherwise gc may move the binary data and make 'src_bytes' invalid.
|
|
|
|
* maint:
Remove an unused variable
Spawn prim_file helper as a system process
|
|
* john/erts/prim_file-init-restart/OTP-15495/ERL-821:
Remove an unused variable
Spawn prim_file helper as a system process
|
|
|
|
Custom message format for enif_select
|
|
Make sure to flush all queued emulator logger messages
before starting the test. The trap_exit_badarg could sometimes
leave messages and since the handler and messages now are
handled in different processes this becomes a problem.
|