Age | Commit message (Collapse) | Author |
|
|
|
* sverker/testcase/OTP-9422:
Test case for OTP-9422
|
|
* sverker/testcase/OTP-9423:
Add test case for ETS bug OTP-9423
|
|
|
|
* sverker/sbmbc-fixup:
Small fixups for rickard/sbmbc/OTP-9339
|
|
|
|
* raimo/io_lib_fread/OTP-9439:
Code cleanup, unduplicate test for whitespace
EOF before first field is only ok for first character in io:fread
At end of input ask for more also for for literal format characters
|
|
|
|
|
|
|
|
|
|
|
|
alloc_no of sbmbc_low_alloc was set to ERTS_ALC_A_STANDARD_LOW
|
|
|
|
|
|
* dev:
Fix small error in example code of gen_sctp documentation
|
|
* sverker/gen_sctp-open-docfix:
Fix small error in example code of gen_sctp documentation
|
|
|
|
Conflicts:
erts/emulator/test/nif_SUITE.erl
erts/emulator/test/nif_SUITE_data/nif_SUITE.c
sverker/enif_make_int64-halfword/OTP-9394
|
|
* sverker/enif_make_int64-halfword/OTP-9394:
Fix halfword bug in enif_make_int64
|
|
|
|
Conflicts:
erts/vsn.mk
|
|
maint-r14
* bmk/snmp/agent/wrong_default_transport_domain/OTP-9425:
[agent] Did not handle transport domains properly in some cases, for instance trap sending. OTP-9400
[agent] Wrong default transport domain, snmpUDPDomain, instead of transportDomainUdpIpv4.
[agent] Did not handle transport domains properly in some cases, for instance trap sending.
|
|
|
|
* rickard/sbmbc/OTP-9339:
Use separate memory carriers for small blocks
|
|
* sverker/ets_delete-deadlock-race/OTP-9423:
Fix bug in ets:delete for write_concurrency that could lead to deadlock
|
|
* sverker/trace-ms-invalid-op/OTP-9422:
Fix a match-spec trace bug that could cause emulator crash
|
|
|
|
* siri/stdlib/count_children_memory-notsup/OTP-9426:
Make sure supervisor_SUITE:count_children_memory is always skipped when erlang:memory is not supported
|
|
|
|
* siri/sasl/delete-module-fail/OTP-9417:
Allow appup instruction delete_module module which is not loaded
|
|
|
|
erlang:memory is not supported
Replace the count_children_allocator_test with try erlang:memory in
order to make sure there is no attempt at running this test case if
erlang:memory is not supported.
|
|
for instance trap sending.
OTP-9400
[agent] Wrong default transport domain, snmpUDPDomain, instead
of transportDomainUdpIpv4.
OTP-9425
|
|
of transportDomainUdpIpv4.
OTP-9425
|
|
for instance trap sending.
OTP-9400
|
|
* rickard/atomics-api/OTP-9014:
Use new atomic API in runtime system
Improve ethread atomics
|
|
* lukas/erts/enif_make_reverse_list/OTP-9392:
Add version comment
Rename enif_get_reverse_list to enif_make_reverse_list
Remove extra allocated heap fragment
Added enif_get_reverse_list to nif API
|
|
A trace matchspec with 'enable_trace' or 'disable_trace' in body could
cause an emulator crash if a concurrent process altered the trace
setting of the traced function by calling erlang:trace_pattern.
The effect was a deallocation of the binary holding the matchspec
program while it was running. Fixed by increasing reference count of
ms-binary in the cases when 'enable_trace' or 'disable_trace' may
cause a system block that may alter the ongoing trace.
The paradox here is that db_prog_match() is using erts_smp_block_system()
to do 'enable_trace' and 'disable_trace' in a safe (atomic) way. But that
also have the (non-atomic) effect that racing thread might block the
system and change the trace settings with erlang:trace_pattern.
|
|
Relocking in ets_delete_1() and remove_named_tab() was done by
unlocking the table without clearing the is_thread_safe flag. A racing
thread could then read-lock the table and then incorrectly
write-unlock the table as db_unlock() looked at is_thread_safe to
determine which kind of lock to unlock.
Several fixes:
1. Make db_unlock() use argument 'kind' instead of is_thread_safe to
determine lock type.
2. Make relock logic use db_lock() and db_unlock() instead of directly
accessing lock primitives.
3. Do ownership transfer earlier in ets_delete_1 to avoid racing owner
process to also start deleting the same table.
|
|
|
|
|
|
* dev:
Modify the contracts of the queue module
|
|
* hb/stdlib/queue_contracts/OTP-9418:
Modify the contracts of the queue module
|
|
* bjorn/remove-concat-binary/OTP-9421:
Update preloaded modules
Remove deprecated concat_binary/1
|
|
The appup instruction 'delete_module' would cause a crash during
upgrade if the module to be deleted was not loaded. The reason was
that the release_handler tried to read the version number of the old
module after the code path had changed to point to the new version of
the application. Thus, if the module had not been loaded before the
upgrade, there would no longer be any such module in the path
(delete_module indicates that the module is deleted from the new
version of the application).
This is corrected by letting the release_handler read the old version
of the module only if the module is updated - not if it is
removed. And it is always read before the code path is changed.
|
|
* dev:
Fix bugs in xref(3)
|
|
* hb/tools/xref_doc_fixes/OTP-9416:
Fix bugs in xref(3)
|
|
* dev:
Fix a bug in erl_scan:set_attribute/3
|
|
* hb/scanner_bug/OTP-9412:
Fix a bug in erl_scan:set_attribute/3
|