aboutsummaryrefslogtreecommitdiffstats
path: root/erts
AgeCommit message (Collapse)Author
2018-05-24Move calling on_load for preloaded modules to erl_initRichard Carlsson
2018-05-24Fix use-after-free on Windows in escriptBenedikt Reinartz
Since commit 385b18de6fd72672ed7d6736b30f56d6691d4433, the emulator path was not copied anymore before pushing it to the args vector (before it was done within the `push_words` function. Since on Windows `free_env_val` is not a NOP as it is on Unix systems, the string is freed and afterwards used, leading to strange errors like this: escript: Error executing 'àyI': 2 This is fixed by removing the `free_env_val` call.
2018-05-24Make erl_init.c pass the boot module to erl_init.beamRichard Carlsson
2018-05-24Remove obsolete comment textRichard Carlsson
2018-05-24Remove undocumented and unused -# display_items emulator optionRichard Carlsson
2018-05-23Remove broken and undocumented boot function emulator optionRichard Carlsson
2018-05-23Drop otp_ring0, using erl_init insteadRichard Carlsson
2018-05-23Update preloaded modulesRichard Carlsson
2018-05-23Add erl_init moduleRichard Carlsson
2018-05-23configure.in: Add back accidentally deleted AC_SUBST(FPE)Björn Gustavsson
AC_SUBST(FPE) was accidentally deleted in 13bcae12947603.
2018-05-23Update preloadedSiri Hansen
2018-05-23Use system_time instead of monotonic_time as timestamp in loggerSiri Hansen
2018-05-23make: Don't call mkdir with empty argumentLukas Larsson
2018-05-22erts: Purge unused allocation typesSverker Eriksson
2018-05-22erts: Fix erlang:memory for 'processes' and 'processes_used'Sverker Eriksson
to include links and monitors which were lost at 4bc282d812cc2c49aa3e2d073e96c720f16aa270 where these fix_alloc types changed names.
2018-05-22erts: Let allocator pooled_tree also use Age OrderSverker Eriksson
if configured for the allocator. This was not implemented and pooled_tree always used address order first fit. The "problem" was as a carrier can be part of both the pooled tree (of its owner) and the allocation tree (of a foreign instance) at the same time. Solved by duplicating 'birth_time' in both AOFF_RBTree_t nodes for each carrier. Blocks still cannot use age order and does not pay any memory cost for birth_time.
2018-05-21Merge branch 'lukas/erts/cpu_time_thread/OTP-15090'Lukas Larsson
* lukas/erts/cpu_time_thread/OTP-15090: erts: Make cpu_timestamp use per thread on Linux
2018-05-21Fix deadlock in run queue evacuationJohn Högberg
2018-05-21Fix memory leak of processes that died in the run queueJohn Högberg
2018-05-18erts: Fix narrow race between ets:new and ets:deleteSverker Eriksson
of same named table. If other process does ets:delete before ets:new has completely finished and done save_owned_table then ets:delete might do delete_owned_table and deref wild pointers in tb->common.owned.
2018-05-18erts: Add some missing doxygen docsSverker Eriksson
2018-05-18Merge branch 'sverker/ets-delete_all_objects-trap/OTP-15078'Sverker Eriksson
* sverker/ets-delete_all_objects-trap/OTP-15078: erts: Rename untrapping db_free_*empty*_table erts: Make ets:delete_all_objects yield on fixed table erts: Optimize ets delete all in fixed table erts: Refactor ets select iteration code erts: Cleanup ets code erts: Optimize ets hash object deallocactions erts: Refactor pseudo deleted ets objects erts: Make atomic ets:delete_all_objects yield erts: Fix reduction bump for ets:delete/1
2018-05-18Merge branch 'sverker/system-profile-bug/OTP-15085'Sverker Eriksson
* sverker/system-profile-bug/OTP-15085: erts: Fix bug in system_profile
2018-05-18erts: Fix bug in system_profileSverker Eriksson
seen to cause redundant {profile,_,active,_,_} messages when process is terminating.
2018-05-18Merge branch 'rickard/delete_process_schedule/OTP-15081'Rikard Green
* rickard/delete_process_schedule/OTP-15081: Do not hold runq lock while deleting a process
2018-05-17Merge branch 'sverker/maps-iterator-order' againSverker Eriksson
2018-05-17Merge PR-1819 from sverker/enif_binary_to_term-bug/OTP-15080Sverker Eriksson
Fix bug in enif_binary_to_term for immediates
2018-05-17tverlaan/add_dns_alternative_to_tcp_dist/PR-1694/OTP-15086Lukas Larsson
epmd: allow alternative to dns resolving for nodename
2018-05-16epmd: allow alternative to dns resolving for nodenameTimmo Verlaan
This makes it possible to create a custom integration with a key-value store for example. The key would then point to the actual address. You would have to write your own epmd module to make use of that feature.
2018-05-16erts: Silence gcc warningsSverker Eriksson
‘res’ may be used uninitialized in this function
2018-05-16Merge branch 'richcarl/eliminate_lib_module/PR-1786/OTP-15072'Hans Bolinder
* richcarl/eliminate_lib_module/PR-1786/OTP-15072: Fix minor issues Eliminate call to ct:get_progname() in ts_erl_config Use \n escape instead of integer 10 Move error formatting to erl_error.erl and delete lib.erl Move extended parse functions in lib.erl to erl_eval.erl Move lib:eval_str/1 into mod_esi.erl Remove lib:progname/0 Eliminate call to lib:progname/1 in slave.erl Add ct:get_progname/0 Remove lib:error_message/2 Remove lib:flush_receive/0 Remove lib:send/2 and lib:sendw/2 Move lib:nonl/1 into yecc.erl
2018-05-16erts: Fix bug in enif_binary_to_term for immediatesSverker Eriksson
Symptom: Heap corruption Expanded test case to provoke this bug and test some more term types.
2018-05-16Merge branch 'sverker/maps-iterator-order'Sverker Eriksson
2018-05-16Merge branch 'rickard/suspend/OTP-14964'Rickard Green
* rickard/suspend/OTP-14964: Fix erts_try_lock_sig_free_proc() Update etp Replace previous suspend in setnode/3 New process suspend implementation based on async signaling Teach HiPE to yield from receive
2018-05-16Fix erts_try_lock_sig_free_proc()Rickard Green
2018-05-16Update etpRickard Green
2018-05-16Replace previous suspend in setnode/3Rickard Green
2018-05-16New process suspend implementation based on async signalingRickard Green
2018-05-16Teach HiPE to yield from receiveRickard Green
2018-05-16Merge pull request #1811 from bjorng/bjorn/disable-fpe-supportBjörn Gustavsson
Disable the use of floating point exceptions
2018-05-16Merge branch 'sverker/sig-msg-notify-bug'Sverker Eriksson
2018-05-15erts: Fix bug when scheduling monitor-msg comboSverker Eriksson
Bug introduced in master by 613cde66c25464121f2f6dace99782bad0e07d9b
2018-05-15erts: Refactor new erts_make_dirty_proc_handledSverker Eriksson
from ensure_dirty_proc_handled as an outline function callable from inline functions.
2018-05-15Do not hold runq lock while deleting a processRickard Green
2018-05-15Throw 'system_limit' when distribution message size exceed INT_MAX instead ↵Maxim Fedorov
of crashing emulator with 'Absurdly large distribution data buffer' Exception must be thrown when buffer has been created and it's size is known. The actual buffer size is not known until the message has been encoded in ERTS_DSIG_SEND_PHASE_FIN. It would have been nice to abort before allocating and encoding, but in order to do that in a safe way the size calculation would need improvements. It is good enough to abort in the ERTS_DSIG_SEND_PHASE_FIN while we wait for the "fragmented distribution message" feature.
2018-05-15erts: Make cpu_timestamp use per thread on LinuxLukas Larsson
If we don't use per thread the value becomes completely nonsensical on systems with more than one scheduler. We keep the old solaris behaviour in order to support the option, but it only really works when using a single scheduler.
2018-05-15Merge branch 'lukas/erts/otp-21-misc'Lukas Larsson
* lukas/erts/otp-21-misc: erts: Fix unused variable warning in unix prim file erts: Fix erts_os_times warning kernel: Fix comment in kernel_config kernel: Refactor erl_signal_handler startup kernel: Remove doc for unused browser_cmd variable
2018-05-15erts: Fix unused variable warning in unix prim fileLukas Larsson
2018-05-15erts: Fix erts_os_times warningLukas Larsson
2018-05-14Merge pull request #1813 from legoscia/erl_driver.xml-typosLukas Larsson
Fix typos in erl_driver.xml