Age | Commit message (Collapse) | Author |
|
* avellable/erts/correct_atomicity_typo:
Correct spelling of atomicity
|
|
|
|
with run_erl option -sleepy-child
to provoke race when slave pty is late
|
|
|
|
maint
* raimo/erts/prim_inet-unknown-address-families/OTP-13775:
Handle AF_UNSPEC and AF_UNDEFINED correctly
|
|
* raimo/SCTP-socket-stats/ERL-102/OTP-13773:
Fix SCTP send stats in inet_drv
Test inet:getstat/1 dead for SCTP send
Fix test suite compilation warnings
|
|
* margnus1/erts/fix-hipe-literal-gc/PR-1122/OTP-13777:
check_process_code: Sweep HiPE stack for literals
|
|
|
|
|
|
Regression from OTP-13770 (84549af1c996657aedee1263afec28b21bfa42a4)
|
|
|
|
|
|
We need to use an initial hash seed for each map pair, i.e. the
hash value. The hash value is reset to the seed for each pair instead
of setting the seed to zero.
If we don't, no additional entropy is given to the system and the
hash collision resolution in maps:from_list/1 would fail.
|
|
|
|
|
|
into maint
* falkevik/erts/configure_to_check_in_libsctp_for_sctp_funcs:
Check libsctp for sctp funcs in configure.in
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This type of statistics is now available through the microstate
accounting API.
|
|
* lukas/erts/tracing/get_seq_tracer_mem_leak/OTP-13742:
erts: Make sure to de-allocate the old seq tracer
|
|
* pw/erts/documentation-editorial-changes/OTP-13740:
erts: Review of documentation changes
erts: Editorial changes
erts: Move all functions in docs to be in alphabetical order
|
|
|
|
* 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
|
|
|
|
|
|
|
|
This commit only changes the order of functions and does some
other rearrangements to that the diff with the next commit will
be easier to follow. No content or XML tags are changed.
|
|
* lukas/erts/tracing/bif_return_to_trace_fix/OTP-13734:
erts: After a call to a tracer nif, reset htop
erts: Check if return_to trace is enabled for bif
|
|
This is needed in order for the heap to never contain
any pointers to invalid memory. This is good for performance
and debugging reasons.
|
|
* lukas/erts/spawn_driver_relative_cd/ERL-175/OTP-13733:
erts: Add port_SUITE:cd invalid dir testcase
erts: Fix spawn driver with relative cd option
erts: Fix HARD_DEBUG printouts in erl_child_setup
erts: Improve error printouts in erl_child_setup
Conflicts:
erts/emulator/test/port_SUITE.erl
|
|
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.
|
|
We have to do an extra check if the return_to trace is enabled here
as it may have been cleared by the bif after the flags where
created by the call_trace.
|
|
|
|
|
|
Because check_process_code neglected checking the HiPE stack for
references to the literal area, such references would survive the purge
and subsequent deletion of a module and its literal area. These dangling
references would then cause incorrect behaviour or even hard crashes of
the VM.
By simply adding a scan of the HiPE stack to check_process_code and
erts_garbage_collect_literals, this problem is fixed.
In order to support full stack walks without deleting the graylimit
trap, a new stack walking interface function,
nstack_walk_init_sdesc_ignore_trap() was introduced.
|
|
* hipe-trap-gc/PR-1116:
hipe: Fix bug in trap frame allocation wrappers
hipe: Add assertion for gc in bif without wrapper
|
|
Symptom: run_erl does exit(0) and child program (erl) does
not seem to start. Running run_erl again however brings the previous
child program to life.
Problem: A race causing run_erl to read 0 from master pty and exit
because the child has not yet opened its corresponding slave pty.
Solution: Use the non standard openpty() function instead that does
not expose this race as the slave fd is opened in the parent.
Question:
Is there a race free way to do this with posix_openpt on OpenBSD?
|
|
|
|
|
|
|
|
|
|
Add prints to stderr with a small description of the error
so that errors will be easier to debug. Also if a protocol
error is detected, erl_child_setup will abort instead of exit.
|
|
Call AC_CHECK_LIB before calling AC_CHECK_FUNCS to check for functions in libsctp.
Otherwise AC_CHECK_FUNCS will not link with libsctp to see if function exists.
|
|
The trap frame allocation wrappers occasionally call the garbage
collector, even though built-in functions are not supposed to.
On non-{x86,amd64} platforms, HiPE was optimising the BIF wrapper
interface on the basis that BIFs do not GC. So, when
hipe_reserve_beam_trap_frame called the garbage collector, the state in
the PCB was stale and corruption happened.
Now, these particular BIFs are reclassified as GC BIFs.
Unfortunately, in order to do that we needed to introduce a
gc_bif_interface_3 macro in every hipe_$ARCH_bifs.m4 file.
|