aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/beam
AgeCommit message (Collapse)Author
2016-07-15Merge branch 'maint-19' into maintBjörn-Egil Dahlberg
2016-07-14erts: Cleanup a bunch of un-neccesary #ifndefsLukas Larsson
2016-07-14erts: Fix some msacc inline directivesLukas Larsson
2016-07-14erts: Add extra bif msacc statesLukas Larsson
2016-07-14erts: Add erts_map_from_ks_and_vsLukas Larsson
2016-07-14erts: Fix msacc for dirty scheduler and heap_limitLukas Larsson
2016-07-14hipe: Remove performance profiling codeLukas Larsson
This type of statistics is now available through the microstate accounting API.
2016-07-14Merge branch 'sverker/update_counter-deadlock/ERL-188/OTP-13731' into maint-19Erlang/OTP
* sverker/update_counter-deadlock/ERL-188/OTP-13731: erts: Add test ets_SUITE:update_counter_table_growth erts: Fix deadlock in ets:update_counter/4 erts: Optimize db_finalize_dbterm_hash
2016-07-13erts: Make sure to de-allocate the old seq tracerLukas Larsson
2016-07-11erts: After a call to a tracer nif, reset htopLukas Larsson
This is needed in order for the heap to never contain any pointers to invalid memory. This is good for performance and debugging reasons.
2016-07-11erts: Fix deadlock in ets:update_counter/4Sverker Eriksson
in 'set' with 'write_concurrency' when inserting default object causes table to grow and the bucket to split is protected by same lock as the key.
2016-07-11erts: Optimize db_finalize_dbterm_hashSverker Eriksson
Always free term after WUNLOCK_HASH
2016-07-08erts: Fix GC overrun bug in 'bsl' op with small Op1Sverker Eriksson
Symptom: VM abort "Overrun stack and heap" Problem: The temporary bignum created in buffer tmp_big[] will be part of the GC initiated by TestHeapPreserve, but its size is not included which can cause the GC to overflow if very unlucky. Solution: Do not include tmp_big in the GC.
2016-07-08erts: Check if return_to trace is enabled for bifLukas Larsson
We have to do an extra check if the return_to trace is enabled here as it may have been cleared by the bif after the flags where created by the call_trace.
2016-06-29Fix group_leader/2Rickard Green
2016-06-16Merge branch 'lukas/erts/nif_allow_port_command_in_non_sched_thread/OTP-13442'Lukas Larsson
* lukas/erts/nif_allow_port_command_in_non_sched_thread/OTP-13442: erts: Allow enif_port_command in non-sched thread
2016-06-15erts: Change local sysname for ETS compressedSverker Eriksson
Yes this is an ugly workaround. One approach for a better solution could be to introduce an internal secret atom tagged as an atom with a unique index, but impossible to find by string hash lookup/insert.
2016-06-15Merge branch 'sverker/revert-ets-load-factor'Sverker Eriksson
2016-06-13erts: Fix profile runnable processes raceBjörn-Egil Dahlberg
2016-06-13erts: Allow enif_port_command in non-sched threadLukas Larsson
It has to be possible to send trace messages to a port from non-schedulers threads (specifically from the sys_msg_dispatcher).
2016-06-10erts: Fix undefined shift to msb in erl_processBjörn-Egil Dahlberg
2016-06-10erts: Fix undefined shift to msb in erl_thr_progressBjörn-Egil Dahlberg
2016-06-10Merge branch 'kvakvs/erts/monitor_port/OTP-11384'Lukas Larsson
* kvakvs/erts/monitor_port/OTP-11384: erts: Add port monitors
2016-06-10erts: Add port monitorsDmytro Lytovchenko
* erlang:monitor/2 with port argument is added, erlang:demonitor, using port task API and avoiding locking; * port_info and process_info support for monitored ports (with named port monitors support); * Exit signals contain type 'process' or 'port'; * Propagation of port exit signals; * Self-cleaning when origin process dies with monitor on; * 8 test cases + testcase for port driver crashing; * Documentation for all of the above (monitor, demonitor, port_info and process_info) updated
2016-06-09Merge branch 'egil/fix-simple-crashdump-with-maps/OTP-13657'Björn-Egil Dahlberg
* egil/fix-simple-crashdump-with-maps/OTP-13657: erts: Don't crash on maps on crash dumps
2016-06-09Merge branch 'egil/lttng-change-domain'Björn-Egil Dahlberg
* egil/lttng-change-domain: runtime_tools: Change LTTng dyntrace domain erts: Change LTTng otp domain
2016-06-08erts: Don't crash on maps on crash dumpsBjörn-Egil Dahlberg
- Large Maps could cause a stack overrun during crash dump generation. - This is a simple workaround until a solution has been implemented. - The error has no impact on a running system.
2016-06-08Merge branch 'rickard/misc-ds'Rickard Green
* rickard/misc-ds: Replace enif_is_on_dirty_scheduler() with enif_thread_type() No GC on dirty IO schedulers
2016-06-08Revert "erts: Change ETS hash load factor"Sverker Eriksson
This reverts commit 7c133fb1094ad1cabbb5cfc157483a43c816c6a9.
2016-06-08Revert "erts: Remove unnecessary access of 'is_resizing'"Sverker Eriksson
This reverts commit f4bdac18cb9dd45185e911308a5ebd95ff10d7fd.
2016-06-08Replace enif_is_on_dirty_scheduler() with enif_thread_type()Rickard Green
2016-06-08No GC on dirty IO schedulersRickard Green
2016-06-08erts: Change LTTng otp domainBjörn-Egil Dahlberg
From 'com_ericsson_otp' to 'org_erlang_otp'. This domain name is more suitable.
2016-06-07erts: Let clang have suppressable unused variablesBjörn-Egil Dahlberg
2016-06-07erts: Remove tautological compare warningBjörn-Egil Dahlberg
2016-06-02Fix erts_dirty_process_main()Rickard Green
2016-06-01Merge branch 'sverker/ets-load-factor/OTP-13642'Sverker Eriksson
2016-06-01erts: Avoid literals in process independent ErlNifEnvSverker Eriksson
that would go undetected and cause havoc if module is purged.
2016-06-01erts: Remove unnecessary access of 'is_resizing'Sverker Eriksson
in tables without write_concurrency and remove it totally #ifndef ERTS_SMP
2016-06-01erts: Change ETS hash load factorSverker Eriksson
from 700% to 200%
2016-05-31Update process state flags in etp-commandsRickard Green
2016-05-31Merge branch 'sverker/gc_rare_map_overflow'Sverker Eriksson
2016-05-31Fix bad assertionRickard Green
2016-05-31Properly close message factories in erts_factory_trim_and_close()Rickard Green
2016-05-31Merge branch 'rickard/off_heap-nonsmp-fix/OTP-13366'Rickard Green
* rickard/off_heap-nonsmp-fix/OTP-13366: Do not send on_heap msgs to error logger in non-smp emulator
2016-05-31Merge branch 'rickard/mv-dirty-reds-count/OTP-13123'Rickard Green
* rickard/mv-dirty-reds-count/OTP-13123: Move dirty reduction count to erts_dirty_process_main()
2016-05-31Merge branch 'vinoski/dirty_process_main/OTP-13123'Rickard Green
* vinoski/dirty_process_main/OTP-13123: Add dirty_process_main function
2016-05-31Move dirty reduction count to erts_dirty_process_main()Rickard Green
2016-05-31Add dirty_process_main functionSteve Vinoski
Dirty schedulers only execute NIFs, so having them execute the full process_main function isn't necessary. Add dirty_process_main for dirty schedulers to execute instead. Add erts_pre_dirty_nif(), called when preparing to execute a dirty nif. Add more dirty NIF tests to verify that activities requiring the process main lock can succeed when the process is executing a dirty NIF.
2016-05-31Do not send on_heap msgs to error logger in non-smp emulatorRickard Green