Age | Commit message (Collapse) | Author |
|
* 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.
|
|
* lukas/erts/set_logger_process/OTP-15375:
Update preloaded modules
erts: Add erlang:system_flag(system_logger,_)
|
|
* maint-19:
Updated OTP version
Prepare release
|
|
|
|
This flag allows logger and other components to set the
process which log messages from ERTS are to be sent.
|
|
I noticed this seconds after merging... :(
|
|
This makes them roughly as fast as integer_to_list/1 and
integer_to_binary/1.
|
|
|
|
Document cleanup semantics for atomics and counters
|
|
* john/erts/prim_file-init-restart/OTP-15495/ERL-821:
Remove an unused variable
Spawn prim_file helper as a system process
|
|
|
|
maint-19
* john/erts/spectre-configure-flag/OTP-15430/ERIERL-237:
Allow disabling retpoline in interpreter loop
Add a ./configure flag for spectre mitigation
|
|
* sverker/big-band-bug/ERL-804/OTP-15487:
erts: Fix bug in 'band' of two negative numbers, one big
|
|
|
|
|
|
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.
|
|
* lukas/erts/persistent_term_test_fix:
erts: Fix persistent_term testcases
|
|
|
|
* maint-20:
Updated OTP version
Prepare release
|
|
|
|
* sverker/big-band-bug/ERL-804/OTP-15487:
erts: Fix bug in 'band' of two negative numbers, one big
|
|
|
|
* lukas/erts/inet_pktopts_old_linux/OTP-15494:
erts: Fix inet pktopts on very old linux kernels
|
|
* maint-21:
Updated OTP version
Prepare release
|
|
|
|
* sverker/big-band-bug/ERL-804/OTP-15487:
erts: Fix bug in 'band' of two negative numbers, one big
|
|
maint-21
* sverker/fix-atomics-get-large-unsigned/PR-2061/OTP-15486:
erts: Fix possible heap corruption getting atomics
|
|
|
|
* lukas/erts/fix-seq_trace-reset_trace/OTP-15490:
erts: Fix seq_trace:reset_trace dirty gc bug
erts: Use sys_memcpy in copy_one_frag
|
|
=== OTP-20.2.0.1 ===
Changed Applications:
- erts-9.2.0.1
Unchanged Applications:
- asn1-5.0.4
- common_test-1.15.3
- compiler-7.1.4
- cosEvent-2.2.2
- cosEventDomain-1.2.2
- cosFileTransfer-1.2.2
- cosNotification-1.2.3
- cosProperty-1.2.3
- cosTime-1.2.3
- cosTransactions-1.3.3
- crypto-4.2
- debugger-4.2.4
- dialyzer-3.2.3
- diameter-2.1.3
- edoc-0.9.2
- eldap-1.2.3
- erl_docgen-0.7.2
- erl_interface-3.10.1
- et-1.6.1
- eunit-2.3.5
- hipe-3.17
- ic-4.4.3
- inets-6.4.5
- jinterface-1.8.1
- kernel-5.4.1
- megaco-3.18.3
- mnesia-4.15.2
- observer-2.6
- odbc-2.12.1
- orber-3.8.4
- os_mon-2.4.4
- otp_mibs-1.1.2
- parsetools-2.1.6
- public_key-1.5.2
- reltool-0.7.5
- runtime_tools-1.12.3
- sasl-3.1.1
- snmp-5.2.9
- ssh-4.6.3
- ssl-8.2.3
- stdlib-3.4.3
- syntax_tools-2.1.4
- tools-2.11.1
- wx-1.8.3
- xmerl-1.3.16
* tag 'OTP-20.2.0.1':
Updated OTP version
Prepare release
|
|
|
|
* sverker/big-band-bug/ERL-804/OTP-15487:
erts: Fix bug in 'band' of two negative numbers, one big
|
|
maint
* sverker/fix-atomics-get-large-unsigned/PR-2061/OTP-15486:
erts: Fix possible heap corruption getting atomics
|
|
* sverker/erts/prim_file-perm-own-bigendian/OTP-15485:
erts: Fix warning and potential big-endian-bug in prim_file
|
|
|
|
Similar bug as for bxor fixed by abc4fd372d476821448dfb9
Ex:
1> io:format("~.16B\n", [-16#1110000000000000000 band (-1)]).
-1120000000000000000
Wrong result for
(-X bsl WS) band -Y.
where
X is any positive integer
WS is erlang:system_info(wordsize)*8*N where N is 1 or larger
Y is any positive integer smaller than (1 bsl WS)
Fix:
The subtraction of 1 (for 2-complement conversion)
must be carried along all the way to the last words.
|
|
* lukas/erts/fix_lit_msg_copy_in_gc:
erts: Use ptr_val for pointer in gc msg copy
|
|
Due to comparison as a signed integer, when getting an unsigned atomic
in the range 2^63-1..2^64-1 (when the most significant bit was set), the
heap could get corrupted when the integer was retrieved: hsz would get
set to zero, but the code proceeded to build a bignum.
Steps to reproduce (at least on x86_64):
$ erl
1> A = atomics:new(1,[{signed,false}]).
2> atomics:put(A,1,18446744073709551615).
3> atomics:get(A,1).
At the last step, the shell would print some garbage and hang.
|
|
for set_permission and set_owner.
|
|
* sverker/add-since-doc/OTP-15460:
Fill in since for multi-clause functions in erlang.erl
Fix since attribute for troubled function docs
Add empty 'since' attribute for old modules and functions
Add since attribute to dtd
Add "since" attributes in xml for new functions and modules
erl_docgen: Generate "since" OTP version in html
erl_interface: Fix doc for return type 'struct hostent'
|
|
The ones marked since="?" are unknown (but newer than R13B03)
monitor/2
port_info/2
process_flag/2
statistics/1
system_flag/2
system_info/1
trace_pattern/3
|
|
Fix typos in atomics.xml and counters.xml
|
|
When seq_trace:reset_trace could be called while a
process was doing a dirty GC. This triggered a race
where all signals was moved to the internal signal
queue during the GC which in turn caused the a heap
overrun problem.
This fix makes it so that the main and msgq lock are
taken before the clear. This will make sure that we
are allowed to do the clear.
|
|
|
|
The multiplication of two bignums is specially optimized when the two
operands have the same address, because squaring can be done more
efficiently than multiplication of two arbitrary integers. That is,
expressions such as `I * I` will be calculated by squaring the value
of `I`.
The optimized function for squaring would read one word beyond the
end of the bignum in the last iteration of a loop. The garbage
value would never be used. In almost all circumstances that would
be harmless. Only if the read word happened to fall on the start
of an unmapped page would the runtime crash. That is unlikely
to happen because most bignums are stored on a process heap, and
since the stack is located at the other end of the block that the
heap is located in, the word beyond the end of bignum is guaranteed
to be readable.
|
|
|
|
introduced after OTP_R13B03.
|
|
|