Age | Commit message (Collapse) | Author |
|
* bjorn/fix-on_load/OTP-12593:
Update documentation regarding improvements
Correctly handle multiple load attempts when on_load is pending
Avoid deadlock when an on_load function makes an external call to the module itself
code_server: Eliminate unnecessary Tag in handle_call/3
Reimplement -on_load()
Refactor erts_finish_loading() and insert_new_code()
code_SUITE: Make on_load_binary/1 clearer by using merl
|
|
* rickard/fix-sched-sys-task/OTP-13047:
Fix scheduling of system tasks
|
|
* rickard/reds-fix/master/OTP-13512:
Ensure correct reduction counting
|
|
|
|
* lemenkov/crash_dump_while_dist_error/PR-947/OTP-13474:
Add patch to crash dump on large distribution
|
|
Load the module as old code; swap old and new code if the
-on_load function succeeds. That way, a failed update attempt
for a module that has an -on_load function will preserve the
previous version of the code.
|
|
* egil/erts/doc-lttng-beam-tps/OTP-10282:
erts: Rename LTTng tracepoint aio_pool_add to aio_pool_put
erts: Change argument order for LTTng driver_stop
runtime_tools: Document BEAM lttng tracepoints
|
|
* dotsimon/gc-info-crashdump/PR-1026/OTP-13541:
Print heap pointers for garbing processes during crashdump
|
|
* margnus1/llvm-corruption-fix/PR-1038/OTP-13366:
erl_process: Restore R18 HiPE PCB offsets
|
|
* lukas/erts/rename_xmqd_to_hmqd/OTP-13366:
erts: Rename erl flag +xmqd to +hmqd in erlexec
Fix proc_lib message_queue_data spec
erts: Fix total_heap_size calculation for on_heap
erts: Rename erl flag +xmqd to +hmqd
|
|
* lukas/erts/sensitive_yield/OTP-13540:
Yield after setting sensitive for save_calls
|
|
* lukas/erts/tracing/misc_fixes/OTP-13503:
erts: Add test for new procs trace with spawn_link
kernel: Remove seq_trace event order dep in tc
erts: Add tests for set on link tracing
erts: Expand trace tests for refc binaries
erts: Remove erl_tracer with invalid state
erts: Remove some dead code
erts: Fix broken doc link to erl_tracer
Conflicts:
erts/emulator/beam/erl_trace.c
|
|
* Be consistent.
|
|
* Be consistent.
|
|
As a preparation for fixing some issues with -on_load(), we will
integrate insert_new_code() into erts_finish_loading. Also rename
insert_new_code() to stub_insert_new_code() to make it clear that
it will only be used when making a stub module
|
|
* egil/erts/tracing-support-lttng/OTP-13532: (28 commits)
runtime_tools: User's guide to LTTng and dyntrace
runtime_tools: Fix Dtrace build
erts: Fix gc messages in tracer_SUITE
erts: Fix gc messages in sensitive_SUITE
erts: Fix gc messages in trace_port_SUITE
tools: Update fprof tests
tools: Update fprof with new gc traces
runtime_tools: Update dyntrace_lttng_SUITE tests
runtime_tools: Add 'return_to' for call tracing
erts: Fix return_to trace callback
erts: Update erl_tracer documentation
erts: Fix erl_tracer documentation typos
Update preloaded erl_tracer.beam
erts: Update erl_tracer type specs
runtime_tools: Add lttng dyntrace tests
runtime_tools: Extend 'trace' and 'enabled' tracer callbacks
erts: Extend 'enabled' and 'trace' tracer callbacks
runtime_tools: Extend 'enabled' tracer callbacks
erts: Extend 'enabled' tracer callbacks
runtime_tools: Update lttng garbage collection trace
...
|
|
|
|
Adds the following capabilities to a tracer backend
* enabled_running_procs/3 changed from enabled_running/3
* enabled_running_ports/3
* trace_running_procs/6 changed from trace_running/6
* trace_running_ports/6
|
|
Adds the following capabilities to a tracer backend
* enabled_procs/3
* enabled_ports/3
* enabled_running/3
* enabled_call/3
* enabled_send/3
* enabled_receive/3
* enabled_garbage_collection/3
These functions will fall back to
enabled/3
if not provided and the tracepoint is active.
|
|
Replace 'gc_start' and 'gc_end' with
* 'gc_minor_start'
* 'gc_minor_end'
* 'gc_major_start'
* 'gc_major_end'
|
|
|
|
|
|
It was recently observed that the LLVM backend for HiPE was broken,
generating code that crashes the VM.
It turns out that this was caused by LLVM hard-coding an offset into the
Erlang PCB, which became incorrect as of commit 3ac08f9b, that
introduced a new member into the PCB before the HiPE-specific state,
changing its offsets.
For now, until a proper fix is implemented, we move this new member to
after the HiPE-specific state, allowing the LLVM backend to work once
more.
|
|
second merge of this branch with some bug fixing
|
|
* egil/maps-api-additions/PR-1025/OTP-13522:
stdlib: Document maps:update_with/3,4
stdlib: Add tests for maps:update_with/3,4
stdlib: Add maps:update_with/3,4
erts: Add tests for maps:take/2
stdlib: Document maps:take/2
erts: Add BIF maps:take/2
|
|
Make sure to cover all of the refc binary cases in tracing
|
|
|
|
|
|
|
|
Flags that control the heap should all fall under the +h flag
|
|
* lukas/erts/non-smp-debug-fixes/OTP-13047:
erts: Fix incorrect non-smp debug assert
erts: std_alloc is not thread safe on non-smp
Conflicts:
erts/emulator/beam/erl_alloc_util.c
|
|
In an SMP emulator, print_garb_info doesn't do anything because the
heap pointers could be invalid.
However, when crashdumping there are no schedulers running so it's ok
to print this additional information which could be useful when
examining a core file.
|
|
|
|
* egil/fix-lock-order-trace-status:
erts: Fix lock-order trace status
|
|
* egil/erts/fix-copy-share-heap:
erts: Fix comments
erts: Fix copy share with onheap messages
|
|
|
|
|
|
|
|
|
|
on 32-bit, as the granularity of the literal bit vector
is super-alignment.
|
|
|
|
* lukas/erts/tracing/fix-spawned-lc-error/OTP-10267:
erts: Fix lock order bug when only child is procs traced
|
|
|
|
* bjorn/compiler/misc-opt:
v3_kernel: Construct literal lists properly
Use the register map in %live in beam_utils:is_killed_block/2
Teach beam_utils to check liveness for put_map instructions
beam_peep: Help out beam_jump
|
|
* bjorn/erts/beam_load:
Optimize get_tuple_element instructions that target Y registers
Mend beam_SUITE:packed_registers/1
Correct unpacking of 3 operands on 32-bit archictectures
Eliminate misleading #ifdef ARCH_64 in beam_opcodes.h
beam_debug: Correct masking when unpacking packed operands
|
|
that uses its own super carrier (erts_exec_mmapper)
to guarantee low addressed and executable memory (PROT_EXEC).
Currently only used on x86_64 that needs low memory
for HiPE/AMD64's small code model.
By initializing erts_exec_mapper early we secure
its low memory area before erts_literal_mmapper might
steal it.
|
|
Make the callbacks more general to be usable for any allocator
that that uses its own ErtsMemMapper.
|
|
Reduce main carrier size
and number of free descriptors.
|
|
|
|
This is needed as otherwise messages from system_profile
will not be guaranteed to arrive before trace delivered.
|