aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/test
AgeCommit message (Collapse)Author
2019-02-22[socket|test] Some improvements to (esock) ttestMicael Karlberg
Add a quiet mode for ttest which is used when running in a (terminal) shell. Moved the esock-ttest script(s) into their own directory. Minor improvements to the (client) result printout. Also fixed copyright (end) dates. OTP-14831
2019-02-22[socket] Local address on macOS MojaveMicael Karlberg
Fixed how to figure out local address on macOS Mojave. OTP-14831
2019-02-04Merge branch 'bmk/20180918/nififying_inet/OTP-14831' into ↵Micael Karlberg
bmk/20190204/socket_as_nif/OTP-14831
2019-01-30[socket-nif] Preliminary windows adaptionsMicael Karlberg
Added preliminary, and temporary, windows adaptions. Basically they amount to letting all nif-callback functions returning badarg for all calls if on windows (this has been accomplished by if-defing the nif-code; if win32 then badarg else do-something). OTP-15526
2019-01-29[socket-nif] The otp rcvbuf option updatedMicael Karlberg
Its now possible to set a rcvbuf (otp) option value of {N :: pos_integer(), BufSz :: pos_integer()}. This value is used for type stream and protocol tcp, when calling the function recv with length = 0 (zero). The second value, BufSz, is the actual size of the receive buffer used when calling the socket recv function, and the first value, N, is the max number of possible reads that will be performed (at most), even if there is more data to read. This is limit the effect of DoS attacks. OTP-15497
2019-01-25[socket-nif] Correct state checks when calling read and write functionsMicael Karlberg
The read and write functions now *only* use the isReadable and isWritable fields, respectively, to decide if the "socket" can be read from and written to (previously the state field was used outside of the mutex lock). Also made it possible to enable / disable test suite groups individually, via environment variables (ESOCK_TEST_...). Specifically, the ttest group has been excluded by default (takes to long a time). OTP-15549
2019-01-24Merge pull request #2100 from jhogberg/john/compiler/module-type-optimizationJohn Högberg
Apply type optimizations across local function calls
2019-01-24compiler: Introduce module-level type optimizationJohn Högberg
This commit lets the type optimization pass work across functions, tracking return and argument types to eliminate redundant tests.
2019-01-23Merge branch 'bjorn/erts/optimize-is_function2'Björn Gustavsson
* bjorn/erts/optimize-is_function2: Optimize the is_function/2 guard test
2019-01-23Merge branch 'maint'Lukas Larsson
2019-01-23Merge branch 'lukas/erts/scheduler-pollset-fixes/OTP-15538' into maintLukas Larsson
* lukas/erts/scheduler-pollset-fixes/OTP-15538: erts: Fix getting of poll events on linux >= 4.15.0 erts: Use reduction based polling for starved poll-set erts: Fix pollset test cases
2019-01-21[socket-nif] Add support for otp option fdMicael Karlberg
Add a way to *get* the file descriptor (fd) of a socket. Useful mostly for debugging. OTP-15528
2019-01-21Optimize the is_function/2 guard testBjörn Gustavsson
The is_function2 instruction is executed surprisingly frequently when running dialyzer or the compiler. It cannot hurt to optimize it a little.
2019-01-18Merge pull request #2055 from ↵Lukas Larsson
josevalim/jv-no-bin-alloc-on-empty-append/OTP-15535 Do not allocate new bitstring/binary on empty append
2019-01-15Merge branch 'maint'Lukas Larsson
2019-01-15Merge branch 'lukas/erts/spawn_opt_max_heap_tc_fix' into maintLukas Larsson
* lukas/erts/spawn_opt_max_heap_tc_fix: erts: Fix process_SUITE:max_heap tests
2019-01-15Merge branch 'maint'Lukas Larsson
Conflicts: erts/emulator/beam/bif.c erts/preloaded/ebin/erlang.beam erts/preloaded/ebin/erts_internal.beam erts/preloaded/ebin/prim_file.beam
2019-01-10erts: Add erlang:system_flag(system_logger,_)Lukas Larsson
This flag allows logger and other components to set the process which log messages from ERTS are to be sent.
2019-01-10Merge branch 'maint'John Högberg
* maint: Implement integer_to_list/2 and integer_to_binary/2 as CIFs Accept base in all integer-printing functions Document cleanup semantics for atomics and counters
2019-01-10Accept base in all integer-printing functionsStanislav Mayorov
2019-01-09Do not allocate new bitstring/binary on empty appendJosé Valim
2019-01-07Merge PR-2084 from sverker/erts/enif_select-custom-msg OTP-15349Sverker Eriksson
Custom message format for enif_select
2019-01-07erts: Fix process_SUITE:max_heap testsLukas Larsson
Make sure to flush all queued emulator logger messages before starting the test. The trap_exit_badarg could sometimes leave messages and since the handler and messages now are handled in different processes this becomes a problem.
2019-01-07Merge branch 'maint'Lukas Larsson
2019-01-07erts: Add enif_select_read|write with 'msg_env' argumentSverker Eriksson
2019-01-07erts: Fix pollset test casesLukas Larsson
2018-12-21[socket-nif|test] Add simple (escript) wrapper for ttestMicael Karlberg
Add a simple wrapper script for the socket ttest program(s). Intended to be used when running a performance test in a standard shell (bash). OTP-14831
2018-12-21[socket-nif|test] Adjusten runtime of test cases of group ttestMicael Karlberg
It took "forever" to run the ttest test cases, so the runtime of these have been adjusted down to 10 seconds (from 60 seconds). OTP-14831
2018-12-21[socket-nif|test] Buffer set and adjusted traffic ping-pong iterationsMicael Karlberg
Handle (rcv and snd) buffer set failure. The number of iterations (message exchanges) that the traffic ping-cases has been adjusted down (by a factor of 10). Also, improve skip'ing. OTP-14831
2018-12-21erts: Fix persistent_term testcasesLukas Larsson
2018-12-21[socket-nif|test] Updated test case api_b_open_and_closeMicael Karlberg
The test case tried to validate the (socket option) protocol, which is not actually available on OpenBSD. So, add a check if the option is supported. OTP-14831
2018-12-20erts: Add ERL_NIF_SELECT_CUSTOM_MSGSverker Eriksson
2018-12-20[socket-nif|test] ttest groupingsMicael Karlberg
2018-12-19[socket-nif|test] Add more ttest (socket) test casesMicael Karlberg
Added a number of ttest test cases with transport socket. Server with transport = socket(tcp), active = true and client using transport = socket(tcp) (and active = false, once and true). OTP-14831
2018-12-19[socket-nif|test] Add more ttest (socket and gen_tcp) test casesMicael Karlberg
Added a number of ttest test cases with transport socket and gen_tcp. Server with transport = socket(tcp), active = true and client using transport = gen_tcp (and active = false, once and true). OTP-14831
2018-12-19[socket-nif|test] Add more ttest (socket) test casesMicael Karlberg
Added a number of ttest test cases with transport socket. Server with transport = socket(tcp), active = once and client using transport = socket(tcp) (and active = false, once and true). OTP-14831
2018-12-19[socket-nif|test] Add more ttest (socket and gen_tcp) test casesMicael Karlberg
Added a number of ttest test cases with transport socket and gen_tcp. Server with transport = socket(tcp), active = once and client using transport = gen_tcp (and active = false, once and true). OTP-14831
2018-12-19[socket-nif|test] Add more ttest (socket) test casesMicael Karlberg
Added a number of ttest test cases with transport socket. Server with transport = socket(tcp), active = false and client using transport = socket(tcp) (and active = false, once and true). OTP-14831
2018-12-19[socket-nif|test] Add more ttest (socket and gen_tcp) test casesMicael Karlberg
Added a number of ttest test cases with transport socket and gen_tcp. Server with transport = socket(tcp), active = false and client using transport = gen_tcp (and active = false, once and true). OTP-14831
2018-12-19[socket-nif|test] Add more ttest (gen_tcp and socket) test casesMicael Karlberg
Added a number of ttest test cases with transport gen_tcp and socket. Server with transport = gen_tcp, active = true and client using transport = socket(tcp) (and active = false, once and true). OTP-14831
2018-12-19[socket-nif|test] Add more ttest (gen_tcp) test casesMicael Karlberg
Added a number of ttest test cases with transport gen_tcp. Server with transport = gen_tcp, active = true and client using transport = gen_tcp (and active = false, once and true). OTP-14831
2018-12-19[socket-nif|test] Add more ttest (gen_tcp and socket) test casesMicael Karlberg
Added a number of ttest test cases with transport gen_tcp and socket. Server with transport = gen_tcp, active = once and client using transport = socket(tcp) (and active = false, once and true). Also fixed a counting error in the server (forgot to include the header, 16 bytes, in the byte count). OTP-14831
2018-12-19[socket-nif|test] Add more ttest (gen_tcp) test casesMicael Karlberg
Added a number of ttest test cases with transport gen_tcp. Server with transport = gen_tcp, active = once and client using transport = gen_tcp (and active = false, once and true). Also a bit of client and server cleanup (remove and cleanup up some printouts). OTP-14831
2018-12-19[socket-nif|test] Add more ttest (gen_tcp and socket) test casesMicael Karlberg
Added a number of ttest test cases with transport gen_tcp and socket. Server with transport = gen_tcp, active = false and client using transport = socket(tcp) (and active = false, once and true). Also a bit of "grouping". OTP-14831
2018-12-18[socket-nif|test] Add more ttest (gen_tcp) test casesMicael Karlberg
Added a number of ttest test cases with transport gen_tcp. Server with transport = gen_tcp, active = false and client using transport = gen_tcp (and active = false, once and true). Also "fixed" the gen_tcp socket buffer size (default size was way to small for the "large" messages). OTP-14831
2018-12-18Merge branch 'maint'Sverker Eriksson
2018-12-18Merge branch 'sverker/big-band-bug/ERL-804/OTP-15487' into maintSverker Eriksson
* sverker/big-band-bug/ERL-804/OTP-15487: erts: Fix bug in 'band' of two negative numbers, one big
2018-12-18Merge branch 'sverker/fix-atomics-get-large-unsigned/PR-2061/OTP-15486' into ↵Sverker Eriksson
maint * sverker/fix-atomics-get-large-unsigned/PR-2061/OTP-15486: erts: Fix possible heap corruption getting atomics
2018-12-18[socket-nif|test] Add test case based on the ttest modulesMicael Karlberg
Added a (first) test case based on the ttest modules. OTP-14831
2018-12-18Make length/1 yieldingBjörn Gustavsson
The guard BIF `length/1` would calculate the length of the list in one go without yielding, even if the list was were long. To make it even worse, the call to `length/1` would only cost a single reduction. This commit reimplements `length/1` so that it eats a number of reductions proportional to the length of the list, and yields if the available reductions run out.