aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2018-12-06Merge branch 'lukas/OTP-21.1.1/scheduler_pollset/OTP-15475' into maintLukas Larsson
* lukas/OTP-21.1.1/scheduler_pollset/OTP-15475: erts: Move fds with active true behaviour to own pollset erts: Fix lists_member_2 reduction count erts: Allow code_model_small to be set in xcomp setting erts: Implement delay_send using timer instead of poll erts: Optimize driver_set_timer(0) to fire at once erts: Optimize the inet driver multi timers for one timer erts: Move all inet tcp CONNECTED timers to multi timer erts: Add erts_io_notify_port_task_executed to check_io msacc state erts: Add pre-alloc to ALLOC msacc state erts: Make thr prgr wakeup current or sched 1 erts: Pass thread progress data where possible
2018-12-06erts: Move fds with active true behaviour to own pollsetLukas Larsson
At start of the VM a poll-set that the schedulers will check is created where fds that have triggered many (at the moment, many means 10) times without being deselected inbetween. In this scheduler specific poll-set fds do not use ONESHOT, which means that the number of syscalls goes down dramatically for such fds. This pollset is introduced in order to handle fds that are used by the erlang distribution and that never change their state from {active, true}. This pollset only handles ready_input events, ready_output is still handled by the poll threads. During overload, polling the scheduler poll-set is done on a 10ms timer.
2018-12-06Merge branch 'kenneth/asn1/ERIERL-278/OTP-15470' into maintRaimo Niskanen
* 'kenneth/asn1/ERIERL-278/OTP-15470' of git-server:kenneth_otp: Handle erroneous length during decode (BER only) without crashing
2018-12-06Merge branch 'raimo/test-cuddling' into maintRaimo Niskanen
* raimo/test-cuddling: Rewrite to work for stream connection Update Linux version for pktoptions TTL
2018-12-06Merge pull request #2042 from bjorng/bjorn/compiler/stacktrace/OTP-15481Björn Gustavsson
Fix unsafe optimization of stack trace building
2018-12-05Rewrite to work for stream connectionRaimo Niskanen
2018-12-05Update Linux version for pktoptions TTLRaimo Niskanen
2018-12-05Fix unsafe optimization of stack trace buildingBjörn Gustavsson
The `sys_core_fold` pass of the compiler would optimize away the building of the stacktrace in code such as: try ... catch C:R:Stk -> erlang:raise(C, {R,Stk}, Stk) end That optimization is unsafe and would cause a crash in a later compiler pass.
2018-12-05Merge pull request #2039 from ↵Lukas Larsson
garazdawi/lukas/erts/fix_lit_msg_copy_in_gc/ERL-741/OTP-15478 erts: Fix copy of literal msg during gc
2018-12-04Merge branch 'raimo/ssl/tls_dist-optimization' into maintRaimo Niskanen
* raimo/ssl/tls_dist-optimization: Handle socket close in state downgrade Handle dead sender at terminate Handle tls_sender exit properly Optimize split_bin Improve dist send throughput
2018-12-04Merge branch 'raimo/ssl/tls_dist-profiling' into maintRaimo Niskanen
* raimo/ssl/tls_dist-profiling: Improve benchmark Implement print on other node Fix compiler warnings
2018-12-04Merge branch 'ingela/ssl/test-cuddle-ssl_basic_SUITE' into maintIngela Anderton Andin
* ingela/ssl/test-cuddle-ssl_basic_SUITE: ssl: Correct test case
2018-12-04Handle socket close in state downgradeRaimo Niskanen
2018-12-04erts: Fix copy of literal msg during gcLukas Larsson
A copy has to be made of the message as there is a trace token. There was a bug where the actual message was incorrectly modified even if it was a literal.
2018-12-04Merge branch 'ingela/ssl/dist/active-N/OTP-15449' into maintIngela Anderton Andin
* ingela/ssl/dist/active-N/OTP-15449: ssl: Fix error handling in function passive_receive ssl: Correct ssl:shutdown ssl: Internaly use {active, N}
2018-12-04Handle erroneous length during decode (BER only) without crashingKenneth Lundin
2018-12-03ssl: Fix error handling in function passive_receiveIngela Anderton Andin
Also avoid code duplication Conflicts: lib/ssl/src/dtls_connection.erl lib/ssl/src/tls_connection.erl
2018-12-03ssl: Correct ssl:shutdownIngela Anderton Andin
When internaly using active N, bugs in shutdown implementation where reveled.
2018-12-03ssl: Internaly use {active, N}Ingela Anderton Andin
Make next_record an internal help function to next_event and avoid duplicate calls to tls_socket:setopts for setting the active option.
2018-12-03ssl: Correct test caseIngela Anderton Andin
2018-12-03Update preloaded modulesHenrik Nord
2018-12-03Update primary bootstrapHenrik Nord
2018-12-03Merge branch 'lukas/erts/CFLAGS-O-check/OTP-15465' into maintLukas Larsson
* lukas/erts/CFLAGS-O-check/OTP-15465: erts: Fix some 32-bit gcc warnings erts: Add check that a -O flag is present in CFLAGS
2018-12-03erts: Fix some 32-bit gcc warningsLukas Larsson
2018-12-03erts: Add check that a -O flag is present in CFLAGSLukas Larsson
There have been too many times when users have needed to enable something through CFLAGS but forgotten to add the '-O2 -g' flags.
2018-12-03erts: Fix lists_member_2 reduction countLukas Larsson
OTP-15474
2018-12-03erts: Allow code_model_small to be set in xcomp settingLukas Larsson
OTP-15473
2018-12-03erts: Implement delay_send using timer instead of pollLukas Larsson
The previous implementation uses a round-trip in the poll-set to simulate a yield of the port context. With the poll thread implementation this is no longer a good idea as it generated a lot more work for the system. So this commit changes the implementation to use a timer instead. OTP-15471
2018-12-03erts: Optimize driver_set_timer(0) to fire at onceLukas Larsson
By optimizing driver_set_timer for 0 we can use it instead of select to do a yield in the driver. Use full for delay_send in the inet driver. OTP-15472
2018-12-03erts: Optimize the inet driver multi timers for one timerLukas Larsson
The most common case for any socket is to have zero or one timer, so we optimize for the one case. The only case when we have more than one timer is when the multi accept feature is used.
2018-12-03erts: Move all inet tcp CONNECTED timers to multi timerLukas Larsson
2018-12-03erts: Add erts_io_notify_port_task_executed to check_io msacc stateLukas Larsson
OTP-15450
2018-12-03erts: Add pre-alloc to ALLOC msacc stateLukas Larsson
OTP-15450
2018-12-03Merge branch 'sverker/erts/sendfile-error-bug/ERL-784/OTP-15461' into maintSverker Eriksson
* sverker/erts/sendfile-error-bug/ERL-784/OTP-15461: erts: Fix hanging sendfile bugs when socket closes unexpectedly erts: Fix unexpected inet_reply message from failing file:sendfile erts: Fix bug in sendfile for active socket
2018-12-03Merge branch 'sverker/erts/cuddle-driver_SUITE' into maintSverker Eriksson
* sverker/erts/cuddle-driver_SUITE: erts: Fix faulty assert in driver_SUITE erts: Improve driver_SUITE:smp_select
2018-12-03Merge branch 'siri/logger/std-recreate-file-if-rotated/OTP-15469' into maintSiri Hansen
* siri/logger/std-recreate-file-if-rotated/OTP-15469: [logger] Re-create log file if deleted
2018-12-03Merge branch 'siri/logger/unexpected-exit-from-simple/ERL-788/OTP-15466' ↵Siri Hansen
into maint * siri/logger/unexpected-exit-from-simple/ERL-788/OTP-15466: [logger] Unlink simple handler before terminating
2018-12-03Merge branch 'siri/et/scroll-up/ERL-780/OTP-15463' into maintSiri Hansen
* siri/et/scroll-up/ERL-780/OTP-15463: [et] Improve handling of scroll bar
2018-12-03Merge branch 'dgud/stdlib/unicode-binary-bug/ERL-777/OTP-15428' into maintDan Gudmundsson
* dgud/stdlib/unicode-binary-bug/ERL-777/OTP-15428: unicode_util did not handle binary input data correctly
2018-12-03Merge branch 'raimo/test-cuddling' into maintRaimo Niskanen
* raimo/test-cuddling: Parallel stress test strong_rand_bytes Update OS version numbers
2018-12-03Merge branch 'hans/crypto/valgrind-warnings/OTP-15467' into maintHans Nilsson
* hans/crypto/valgrind-warnings/OTP-15467: crypto: Engine valgrind fix crypto: Fix valgrind error in dh_generate/dh_compute crypto: Fix valgrind errors in pkey_crypt_nif crypto: Add some crypto:engine_unload in engine test suite crypto: Fix valgrind errors in privkey_to_pubkey crypto: Fix valgrind error for keys with passwords in Engines
2018-12-03crypto: Engine valgrind fixHans Nilsson
Fixes memory leak when a command has wrong type.
2018-12-03crypto: Fix valgrind error in dh_generate/dh_computeHans Nilsson
2018-12-03crypto: Fix valgrind errors in pkey_crypt_nifHans Nilsson
2018-12-03crypto: Add some crypto:engine_unload in engine test suiteHans Nilsson
Got valgrind errors for error tests otherwise
2018-12-03crypto: Fix valgrind errors in privkey_to_pubkeyHans Nilsson
2018-12-03crypto: Fix valgrind error for keys with passwords in EnginesHans Nilsson
2018-12-03Merge branch 'dgud/wx/mojave-crash/OTP-15426' into maintDan Gudmundsson
* dgud/wx/mojave-crash/OTP-15426: wx: Do not delay deletes of wxGraphicContext
2018-12-03Merge pull request #2036 from uabboli/hasse/stdlib/rfc3339_fraction/OTP-15464Hans Bolinder
stdlib: Let calendar:system_time_to_rfc3339() keep fractions
2018-11-30erts: Fix hanging sendfile bugs when socket closes unexpectedlySverker Eriksson