aboutsummaryrefslogtreecommitdiffstats
path: root/erts/etc/unix
AgeCommit message (Collapse)Author
2019-06-19erts: Add gcov-gen-html scriptSverker Eriksson
to generate nice html from logs of gcov compiled emulator.
2019-05-27erts: Mend etp-search-heapsSverker Eriksson
2019-05-27erts: Fix etp-commands print of 64-bit pointersSverker Eriksson
Use %p instead of %x to print full pointer value.
2019-04-24erts: Fix etp-block2mbcSverker Eriksson
2019-04-24erts: Fix etp-commands to work on older gdbSverker Eriksson
where $argc does not exists "if $undefined_variable" evaluates as true !?
2019-04-18Merge branch 'lukas/tools/overhead_benchmark'Lukas Larsson
* lukas/tools/overhead_benchmark: etp: Fix free de processes check tools: Add overhead benchmark
2019-04-18etp: Fix free de processes checkLukas Larsson
2019-04-18erts: Fix cerl -rr to use correct etp fileLukas Larsson
2019-04-18erts: Fix etp-process-info to print exiting and free processesLukas Larsson
2019-04-10erts: Fix gcc warning in to_erlLukas Larsson
2019-03-25etp: Don't crash etp-stack* when c_p->i is nullLukas Larsson
2019-03-04Merge branch 'maint'Sverker Eriksson
2019-03-04Merge PR-2161 sverker/to_erl-utf8/ERL-854 OTP-15650 into maintSverker Eriksson
* sverker/to_erl-utf8/ERL-854: erts: Remove 7-bit ASCII limitation in to_erl
2019-02-26erts: Remove 7-bit ASCII limitation in to_erlSverker Eriksson
Symptom: to_erl garbles anything beyond 7-bit ASCII received on STDIN Solution: Remove setting of ISTRIP flag on input terminal. "man tcsetattr" says: ISTRIP Strip off eighth bit.
2019-02-22Merge branch ↵Lukas Larsson
'lukas/erts/fragment-dist-messages/OTP-13397/OTP-15610/OTP-15611/OTP-15612/OTP-15613' * lukas/erts/fragment-dist-messages/OTP-13397/OTP-15610/OTP-15611/OTP-15612/OTP-15613: erts: Add debug dist obuf memory leak check win32: Fix ./otp_build debuginfo_win32 Make ld.sh on windows print better error reason erts: Fix so that externals with creation 0 compare equal to all erts: Expand etp to look for free processes erts: Implement trapping while sending distr exit/down erts: Add ERL_NODE_BOOKKEEP to node tables refc erts: Refactor ErtsSendContext to be ErtsDSigSendContext erts: Add distr testcases for fragmentation erts: Make remote send of exit/2 trap erts: Implement fragmentation of distrubution messages erts: Expand distribution protocol documentation erts: Move reason in dist messages to payload erts: Remove a copy of distribution data payload erts: Yield later during process exit and allow free procs to run erts: Refactor rbt _yielding to use reductions erts: Limit binary printout for %.XT in erts_print
2019-02-22erts: Expand etp to look for free processesLukas Larsson
2019-02-21erts: Yield later during process exit and allow free procs to runLukas Larsson
OTP-15610
2019-02-18erts: Remove etp macro offsetofLukas Larsson
The macro command was added quite recently and far from all of our testmachines have this command
2019-02-05erts: Expand rr support in cerl and etpLukas Larsson
2018-10-05Fix run_erl.c so it compiles on SolarisRogier Velting
The checks in place to allow this file to compile on macOS and BSD can be extended to include Solaris.
2018-07-10erts: Fix benign bug in cerl for valgrindSverker Eriksson
benign until valgrind version 4.* shows up.
2018-06-28Merge branch 'sverker/cerl-fixing' into maintSverker Eriksson
* sverker/cerl-fixing: erts: Remove "-pz $PRELOADED" arguments added by cerl erts: Remove dead code in cerl script
2018-06-20Merge branch 'lukas/erts/etp-aux-work-fixes' into maintLukas Larsson
* lukas/erts/etp-aux-work-fixes: erts: Update etp-commands with correct aux_flags
2018-06-18erts: Update etp-commands with correct aux_flagsLukas Larsson
2018-06-18Update copyright yearHenrik Nord
2018-06-08erts: Remove "-pz $PRELOADED" arguments added by cerlSverker Eriksson
It caused problems when starting with -rr and other arguments. Not sure what purpose it served as -pz $PRELOADED is not passed by default by "erl".
2018-06-08erts: Remove dead code in cerl scriptSverker Eriksson
2018-06-05erts: Fix emulator log messages to use erlang:system_timeLukas Larsson
This was changed in the logger in 8aa64c90ddd20ec0ca8cc5fe92a6124324c51da5.
2018-05-16Update etpRickard Green
2018-03-29erts: Break etp-processes/ports when all foundLukas Larsson
2018-03-21Implementation of true asynchronous signaling between processesRickard Green
Communication between Erlang processes has conceptually always been performed through asynchronous signaling. The runtime system implementation has however previously preformed most operation synchronously. In a system with only one true thread of execution, this is not problematic (often the opposite). In a system with multiple threads of execution (as current runtime system implementation with SMP support) it becomes problematic. This since it often involves locking of structures when updating them which in turn cause resource contention. Utilizing true asynchronous communication often avoids these resource contention issues. The case that triggered this change was contention on the link lock due to frequent updates of the monitor trees during communication with a frequently used server. The signal order delivery guarantees of the language makes it hard to change the implementation of only some signals to use true asynchronous signaling. Therefore the implementations of (almost) all signals have been changed. Currently the following signals have been implemented as true asynchronous signals: - Message signals - Exit signals - Monitor signals - Demonitor signals - Monitor triggered signals (DOWN, CHANGE, etc) - Link signals - Unlink signals - Group leader signals All of the above already defined as asynchronous signals in the language. The implementation of messages signals was quite asynchronous to begin with, but had quite strict delivery constraints due to the ordering guarantees of signals between a pair of processes. The previously used message queue partitioned into two halves has been replaced by a more general signal queue partitioned into three parts that service all kinds of signals. More details regarding the signal queue can be found in comments in the erl_proc_sig_queue.h file. The monitor and link implementations have also been completely replaced in order to fit the new asynchronous signaling implementation as good as possible. More details regarding the new monitor and link implementations can be found in the erl_monitor_link.h file.
2018-03-05Replace usage of ERTS_PSFLG_BOUNDRickard Green
2018-03-05Remove ERTS_PSFLG_ON_HEAP_MSGQRickard Green
2017-11-27Merge branch 'maint'Sverker Eriksson
2017-11-23run_erl: Cleanup buggy retry of closeSverker Eriksson
The retry loop wasn't working anyway as it tested fd<0 instead of res. So, there is no real semantic change here.
2017-10-16Merge branch 'maint'Sverker Eriksson
2017-10-12erts: Add -rr option to cerl start scriptSverker Eriksson
to run beam with "rr record".
2017-10-02erts: Move all I/O polling to a seperate threadLukas Larsson
2017-08-12run_erl: Fix error handling in sf_close and during pty master readMarko Turk
2017-07-17erts: Cleanup removal of non-smp emulatorsLukas Larsson
2017-07-17erts: Remove usage of sys.h from etc toolsLukas Larsson
2017-06-14Update copyright yearHans Nilsson
2017-05-23Merge branch 'lukas/erts/etp-processes-ports-optimization'Lukas Larsson
* lukas/erts/etp-processes-ports-optimization: erts: Optimize etp-processes and etp-ports
2017-05-22erts: Optimize etp-processes and etp-portsLukas Larsson
Not calculating the max, table and invalid addresses each loop speeds up iterating through the processes list by about 5x.
2017-05-19Merge branch 'rickard/ds-runqs'Rickard Green
OTP-14152 * rickard/ds-runqs: Make statistics/1 aware of dirty run-queues and tasks
2017-05-19Make statistics/1 aware of dirty run-queues and tasksRickard Green
2017-05-16Let --enable-lock-counter build an additional emulatorBjörn Gustavsson
"./configure --enable-lock-counter" would modify the behavior of the default emulator (usually SMP). To make lock counting more accessible, change --enable-lock-counter to build an additional emulator in the same way as: (cd erts/emulator && make lcnt) (The next commit will make it easier to start the built lock-counter emulator.)
2017-05-04Update copyright yearRaimo Niskanen
2017-04-21Merge branch 'rickard/timer-improvements'Rickard Green
OTP-14356 * rickard/timer-improvements: Fix of later timer wheel Minimum timeout position in each timer wheel Manage timers to trigger at once in a slot similar to other timers Introduce timer slot range counters Timer wheel divided into a "soon wheel" and a "later wheel" Remove unnecessary cancel callback from timer-wheel timers Rearrange timer struct fields in order to simplify Use timer wheel for short BIF timers Use magic refs for BIF timers Remove accessor BIF timer implementation Fix aux-work timer implementation
2017-04-21Merge branch 'bjorn/dialyzer/add-typer/OTP-14336' into run-travisBjörn Gustavsson
* bjorn/dialyzer/add-typer/OTP-14336: Add smoke test for TypER Add back TypEr to the main OTP repository