Age | Commit message (Collapse) | Author |
|
* lukas/erts/fix_init_stop_code_load_race/OTP-13802:
erts/kernel: Fix code loading deadlock during init:stop
|
|
When init:stop is called it walks the application hierarchy
and terminates each process. Some of these processes may do
something while terminating and sometimes that something
needs to load some new code in order to work. When this happens
the code_server could just be in the process of terminating
or the erl_prim_loader could be active. In both these cases
the request to load the new code would cause a deadlock in the
termination of the system.
This commit fixes this by init rejecting attempts to load new code
when init:stop has been called and fixing a termination race in
the code_server.
This however means that the process that tried to do something
when told to terminate (for instance logging that it is terminating)
will crash instead of loading the code.
|
|
* binarin/even-more-absolute-paths/PR-1103/OTP-13800:
Use perl discovered by configure
Don't make assumptions about build tools paths
|
|
|
|
Conflicts:
lib/ssl/src/ssl.appup.src
|
|
|
|
* lukas/kernel/fix_os_cmd_background_compat/OTP-13741:
kernel: Use ^D as eot for os:cmd on unix platforms
|
|
* raimo/ssl/version-selection/maint-19/OTP-13753:
Improve version selection
|
|
This is needed as doing only an 'exit' will only exit the
program, but any children started in the program that have
stdout/stderr still open will keep the port open until they
terminate. i.e.
os:cmd("while true; do echo sleep 1; sleep 1; done&").
would block os:cmd forever because the while loop keeps its copies
of stdout/stderr open forever.
It could be argued that this is correct behaviour, and it is
the way it works on windows, but changing this breaks backwards
compatability for os:cmd which is not acceptable.
|
|
|
|
|
|
|
|
Change it to { Input :: string() | undefined, Body :: string() }
|
|
|
|
into maint
* duncaen/crypto/fix-algo_cipher-array-size/PR-1140/OTP-13789:
Fix segfault in crypto by increasing algo_cipher array
|
|
* bjorn/compiler/not_live/ERL-202/OTP-13780:
beam_block: Fix potentially unsafe optimization in move_allocates/1
|
|
beam_block has an optimization that only is safe when it is applied
immediately after code generation. That is pointed out in a comment:
NOTE: Moving allocation instructions is only safe because it is done
immediately after code generation so that we KNOW that if {x,X} is
initialized, all x registers with lower numbers are also initialized.
That assumption may not be true after other optimizations, such as
the beam_utils:live_opt/1 optimization.
The new beam_reorder pass added in OTP 19 runs before beam_block.
Therefore, the optimization is potentially unsafe. The optimization
is also unsafe if compilation is started from assembly code in a
.S file.
Rewrite the optimization to make it safe. See the newly added comment
for details.
ERL-202
|
|
* elbrujohalcon/dialyzer/fix-spec/PR-1134/OTP-13786:
Improve format_warning/1 spec
|
|
maint
* ellbee/odbc/configure-OS-X-El-Capitan/PR-1137/OTP-13781:
Make ODBC configure handle OS X El Capitan
|
|
|
|
maint
* efine/inets/validate-inet6fb4/ERL-200/PR-1132/OTP-13776:
Test inet6fb4 in basic suite
Actually verify result of testcase
Fix inets_sup_SUITE for local tests
Add test for inet6fb4 validation
Fix httpd_conf:validate_properties/1 for ipfamily
|
|
* comtihon/fprof/fix-gc-tags/PR-1136/OTP-13778:
fix gc_start\end bug
|
|
* 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
|
|
|
|
Change ODBC configure.in script to recognize OS X El Capitan (Darwin v15.x)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Let it handle `dial_warning()` input as well, to match what `format_warning/2` expects.
|
|
* okumin/kernel/remove-duplicated-line/PR-1119/OTP-13771:
Remove a duplicated pattern matching in erl_epmd.erl
|
|
maint
* lemenkov/kernel/fix-register_ipv6_epmd/PR-1129/OTP-13770:
Respect -proto_dist switch while connection to EPMD
|
|
Conflicts:
OTP_VERSION
erts/doc/src/notes.xml
erts/vsn.mk
lib/common_test/doc/src/notes.xml
lib/common_test/vsn.mk
lib/ssl/doc/src/notes.xml
lib/ssl/src/ssl.appup.src
lib/ssl/vsn.mk
lib/stdlib/test/ets_SUITE.erl
otp_versions.table
|
|
inets:start/2 fails when using the legacy option inet6fb4 with a
configuration proplist. It is not translated to inet as documented.
This breaks existing code that relies on the documented behavior.
This commit fixes the issue by translating inet6fb4 everywhere it is
encountered in httpd_conf:validate_properties/1.
From inets documentation (http://erlang.org/doc/man/httpd.html):
{ipfamily, inet | inet6}
Default is inet, legacy option inet6fb4 no longer makes sense
and will be translated to inet.
Fixes ERL-200.
|
|
|
|
* raimo/ssl/version-selection/maint-18/OTP-13753:
Improve version selection
|
|
* peppe/ct_telnet_duplicated_lines/OTP-13730:
Fix error with duplicated printouts by ct_telnet:expect/3
|
|
OTP-13730
|
|
'imrivera/kernel/fix-code_server-crash/ERL-194/PR-1128/OTP-13765' into maint
* imrivera/kernel/fix-code_server-crash/ERL-194/PR-1128/OTP-13765:
Fix code_server crash when adding some code paths ERL-194
|
|
raimo/ssl/version-selection/maint-19/OTP-13753
Conflicts:
lib/ssl/vsn.mk
lib/ssl/src/ssl.appup.src
|
|
Use the list of versions that the server allows and among those choose
the highest version that is not higher than the client's version.
Note that this chosen version might be lower than the client's version,
but is used to improve interoperability.
Patch suggested by Dimitry Borisov refering to RFC 5246 appendix E.1.
|
|
'raimo/stdlib/gen_statem-types-and-templates/ERL-172_ERL-187/OTP-13746' into maint
* raimo/stdlib/gen_statem-types-and-templates/ERL-172_ERL-187/OTP-13746:
Fix type and template errors from bugs.erlang.org: ERL-172 and ERL-187
|
|
|
|
Signed-off-by: Peter Lemenkov <[email protected]>
|
|
|
|
|
|
|
|
maint-19
* egil/compiler/fix-literal-binary-match/ERL-190/OTP-13738:
Update primary bootstrap
Revert "beam_dead: Improve optimization of literal binary matching"
compiler: Test literal binary matching
|