Age | Commit message (Collapse) | Author |
|
* maint:
ssh: Add local .gitignore in lib/ssh/test
|
|
* hans/ssh/gitignore:
ssh: Add local .gitignore in lib/ssh/test
|
|
|
|
* maint:
Updated OTP version
Prepare release
|
|
* maint-20:
Updated OTP version
Prepare release
|
|
* maint:
Fix erts_internal_ref_number_cmp()
|
|
* rickard/internal_ref_cmp/OTP-15399/ERL-751:
Fix erts_internal_ref_number_cmp()
|
|
|
|
|
|
* rickard/internal_ref_cmp/OTP-15399/ERL-751:
Fix erts_internal_ref_number_cmp()
|
|
Even more scalable ETS ordered_set with write_concurrency
|
|
|
|
`beam_jump` could remove a `put_tuple` instruction when the
tuple would not be used, but it would leave the following
`put` instructions. Make sure they are removed.
https://bugs.erlang.org/browse/ERL-759
|
|
to provoke iteration over a moving ordered_set with write_concurrency
and make sure we hit all "stable" keys.
|
|
to generate a routing tree with keys that fit each test case.
|
|
* maint:
fix extra parameter in <type>
Update profiling.xml
Fix docs on gen_event optional callback
|
|
Fix typos
|
|
|
|
Update profiling.xml
|
|
fix extra parameter in <type>
|
|
The `beam_except` pass replaces some calls to `erlang:error/1` or
`erlang:error/2` with specialized instructions in order to reduce the
size of the BEAM code.
In functions that do binary matching, `beam_except` would fail to
translate the instructions that generate a `function_clause`
exception. Here is an example:
bsum(<<H:16,T/binary>>, Acc) ->
bsum(T, Acc+H);
bsum(<<>>, Acc) ->
Acc.
The BEAM code that generates the `function_clause` exception looks
like this:
{label,4}.
{test_heap,2,3}.
{put_list,{x,1},nil,{x,1}}.
%% The following two instructions prevents the translation.
{bs_set_position,{x,2},{x,0}}.
{bs_get_tail,{x,2},{x,0},3}.
{test_heap,2,2}.
{put_list,{x,0},{x,1},{x,1}}.
{move,{atom,function_clause},{x,0}}.
{line,...}.
{call_ext,2,{extfunc,erlang,error,2}}.
Make the translation of `function_clause` exceptions smarter, so
that the following code will be produced:
{label,4}.
{bs_set_position,{x,2},{x,0}}.
{bs_get_tail,{x,2},{x,0},3}.
{jump,{f,1}}. %Jump to `func_info` instruction.
(This issue was noticed when looking at the code generated by
https://github.com/tomas-abrahamsson/gpb.)
|
|
Fix docs on gen_event optional callback
|
|
Correct a spelling mistake in doc-build.xml.
|
|
```erlang
Position = integer()
```
Parameter doesn't exist in `read/3,4`
|
|
hipe: Cleanup and fix specs of the hipe module
|
|
Introudce erts_queue_release_literals() to queue a literal area to be
released.
|
|
* maint:
ssh: Enable property_test/ssh_eqc_client_server for PropEr
ssh: Used fixed localhost address
ssh: Fix reporting functions in property_test/ssh_eqc_client_server.erl
ssh: Fix property_test/ssh_eqc_client_info_timing.erl
|
|
* hans/ssh/convert_to_proper/OTP-15312:
ssh: Enable property_test/ssh_eqc_client_server for PropEr
ssh: Used fixed localhost address
ssh: Fix reporting functions in property_test/ssh_eqc_client_server.erl
ssh: Fix property_test/ssh_eqc_client_info_timing.erl
|
|
PropEr does not support the grouped statem-tests. This commits
calls the grouped functions from the functions supported by PropEr.
Optimized with memoization.
Previously only EQC was supported, but the changes to support PROPER is not
just a wrapper. Since I don't have access to eqc I can't test the changes
and therefore eqc is disabeled.
However, with access to eqc it ought to be quite easy to re-enable eqc by
studying the diff.
|
|
Problem on Darwin, Solaris and FreeBSD with local addresses in 127.1.0.0/8
|
|
|
|
Had problems on Darwin, Solaris and FreeBSD.
|
|
* maint:
Updated OTP version
Prepare release
|
|
* maint-18:
Updated OTP version
Prepare release
|
|
|
|
Fix run_erl.c so it compiles on Solaris
|
|
|
|
Fix the default implementation of address_please
|
|
|
|
* jimdigriz/os_mon/fix_cpu_sup_android/OTP-15387:
Make Erlang's cpu_sup function better on Android
SELinux is another cause of MSG_CTRUNC
|
|
The removal set now uses a red-black tree instead of an array on
large inputs, decreasing runtime complexity from `n*n` to
`n*log(n)`. It will also exit early when there are no more items
left in the removal set, drastically improving performance and
memory use when the items to be removed are present near the head
of the list.
This got a lot more complicated than before as the overhead of
always using a red-black tree was unacceptable when either of the
inputs were small, but this compromise has okay-to-decent
performance regardless of input size.
Co-authored-by: Dmytro Lytovchenko <[email protected]>
|
|
Caught with unit test in ssl_pem_cache_SUITE.
When local timezone is PST (Pacific Standard Time), PEM cache was not evicting
expired entries due to file time converstion was done using
calendar:now_to_datetime, while file modification time is actually in local time.
Use os:system_time() to align with file_info modified time.
|
|
|
|
|
|
maint-18
* sverker/erts/18/memory-leak-terminating-port/OTP-14609:
erts: Fix memory leak when sending to terminating port
|
|
We no longer lock more than one base node at a time.
We do however trylock a second base node at join.
|
|
for different lock instances.
|
|
|
|
The original implementation did not do this due to fear of bad
performance. But we think the negative effect of "leaking" empty
base nodes is more important to fix.
To get the bad performance a special kind of access patterns is
needed where base nodes are frequently emptied and then repopulated
soon again. ets_SUITE:throughput_benchmark for example did not show
any negative effect from this commit at all.
|
|
This greatly increases the performance of '--'/2 which does a lot
of term comparisons.
|