Age | Commit message (Collapse) | Author |
|
|
|
|
|
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
|
|
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.
|
|
We only do this when the user has explicitly told us it's okay to
partially disable mitigation (spectre-mitigation=incomplete). The
macro is inert if it isn't.
|
|
Note that the ERTS_NO_RETPOLINE macro introduced by this commit is
completely inert unless spectre-mitigation is set to 'incomplete.'
This includes when mitigation has been manually enabled through
CFLAGS, so it should be impossible for it to unintentionally
disable mitigation.
|
|
|
|
|
|
maint-19
* hans/eldap/prevent_EXIT_at_close/OTP-15342/ERIERL-242:
eldap: Fix race at socket close
|
|
|
|
|
|
|
|
|
|
maint-19
* sverker/erts/19/memory-leak-terminating-port/OTP-14609:
erts: Fix memory leak when sending to terminating port
|
|
Cherry-picked from 7c5fcd3f2701cbb614930682ac52ff75b9c26e6c.
Error: Leak_DefinitelyLost
erts_alloc:230 (-> 0x52E54D) [erl_alloc.h]
port_task_alloc:154 (-> 0x52F3CA) [erl_port_task.c]
erts_port_task_alloc_p2p_sig_data:212 (-> 0x52F5D3) [erl_port_task.c]
erts_port_output:2147 (-> 0x4F6057) [io.c]
erts_port_command:4126 (-> 0x4FA10E) [io.c]
do_send:2200 (-> 0x4E4C64) [bif.c]
erl_send:2494 (-> 0x4E5E09) [bif.c]
process_main:1730 (-> 0x43ADA5) [beam_emu.c]
|
|
|
|
|
|
|
|
maint-19
* hasse/syntax_tools/fix_map_type/OTP-15098/ERIERL-177:
syntax_tools: Fix a bug regarding reverting map types.
|
|
* john/erts/inet-drv-race/OTP-15158/ERL-654:
Fix a race condition when generating async operation ids
|
|
* dotsimon/ref_ordering_bug/OTP-15225:
Fixed #Ref ordering bug
Test #Ref ordering in lists and ets
|
|
|
|
|
|
|
|
The counter used for generating async operation ids was a plain int
shared between all ports, which was incorrect but mostly worked
fine since the ids only had to be unique on a per-port basis.
However, some compilers (notably GCC 8.1.1) generated code that
assumed that this value didn't change between reads. Using a
shortened version of enq_async_w_tmo as an example:
int id = async_ref++;
op->id = id; //A
return id; //B
In GCC 7 and earlier, `async_ref` would be read once and assigned
to `id` before being incremented, which kept the values at A and B
consistent. In GCC 8, `async_ref` was read when assigned at A and
read again at B, and then incremented, which made them inconsistent
if we raced with another port.
This commit fixes the issue by removing `async_ref` altogether and
replacing it with a per-port counter which makes it impossible to
race with someone else.
|
|
|
|
|
|
* hans/ssh/reneg_bug_19/OTP-15066:
ssh: Renegotiation -> renegotiate
|
|
* hans/ssh/dh_gex_putty_19/OTP-15064:
ssh: Fix DH group exchange server bug for PuTTY and others following draft-draft-00 from 2001 and not the rfc4419
|
|
* hans/ssh/server_exit_normal_exit_19/OTP-15018:
ssh: Fix server crashes for exit-normal signals
|
|
|
|
and others following draft-draft-00 from 2001 and not the rfc4419
|
|
|
|
|
|
|
|
* hans/ssh/sftpd_rm_dir_err_19/OTP-15004:
ssh: Fix ssh_sftpd:handle_op not returning State
|
|
|
|
|
|
|
|
* sverker/maint-19/os-cmd-2/OTP-14823:
kernel: Fix os_SUITE:max_size_command for OTP-19
kernel: Fix handling of os:cmd option max_size in win
kernel: Add os:cmd/2 with max_size option
|
|
where string:trim does not exist.
|
|
git cherry-pick 75b0f73f72e1783d4ace976cdd2b5f23bdc3ebae
|
|
git cherry-pick 55e929c4ed5cd854038c18697123ea94948ebf35
|
|
|
|
|
|
* ingela/ssl/PR-1709/OTP-14929:
ssl: Prepare for release
ssl: Backport PR-1709
|
|
* hans/ssh/execfix19/OTP-14881:
ssh: Fix cli
ssh: Test for disabled shell
|
|
|
|
|