Age | Commit message (Collapse) | Author |
|
* sverk/fix-alloc-fixes:
erts: Remove unnecessary utf8 analysis step in external decoding
erts: Fix locking order violation for allocation wrappers
erts: Change locking order for "port_table" and "port_sched_lock"
erts: Adjust sizes for fix allocator
erts: Fix unabused bug in fixed allocation
erts: Fix benign size-bug for fix-allocators MONITOR_SH and NLINK_SH
erts: Refactor in new struct ErtsAllctrFixDDBlock_t
OTP-11085
|
|
* nox/fix-warnings/OTP-11086:
Fix some sign warnings found with Clang
Fix a shift/reduce conflicts warning in icparse
Fix two deprecation warnings in com.ericsson.otp.ic.Environment
Define matherr only on platforms where it is used
Properly declare _sigaction on Darwin
Properly mark Uint literals as unsigned in big.c
Do not use -mdynamic-no-pic on Darwin
|
|
* sverk/ets-test-cuddle:
stdlib: Make memcheck in ets_SUITE less sensitive
|
|
|
|
* nox/fix-epp-file-attrs/OTP-11079:
Fix an inconsistent state in epp
|
|
|
|
|
|
|
|
* nox/lists-filtermap/OTP-11078:
Rename and document lists:zf/2 as lists:filtermap/2
|
|
* fredrik/common_test/wait_for_linebreak_doc:
Added further doc
common_test: Added documentation for wait_for_linebreak option
|
|
* siri/cuddle-with-tests:
[jinterface] Extend timetrap timers in nc_SUITE and jinterface_SUITE
[jinterface] Set max heap size for jvm when running echo_server
[jinterface] Clean up hanging java nodes after each test case
|
|
This function is used all over the place in OTP itself and people
sometimes want that functionality, they may as well not reimplement it
themselves.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* as/fix-srp-psk-anon/OTP-11071:
fix srp_anon ciphers suites requiring certificates to work.
|
|
|
|
* nox/fix-multiple-ref-regs/OTP-11069:
Use a set to store ref registers in beam_receive
|
|
Latest OS X versions ignore this flag as non PIC objects are
discouraged.
|
|
When entering a new file, epp doesn't properly set #epp.name2 like it
does on initialisation, generating a malformed file attribute when it
leaves the file.
|
|
|
|
* pan/monitor_long_schedule:
Skip testcase on platforms w/o pipes/usleep
Add documentation for new system_monitor
Add long_schedule detection for ports and testcases
Add erlang:system_monitor(Pid,[{long_schedule,Millis}])
|
|
|
|
|
|
|
|
* peppe/common_test/ts_logfile_problems:
Fix error with refreshing logs when html util files are missing
Add correct footer to last run index page
Make test_server close log files properly and include correct footer
|
|
* sv-ttsl-valgrind:
Fix src/dest overlap in ttsl driver
fix valgrind error in erts/emulator/drivers/unix/ttsl_drv.c
OTP-11064
|
|
* hb/dialyzer/gui-bugfix/OTP-11057:
[dialyzer] Fix a bug concerning the --gui and --wx options
|
|
A bug that made it impossible to do any analyses from the GUI has been
fixed. The bug was introduced in dialyzer-2.5.2.
|
|
|
|
OTP-11046
|
|
|
|
The test cases nc_SUITE:decompress_roundtrip and
nc_SUITE:compress_roundtrip fails on some machines with
OutOfMemoryException. This commit sets the max heap size for the jvm
to 256M in nc_SUITE in order to get around this.
|
|
|
|
OTP-11046
|
|
* kt/fix-crypto-doc-typo:
crypto: Fix typo in documentation
OTP-11058
|
|
Running some valgrind memory checking showed the error below:
==18040== Thread 6:
==18040== Source and destination overlap in memcpy(0xf3f3f04, 0xf3f3f08, 52)
==18040== at 0x4C2CFA0: memcpy@@GLIBC_2.14 (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==18040== by 0x5CF527: del_chars (ttsl_drv.c:845)
==18040== by 0x5CED5E: ttysl_from_erlang (ttsl_drv.c:658)
==18040== by 0x4982E3: erts_write_to_port (io.c:1235)
==18040== by 0x49A2BD: erts_port_command (io.c:2223)
==18040== by 0x48C054: do_send (bif.c:1962)
==18040== by 0x48CB6E: erl_send (bif.c:2162)
==18040== by 0x566599: process_main (beam_emu.c:1665)
==18040== by 0x4B1A95: sched_thread_func (erl_process.c:4834)
==18040== by 0x6075E2: thr_wrapper (ethread.c:106)
==18040== by 0x5560E99: start_thread (pthread_create.c:308)
This occurred on Linux using R15B01 while the shell was emitting a prompt,
but the same problem is still present in R16B.
Change the memcpy on line 845 of ttsl_drv.c to memmove as valgrind
suggests. After the change, verify with valgrind that the error no longer
occurs.
|
|
|
|
|
|
* fredrik/ssh/unicode_adapt:
ssh: unicode adaptions
|
|
OTP-11046
|
|
|
|
* anders/diameter/mkdir_race/OTP-11051:
Fix mkdir race
|
|
In some circumstances, as when inlining code, when some optimization
passes are disabled or with hand-written but semantically correct Core
Erlang or BEAM assembly, a fresh reference may be live in more than one
register:
...
{allocate_zero,2,2}.
...
{call_ext,0,{extfunc,erlang,make_ref,0}}. % Ref in [x0]
...
{move,{x,0},{y,0}}. % Ref in [x0,y0]
{move,{y,1},{x,0}}. % Ref in [y0]
...
{move,{y,0},{x,0}}. % Ref in [x0,y0]
{move,{x,0},{y,1}}. % Ref in [x0,y0,y1]
{label,5}.
{loop_rec,{f,6},{x,0}}. % Ref in [y0,y1]
...
{loop_rec_end,{f,5}}.
{label,6}.
{wait,{f,5}}.
...
Pass beam_receive expects a single live register for the ref when it
encounters the loop_rec instruction and crashes with the following
reason:
$ erlc t.S
...
crash reason: {{case_clause,
{'EXIT',
{{case_clause,[{y,1},{y,0}]},
[{beam_receive,opt_recv,5,
[{file,"beam_receive.erl"},{line,154}]},
...]}}},
...}
This commit teaches beam_receive how to use a set of registers instead
of a single one when tracking fresh references, thus avoiding the crash.
|
|
|