aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator
AgeCommit message (Collapse)Author
2019-06-13erts: Relax the constraint introduced in OTP-15871John Högberg
2019-06-12Handle addition of bignum + variable in unoptimized codeBjörn Gustavsson
Also handles code compiled by OTP 21 and earlier.
2019-06-12Merge branch 'raimo/incomplete-socket-close/ERIERL-353/OTP-15370' into maintRaimo Niskanen
* raimo/incomplete-socket-close/ERIERL-353/OTP-15370: Copy linger zero flag from listen socket Test linger zero flag from listen socket
2019-06-12Merge branch ↵Erlang/OTP
'sverker/erts/process-info-reductions-idle-proc/ERL-964/OTP-15865' into maint-22 * sverker/erts/process-info-reductions-idle-proc/ERL-964/OTP-15865: erts: Improve test of process_info(reductions) Revert "erts: Force process_info(reductions) as signal"
2019-06-12Merge branch 'sverker/erts/break-p-segv/ERL-965/OTP-15873' into maint-22Erlang/OTP
* sverker/erts/break-p-segv/ERL-965/OTP-15873: erts: Fix SEGV crash on shell break (p)roc info
2019-06-11Merge branch 'john/erts/fix-bad-get_tuple_element-opt/OTP-15871/ERIERL-374' ↵John Högberg
into maint * john/erts/fix-bad-get_tuple_element-opt/OTP-15871/ERIERL-374: erts: Fix bad loader optimization of get_tuple_element
2019-06-10Merge branch 'sverker/erts/hipe-arm-freebsd-clear-cache/ERL-958' into maintSverker Eriksson
OTP-15874 PR-2266 * sverker/erts/hipe-arm-freebsd-clear-cache/ERL-958: erts: Fix hipe_flush_icache_range for FreeBSD on ARM
2019-06-10erts: Fix hipe_flush_icache_range for FreeBSD on ARMSverker Eriksson
Avoid old Linux specific syscall assembler if we can.
2019-06-10Merge branch ↵Sverker Eriksson
'sverker/erts/process-info-reductions-idle-proc/ERL-964/OTP-15865' into maint * sverker/erts/process-info-reductions-idle-proc/ERL-964/OTP-15865: erts: Improve test of process_info(reductions) Revert "erts: Force process_info(reductions) as signal"
2019-06-10erts: Improve test of process_info(reductions)Sverker Eriksson
to provoke case when the main lock is released during execution.
2019-06-10Merge branch 'sverker/erts/break-p-segv/ERL-965/OTP-15873' into maintSverker Eriksson
* sverker/erts/break-p-segv/ERL-965/OTP-15873: erts: Fix SEGV crash on shell break (p)roc info
2019-06-10erts: Fix bad loader optimization of get_tuple_elementJohn Högberg
The following sequence would be wrongly optimized into a i_get_tuple_element2 instruction, reading an element from the wrong tuple: {get_tuple_element,{x,0},1,{x,0}}. {get_tuple_element,{x,0},2,{x,1}}.
2019-06-04erts: Fix SEGV crash on shell break (p)roc infoSverker Eriksson
esdp==NULL if run by non scheduler thread.
2019-06-04erts: Fix {active,N} close race condition on windowsLukas Larsson
When a close is detected on windows, we need to keep track of it as it will not trigger again.
2019-06-04Revert "erts: Force process_info(reductions) as signal"Sverker Eriksson
This reverts commit 70dbf671a8196110d2aee2e7507afc2c2c75183f. As the comment of 70dbf671a8 itself indicates, that "fix" is not really necessary. It has, however, the bad effect of always consuming reductions of the process you want to know reduction from, that is you can't meassure reduction count without affecting it.
2019-06-04[esock] Add pattern to socket descriptorMicael Karlberg
Add a pattern field to the (beginning of the) socket descriptor. To make it more easy to spot memory over-writes. One pattern for create and one for dtor. Also reset various fields of the descriptor at dtor.
2019-06-04[esock] Post rebase cleanupMicael Karlberg
Rebase (on maint as of 20190529) resulted in a number of issues. Mostly in the (esock) test suite. OTP-15731
2019-06-03Return real pend value in erlang:dist_get_stat/1Loïc Hoguin
Only the dist_util code is using this function and it already is compatible with a non-boolean value.
2019-05-29[esock|test] Fixed a ttest scriptMicael Karlberg
The script used the wrong variable for active (async).
2019-05-29[esock] Found and fixed some weirdness on darwinMicael Karlberg
Tests on Darwin Kernel Version 18.2.0 reveled some problems handling connect (on that platform). It seems that calling connect the second time is not needed (it results in eisconn), so we needed to handle that case, which we now do.
2019-05-29[esock] Types and cleanupMicael Karlberg
Changed tag type tpo opaque. Also added connect (monitor and process) cleanup. OTP-15731
2019-05-29[esock] Connect can now also take a nowait TimeoutMicael Karlberg
Had forgot about the connect function. But it can now also handle the Timeout = nowait, maybe resulting in a select. Required some nif work also... OTP-15731
2019-05-29[esock|test] Attempt to create a ttest reportMicael Karlberg
Attempted to implement a common report function for the time test (ttest). Not complete.
2019-05-29[esock|test] Fixed async ttestMicael Karlberg
Updated the ttest test(s) to handle async properly. OTP-15731
2019-05-29[esock] Changed return value for a selected async callMicael Karlberg
The return value for an async call (Timeout = nowait) will now (normally) result in a {select, SelectInfo} instead (if a select was performed). OTP-15731
2019-05-29[esock|test] Add multi async recv and recvmsg TCP test case(s)Micael Karlberg
Add recv and recvmsg test case testing the abort message received when "another" process closes a socket. Multiple readers for good measure.
2019-05-29[esock|test] Add multi async accept TCP test caseMicael Karlberg
Add accept test case testing the abort message received when "another" process closes a socket. Multiple accept(ors) for good measure.
2019-05-29[esock|test] Add multi async recvmsg UDP test caseMicael Karlberg
Add recvmsg test case testing the abort message received when "another" process closes a socket. Multiple readers for good measure.
2019-05-29[esock|test] Add multi async recvfrom UDP test caseMicael Karlberg
Add recvfrom test case testing the abort message received when "another" process closes a socket. Multiple readers for good measure.
2019-05-29Merge branch 'sverker/seq-trace-label-old-heap-bug/ERL-700/OTP-15849' into maintSverker Eriksson
* sverker/seq-trace-label-old-heap-bug/ERL-700/OTP-15849: erts: Fix faulty spec for seq_trace:set_token/2 erts: Fix seq_trace:print/2 for arbitrary labels erts: Fix bug in seq_trace:set_token(label,_)
2019-05-29[socket|test] Add async to ttestMicael Karlberg
Make it possible for the tttest server to run with async.
2019-05-29[socket] Add recvmsg(nowait) cancel on tcp test caseMicael Karlberg
Add the recvmsg(nowait) cancel for tcp IPv4 test cases.
2019-05-29[socket] Add recv(nowait) cancel on tcp test caseMicael Karlberg
Add the recv(nowait) cancel for tcp IPv4 test cases.
2019-05-29[socket] Add accept(nowait) cancel test caseMicael Karlberg
Add the accept(nowait) cancel test cases. Also fixed some timetrap times.
2019-05-29[socket] Add recvmsg(nowait) cancel test caseMicael Karlberg
Add the recvmsg(nowait) cancel test cases.
2019-05-29[socket] Add cancel and the first recvfrom(nowait) cancel test caseMicael Karlberg
Add the (public) cancel function and the first of the cancel test cases (recvfrom(nowait)).
2019-05-29[socket] Add nowait test case (sendmsg and recvmsg tcp4)Micael Karlberg
Added test case api_a_sendmsg_and_recvmsg_tcp4.
2019-05-29[socket] Add nowait test case (send and recv tcp4)Micael Karlberg
Added test case api_a_send_and_recv_tcp4.
2019-05-29[socket] Add nowait test case (sendmsg and recvmsg udp4)Micael Karlberg
Added test case api_a_sendmsg_and_recvmsg_udp4.
2019-05-29[socket] First nowait test case (sendto and recvfrom udp4)Micael Karlberg
Added test case api_a_sendto_and_recvfrom_udp4. Also, fixed duplicate spec.
2019-05-29[esock|test] Add condition for running ping pong test caseMicael Karlberg
Add condition for running the large ping-pong sendmsg/recvmsg test case. Also add a limit to the path creation (max number of tries). OTP-15822
2019-05-29[esock|ttest] Make it possible use local for ttestMicael Karlberg
Make Unix Domain (stream) socket work with the ttest command line tool (for esock server and client). OTP-15822
2019-05-29[esock|ttest] Updated the ttest command line toolMicael Karlberg
Updated the ttest command line tool to the new API. OTP-15822
2019-05-29[esock|test] Skip some test cases on old linux(s)Micael Karlberg
OTP-15822
2019-05-29[esock] Make sure AF_LOCAL exist before usingMicael Karlberg
Add if-def for AF_LOCAL before using the flag. OTP-15822
2019-05-29[esock|test] Try even harder to make unique pathMicael Karlberg
Some (Unix Domain socket) test cases fails because the path (supposedly) already existed on a (admittedly old) gento VM. So, we try enen harder to ensure that the path is unique... OTP-15822
2019-05-29[esock|test] Fixed host cond testMicael Karlberg
Incorrect host condition test for linux (the api timeout connect test cases). OTP-15822
2019-05-29[esock|test] Skip Unix Domain stream test case on Open IndianaMicael Karlberg
On OpenIndiana Hipster on a Unix Domain stream socket it may be possible to set a *large* recv buffer size, that will actually not work. So, to avoid issues, simply skip the traffic_ping_pong_large_send_and_recv_tcpL on that platform. OTP-15822
2019-05-29[esock|test] On some platforms recvmsg does *not* return addressMicael Karlberg
On some platforms, e.g. FreeBSD, recvmsg does *not* return address for a Unix Domain (stream) socket. Unlike, for instance, on Linux. OTP-15822
2019-05-29[esock] Fixed check domain local and specsMicael Karlberg
Fixed the spec's for function open/3,4. Also, corrected the test for retreiving resulting protocol when performing open with proto = 0 (default) and domain is not local. Local may not be defined on all platforms. OTP-15822