Age | Commit message (Collapse) | Author |
|
similar to the ones in OTP-19.2.3.1
|
|
It crashed due to recursive calls to alloc_util
in carrier initialization test callback.
|
|
* Give back carrier to owner when put in pool with use of dd-queue.
* Replace pooled_list with pooled_tree for more efficient search
of all owned pooled carriers.
* Remove traitor_list as it does not serve much purpose anymore.
* Add HOMECOMING bit flag in crr->allctr atomic to
(1) avoid double enqueue into dd-enqueue.
(2) trigger read barrier in get_used_allctr for newly received carriers.
|
|
to mix it up with some realloc calls.
|
|
by adding a dedicated 'homecoming_dd_block' to use in dd-queue.
+ Preparation for dd-queue-migration of non-empty carriers.
+ Get rid of ugly hack where blk->carrier pointer is overwritten
by dd-queue and then have to be restored.
|
|
|
|
|
|
* sverker/bad-dist-msg-bug/ERIERL-80/OTP-14661:
erts: Fix bug when detecting bad dist message
Add distribution_SUITE:bad_dist_ext_size
|
|
* sverker/19/on_load-on_load-bug/OTP-14612:
erts: Fix 'on_load' tracing bug for modules with -on_load
code_SUITE:on_load_trace_on_load
|
|
maint-19
* sverker/19/binary_to_atom-utf8-crash/ERL-474/OTP-14590:
erts: Fix crash in binary_to_atom/term for invalid utf8
|
|
* rickard/timer-sid-bug/OTP-14548:
Fix scheduler id field in timers
|
|
We can't just leave it in queue with dist_ext=NULL.
Two symptoms seen:
1. 'receive' trying to deref dist_ext as NULL.
2. GC think it's a term and put THE_NON_VALUE in root set.
|
|
|
|
Symptom: VM crash when erlang:trace_pattern(on_load, ..) is set and
module with -on_load is loaded.
Problem: Tracing and -on_load clash in their use of Export.beam[1]
Solution: Do not do call set_default_trace_pattern in finish_loading_1
for modules with -on_load. finish_after_on_load_2 will do that anyway.
|
|
|
|
such as a sub-binary, of a correct utf8 string,
that ends in the middle of a character.
|
|
|
|
|
|
|
|
* sverker/big-bxor-bug/ERL-450/OTP-14514:
erts: Fix bug in bxor of a big negative number
|
|
* john/erts/fix-tcp-send-timeout/OTP-14509/ERL-448:
Add a dedicated close function for TCP ports to prevent issues like ERL-430/448
Close TCP ports properly on send timeout
|
|
* sverker/prealloc-race-bug/OTP-14491:
erts: Fix bug in quick alloc
|
|
Wrong result for
(X bsl WS) bxor Y.
where
X is any negative integer
Y is any integer that does not require more words than X
WS is erlang:system_info(wordsize) or larger
Fix: The subtraction of 1 (for 2-complement conversion)
must be carried along all the way to the last words.
|
|
|
|
|
|
The effect of the race is that a pre-allocated memory block
is inserted last without updating tail.data.last, which will cause
all subsequent insertions to also fail to update tail.data.last.
Hence all pre-allocation for this quick alloc instance is leaked
for this thread and will fallback on erts_alloc.
|
|
|
|
|
|
* rickard/statistics/OTP-14484:
Fix statistics(wall_clock) and statistics(runtime) implementation
|
|
into maint-19
* lukas/erts/fix_outputv_port_task_cleanup/ERL-428/OTP-14481:
fixup! erts: Cleanup dropped port tasks correctly
erts: Add tests to detect port close race
erts: Cleanup dropped port tasks correctly
|
|
* john/erts/fix-port-leak/OTP-13939/ERL-193:
Add a testcase for OTP-13939/ERL-193
Mark socket disconnected on tcp_send_or_shutdown_error
# Conflicts:
# lib/kernel/test/gen_tcp_misc_SUITE.erl
|
|
|
|
|
|
|
|
Before this fix, the extra data attached to a port task had to
be cleaned up by the calling function. This caused problems
because the outputv call, co-allocates the extra data with the
port task. So in rare circumstances the port task would be
free'd before the extra data was free'd which led to segfault
when looking at the port task.
This has been fixed by the generic PORT_TASK_ABORT behaviour
being used even for tasks dropped in the erts_schedule_proc2port_signal
API.
|
|
The socket left lingering due to {exit_on_close, false} will accept writes
in a confusing way, returning either enotconn or blocking. This fix allows
socket to know that it has been closed recently, and new writes won't pass.
|
|
=== OTP-19.1.6.1 ===
Changed Applications:
- erts-8.1.1.1
Unchanged Applications:
- asn1-4.0.4
- common_test-1.12.3
- compiler-7.0.2
- cosEvent-2.2.1
- cosEventDomain-1.2.1
- cosFileTransfer-1.2.1
- cosNotification-1.2.2
- cosProperty-1.2.1
- cosTime-1.2.2
- cosTransactions-1.3.2
- crypto-3.7.1
- debugger-4.2.1
- dialyzer-3.0.2
- diameter-1.12.1
- edoc-0.8
- eldap-1.2.2
- erl_docgen-0.6
- erl_interface-3.9.1
- et-1.6
- eunit-2.3.1
- gs-1.6.2
- hipe-3.15.2
- ic-4.4.2
- inets-6.3.3
- jinterface-1.7.1
- kernel-5.1
- megaco-3.18.1
- mnesia-4.14.1
- observer-2.2.2
- odbc-2.11.3
- orber-3.8.2
- os_mon-2.4.1
- otp_mibs-1.1.1
- parsetools-2.1.3
- percept-0.9
- public_key-1.2
- reltool-0.7.2
- runtime_tools-1.10.1
- sasl-3.0.1
- snmp-5.2.4
- ssh-4.3.6
- ssl-8.0.3
- stdlib-3.1
- syntax_tools-2.1
- tools-2.8.6
- typer-0.9.11
- wx-1.7.1
- xmerl-1.3.12
* tag 'OTP-19.1.6.1':
Updated OTP version
Prepare release
Conflicts:
OTP_VERSION
erts/vsn.mk
otp_versions.table
|
|
|
|
|
|
* lukas/erts/fix_zz_sigterm_kill/OTP-14451:
erts: Fix so that 81b628 (sigterm=kill) works
|
|
* rickard/purge-hibernated-19/ERIERL-24/OTP-14444:
Update testcase to check that purge handle hibernated process correct
Do not GC hibernated process from other processes
Fix check_process_code() on hibernated process
|
|
* john/erts/fix-zombie-tcp-ports/ERL-430/OTP-14441:
Unconditionally clear IO buffers on send/shutdown errors
|
|
OTP-14451
|
|
|
|
|
|
|
|
* rickard/purge-hibernated:
Update testcase to check that purge handle hibernated process correct
Conflicts:
erts/emulator/test/code_SUITE.erl
|
|
|
|
* rickard/purge-hibernated:
Do not GC hibernated process from other processes
Fix check_process_code() on hibernated process
Conflicts:
erts/emulator/beam/beam_bif_load.c
erts/emulator/beam/erl_gc.c
erts/emulator/beam/erl_process.h
|
|
|