Age | Commit message (Collapse) | Author |
|
* vinoski/dirty_process_main/OTP-13123:
Add dirty_process_main function
|
|
* rickard/ds-doc/OTP-13123:
minor fixes
|
|
* ingela/ssl/test-timeouts:
ssl: Increase timeouts due to slow test machines
|
|
|
|
Dirty schedulers only execute NIFs, so having them execute the full
process_main function isn't necessary. Add dirty_process_main for
dirty schedulers to execute instead.
Add erts_pre_dirty_nif(), called when preparing to execute a dirty
nif.
Add more dirty NIF tests to verify that activities requiring the
process main lock can succeed when the process is executing a dirty
NIF.
|
|
|
|
|
|
* bjorn/compiler/misc:
Eliminate unsafe use of Y registers
beam_validator: Add is_bitstring/1 as a safe BIF
beam_validator: Remove uncovered line
Teach beam_utils:is_pure_test/1 to handle is_bitstr and is_function2
beam_utils: Simplify handling of 'return' to eliminate uncovered line
beam_jump: Clean up handling of labels before func_info
beam_expect: Correctly handle blocks with multiple allocs
v3_codegen: Don't confuse beam_validator
v3_codegen: Correct code generation for an error/1 call in a guard
beam_receive: Don't crash when encountering nonsensical code
|
|
|
|
|
|
|
|
|
|
* Rewrite matching statements in ?when_option macro to form that silences
dialyzer's unmatched_return warnings
* Treat compiler warnings as errors when compiling files in main
|
|
|
|
|
|
|
|
|
|
|
|
|
|
and correct the name of another, erroneously spelt, option in the process.
|
|
|
|
|
|
* binarin/better-ssl-diagnostics/PR-1060/ERL-774/OTP-13632:
ssl: Remove error logger reports
ssl: Better error handling of keys rejected by crypto
Improve SSL diagnostics
|
|
We do not want error reports that can leek secret information
into the logs.
|
|
|
|
There are a lot of cases where `ssl` application just returns unhelpful
`handshake failure` or `internal error`. This patch tries to provide
better diagnostics so operator can debug his SSL misconfiguration
without doing hardcore erlang debugging.
Here is an example escript that incorrectly uses server certificate as a
client one:
https://gist.github.com/binarin/35c34c2df7556bf04c8a878682ef3d67
With the patch it is properly reported as an error in "extended key
usage".
|
|
* egil/erts/cuddle-tests:
stdlib: Fix small inconsistencies in ets_SUITE
stdlib: Strengthen or relax test cases
kernel: Don't test negative time values in file info
erts: Fix free_mem calculation in bs_construct tests
|
|
* origin/ingela/ssl/dtls-test-cuddle:
ssl: Fix TLS version handling in dtls adepted tests
|
|
* dgud/wx/fix-seqfault-in-cleanup:
wx: Fix occasional seq fault after appliction stops
|
|
|
|
|
|
Removed in f9cb80861f169743 when changed impl from C to Erlang.
But seems they are needed to keep dialyzer tests happy.
Also improved bif_SUITE:shadow_comments to include all exported
in module erlang, not just the "snifs".
...which detected that apply/2 was missing Shadowed comment as well.
|
|
* dgud/wx/quote-atoms-in-specs:
wx: Quote atoms in types and specs
|
|
* dgud/stdlib/relax-proc_lib-initial-call/OTP-13623:
Relax translation of initial calls
|
|
If the Core Erlang optimization were turned off (using no_copt),
the optimization passes for Beam assembly could generate unsafe
code that did not initialize all Y registers before (for example)
a call instruction.
To fix this, beam_dead should not attempt to remove stores to Y
registers. That is not safe if there is an exception-generating
instruction inside a try...catch block.
|
|
beam_validator wrongly complained that the following was
not safe because it didn't know that is_bitstring/1 is safe:
food(Curriculum) ->
[try
is_bitstring(functions)
catch _ ->
0
end, Curriculum].
While we are it, also add a new bif_SUITE test suite to cover some
more code in beam_validator.
|
|
The raise/3 instruction is specially handled, thus there is no need
for bif_type/3 to handle raise/3 (also, the number of arguments was
incorrect, so it could never have matched).
|
|
The 'is_bitstr' and 'is_function2' tests are pure. The corresponding BIFs
have different names; thus the default call to erl_internal:new_type_test/2
is not sufficient.
|
|
There seems to be a timeing dependent double delete when doing
reference cleanup after wx:destroy(). wxGraphicsObjects can thus not
be free'ed by wx in the cleanup phase. A guess is that the underlying
rendering context deletes all graphics objects without careeing about
wxWidgets reference counting.
|
|
|
|
* kostis/beam_disasm-entry-type/PR-1072:
Declare the type of function entry points
Export label() type
|
|
|
|
|
|
In particular, valgrind needs a lot of time for certain tests.
|
|
|
|
|
|
|
|
This shuts off compiler warnings and will allow to enable stronger
compiler checks files that include beam_disasm.hrl in the hipe
application.
While doing that, also modified a comment in the header file and
turned a case statement into effectively an assertion: there should
not really be any beam files where functions do not have a label as
entry point, right?
|
|
|
|
* egil/et/fix-unmatched_return/OTP-13595:
et: Fix unmatched return warnings
|