aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator
AgeCommit message (Collapse)Author
2016-03-30erts: Fix "hanging" VM caused by exiting tty_sl driverSverker Eriksson
Bug introduced on master in a31eab5469b7740d.
2016-03-29Merge branch 'lukas/erts/enif_trace_functions/OTP-13442'Lukas Larsson
* lukas/erts/enif_trace_functions/OTP-13442: erts: Fix bug in enif_send erts: Fix windows nif port tests erts: Fix bug in enif_term_to_binary erts: Remove printout when dec_term fails in DEBUG erts: Polish erl_nif docs erts: Improve enif_binary_to_term erts: Add enif_port_command erts: Add enif_term_to_binary and enif_binary_to_term erts: Add enif_is_process/port_alive erts: Add enif_cpu/now_time and enif_make_unique_integer
2016-03-29erts: Fix bug in enif_sendSverker Eriksson
Let cache_env() set env->heap_frag to same as MBUF(p) as it is in any other case.
2016-03-29erts: Fix windows nif port testsLukas Larsson
2016-03-29erts: Fix bug in enif_term_to_binarySverker Eriksson
Wait until after dec_term and factory_close to do cache_env(), otherwise we will cache the wrong state.
2016-03-29erts: Remove printout when dec_term fails in DEBUGSverker Eriksson
2016-03-29erts: Improve enif_binary_to_termSverker Eriksson
* Accept a raw data buffer instead of ErlNifBinary * Accept option ERL_NIF_BIN2TERM_SAFE * Return number of read bytes
2016-03-29erts: Add enif_port_commandLukas Larsson
2016-03-29erts: Add enif_term_to_binary and enif_binary_to_termLukas Larsson
2016-03-29erts: Add enif_is_process/port_aliveLukas Larsson
2016-03-29erts: Add enif_cpu/now_time and enif_make_unique_integerLukas Larsson
2016-03-29Merge branch 'rickard/improve-psd/OTP-13428'Rickard Green
* rickard/improve-psd/OTP-13428: Improve process/port specific data management
2016-03-29Merge branch 'rickard/delayed-gc-fix'Rickard Green
* rickard/delayed-gc-fix: Allow delayed gc while scheduled out
2016-03-29Merge branch 'rickard/port-sig-dropped-fix/OTP-13424'Rickard Green
* rickard/port-sig-dropped-fix/OTP-13424: Fix implementation of dropped signal to port
2016-03-29Merge branch 'lukas/erts/inline_tagvaldef/OTP-13440'Lukas Larsson
* lukas/erts/inline_tagvaldef/OTP-13440: erts: inline tag_val_def
2016-03-29erts: inline tag_val_defLukas Larsson
The tag_val_def function was called and multiple switch statements had to be traversed in term.c, and then a big switch in the calling code to branch on the term types. By inlining the switches are merged by the compiler and a lot fewer branches have to be taken. Benchmarks show that this increases performance of enc_term by as much as 10%.
2016-03-29Merge branch 'lukas/erts/low_write_freq_darwin/OTP-12345'Lukas Larsson
* lukas/erts/low_write_freq_darwin/OTP-12345: erts: Fix LOW_WRITE section for non llvm os x compilation
2016-03-24Improve process/port specific data managementRickard Green
2016-03-21Merge branch 'sverk/wait_for_deallocations'Sverker Eriksson
2016-03-21Merge branch 'egil/fix-ttsl_drv-log'Björn-Egil Dahlberg
* egil/fix-ttsl_drv-log: Fix ttsl_drv logging without TERMCAP
2016-03-18Fix implementation of dropped signal to portRickard Green
2016-03-18Merge branch 'lukas/erts/scheduler_SUITE_compile_win/OTP-13428'Lukas Larsson
* lukas/erts/scheduler_SUITE_compile_win/OTP-13428: Fix dirty scheduler tc on windows
2016-03-18Merge branch 'lukas/erts/fix_scheduler_suspend/ERL-94/PR-978/OTP-13425'Lukas Larsson
* lukas/erts/fix_scheduler_suspend/ERL-94/PR-978/OTP-13425: erts: Fix install of suspend handler Conflicts: erts/emulator/sys/unix/erl_unix_sys.h erts/emulator/sys/unix/sys.c
2016-03-17Allow delayed gc while scheduled outRickard Green
2016-03-16erts: Fix LOW_WRITE section for non llvm os x compilationLukas Larsson
2016-03-16Take out (parts of) broken fp exception support for MacOS XBjörn Gustavsson
Floating-point exception support on MacOS X has never been especially reliable, and has therefore been disabled by default for a long time. The fpe support is now broken. Therefore, take out the unnecessary test for modern mcontext in configure (whatever that means) and the associated code in sys_float.c. Add #error directives to sys_float.c to make it clear that fpe is not supported. It seems to risky to mess with the mess of #ifdef's, so we will not attempt to remove all fpe support code for MacOS X.
2016-03-15Fix ttsl_drv logging without TERMCAPBjörn-Egil Dahlberg
2016-03-15erts: Fix erts_debug:set_internal_state(wait,deallocations)Sverker Eriksson
that could hang if concurrent deallocations was initiated.
2016-03-15Merge branch 'egil/fix-fdatasync-mac/OTP-13411'Björn-Egil Dahlberg
* egil/fix-fdatasync-mac/OTP-13411: erts: Use fcntl(fd, F_FULLFSYNC) instead of fdatasync on Mac OSX
2016-03-15erts: Use fcntl(fd, F_FULLFSYNC) instead of fdatasync on Mac OSXBjörn-Egil Dahlberg
The syscall fdatasync does not work as intended on Mac OSX. Both the function fsync and fdatasync now uses fcntl(fd, F_FULLFSYNC) on Mac OSX.
2016-03-15Fix dirty scheduler tc on windowsLukas Larsson
2016-03-15Merge branch 'egil/extend-ttsl_drv-logging'Björn-Egil Dahlberg
* egil/extend-ttsl_drv-logging: erts: Increase ttsl_drv logging capabilities
2016-03-14erts: Increase ttsl_drv logging capabilitiesBjörn-Egil Dahlberg
2016-03-14Tweak bs_construct_SUITEBjörn-Egil Dahlberg
2016-03-14Tweak port_SUITEBjörn-Egil Dahlberg
2016-03-11Fix module_info_SUITEBjörn-Egil Dahlberg
2016-03-11Fix send_term_SUITEBjörn-Egil Dahlberg
2016-03-11Cleaner map_SUITEBjörn-Egil Dahlberg
2016-03-11Remove ?line macrosBjörn-Egil Dahlberg
2016-03-11Eliminate use of doc and suite clausesBjörn-Egil Dahlberg
Those clause are obsolete and never used by common_test.
2016-03-11Replace ?t with test_serverBjörn-Egil Dahlberg
The macro ?t is deprecated. Replace its use with 'test_server'.
2016-03-11Eliminate use of ?config() macroBjörn-Egil Dahlberg
2016-03-11Replace use of test_server:format/2 with io:format/2Björn-Egil Dahlberg
2016-03-11Eliminate use of test_server:fail/0,1Björn-Egil Dahlberg
2016-03-11Modernize use of timetrapsBjörn-Egil Dahlberg
2016-03-11Merge branch 'vinoski/ds-avoid-lock'Rickard Green
* vinoski/ds-avoid-lock: Skip run queue lock check for dirty schedulers
2016-03-11Merge branch 'rickard/ds-sched-suspend'Rickard Green
* rickard/ds-sched-suspend: Improved scheduler suspend functionality
2016-03-10Improved scheduler suspend functionalityRickard Green
- The calling process is now suspended while synchronizing scheduler suspends via erlang:system_flag(schedulers_online, _) and erlang:system_flag(multi_scheduling, _), instead of blocking the scheduler thread in the BIF call waiting for the operation to synchronize. Besides releasing the scheduler for other work (or immediate suspend) it also makes it possible to abort the operation by killing the process. - erlang:system_flag(schedulers_online, _) now only wait for normal schedulers to complete before it returns. This since it may take a very long time before all dirty schedulers suspends. - erlang:system_flag(multi_scheduling, block_normal|unblock_normal) which only operate on normal schedulers has been introduced. This since there are use cases where suspend of dirty schedulers are not of interest (hipe loader). - erlang:system_flag(multi_scheduling, block) still blocks all dirty schedulers as well as all normal schedulers except one since it is hard to redefine what multi scheduling block means. - The three operations: - changing amount of schedulers online - blocking/unblocking normal multi scheduling - blocking/unblocking full multi scheduling can now be done in parallel. This is important since otherwise a full multi scheduling block would potentially delay the other operations for a very long time.
2016-03-09Merge branch 'maint'Sverker Eriksson
2016-03-09erts: Fix wobbling tests in nif_SUITESverker Eriksson
No point in checking tmp_alloc instance 0 as any non-scheduler thread could race us.