aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator
AgeCommit message (Collapse)Author
2017-03-31Merge branch 'raimo/file-read_file-leaks-file-descriptors/ERL-383/OTP-14308' ↵Erlang/OTP
into maint-19 * raimo/file-read_file-leaks-file-descriptors/ERL-383/OTP-14308: Close FD after trying to open a directory
2017-03-29Close FD after trying to open a directoryRaimo Niskanen
2017-03-21erts: Make sigterm signal safe for non-smp beamBjörn-Egil Dahlberg
The signal handler will now schedule a sigterm message instead of sending the message in the signal handler. The signal handler must refrain from memory allocations and thus the event is scheduled.
2017-03-10Update copyright yearRickard Green
2017-03-01Merge branch 'lukas/erts/port_control_emasculate_binary/OTP-14231' into maintLukas Larsson
* lukas/erts/port_control_emasculate_binary/OTP-14231: erts: Fix emasculation of binaries in port_control
2017-02-27Merge branch 'rickard/prim_eval_receive' into maintRickard Green
OTP-14241 * rickard/prim_eval_receive: Ensure prim_eval:'receive' wont clobber def_arg_reg[0]
2017-02-27erts: Fix emasculation of binaries in port_controlLukas Larsson
This fixes a bug introduced in 3671dd2d
2017-02-23Merge branch 'sverker/include-module-literal-size/OTP-14228' into maintSverker Eriksson
again * sverker/include-module-literal-size: erts: Beautify loaded() erts: Fix literal size bug when only old instance exists
2017-02-21erts: Beautify loaded()Sverker Eriksson
by removing some unnecessary conditions and remove unused and faulty summation for 'cur' and 'old'.
2017-02-21erts: Fix literal size bug when only old instance existsSverker Eriksson
fix for already merged but not releases 808b2f4d53e446aed07f85716c5c4b85abb3d18a
2017-02-21erts: Emasculate binaries that are scheduled in port_controlLukas Larsson
2017-02-20Ensure prim_eval:'receive' wont clobber def_arg_reg[0]Rickard Green
def_arg_reg[0] is used for storage of timeout instruction when a 'receive after' is executed. When a process was scheduled out inside prim_eval:'receive'/0 due to a function call, def_arg_reg[0] was overwritten due to storage of live registers. prim_eval:'receive'/2 now calls arg_reg_alloc/0 which bumps all reductions and then calls arg_reg_alloc/7 which will cause an allocation of a new arg_reg array since def_arg_reg only can hold 6 values. This ensures that the timeout instruction in def_arg_reg[0] used for the timeout wont be overwritten.
2017-02-16Merge branch 'sverker/enif_send-noproc-fix/OTP-14229' into maintSverker Eriksson
* sverker/enif_send-noproc-fix: erts: Fix enif_send from noproc and no msg_env
2017-02-16Merge branch 'sverker/include-module-literal-size/OTP-14228' into maintSverker Eriksson
* sverker/include-module-literal-size: erts: Add size of literals to module code size
2017-02-16Merge branch 'sverker/round-bug/OTP-14227' into maintSverker Eriksson
* sverker/round-bug/OTP-14227: erts: Fix round/1 for large floats
2017-02-14erts: Fix round/1 for large floatsSverker Eriksson
1> round(6209607916799025.0). 6209607916799026 Problem: Adding/subtracting 0.5 and large double floats between (1 bsl 52) and (1 bsl 53) does not give reliable results. Solution: Use round() function in math.h.
2017-02-08Merge branch 'maint-19' into maintRaimo Niskanen
Conflicts: OTP_VERSION
2017-02-07Merge branch 'raimo/efile_drv-read_file-use-fstat/OTP-14184' into maint-19Erlang/OTP
* raimo/efile_drv-read_file-use-fstat/OTP-14184: Use fstat if it exists in efile_openfile
2017-02-07Merge branch 'sverker/bin2term-zlib-bug/ERL-340/OTP-14159' into maint-19Erlang/OTP
* sverker/bin2term-zlib-bug/ERL-340/OTP-14159: erts: Fix binary_to_term for compressed and zlib >= v1.2.9
2017-02-07Use fstat if it exists in efile_openfileRaimo Niskanen
2017-02-06Merge branch 'rickard/binary-refc' into maintRickard Green
OTP-14202 * rickard/binary-refc: Atomic reference count of binaries also in non-SMP Conflicts: erts/emulator/beam/beam_bp.c
2017-02-06Atomic reference count of binaries also in non-SMPRickard Green
NIF resources was not handled in a thread-safe manner in the runtime system without SMP support. As a consequence of this fix, the following driver functions are now thread-safe also in the runtime system without SMP support: - driver_free_binary() - driver_realloc_binary() - driver_binary_get_refc() - driver_binary_inc_refc() - driver_binary_dec_refc()
2017-02-06Merge branch 'rickard/ds-fix' into maintRickard Green
OTP-14122 * rickard/ds-fix: Dirty schedulers should not touch scheduler data pointed to by process struct Conflicts: erts/emulator/beam/erl_process.c
2017-02-06Merge branch 'rickard/hole-marker' into maintRickard Green
* rickard/hole-marker: Use a hole-marker that cannot be mistaken for a valid term on the heap
2017-02-03Use a hole-marker that cannot be mistaken for a valid term on the heapRickard Green
2017-02-03Fix merge commitBjörn-Egil Dahlberg
This fixes commit f0867aa2ccbbf5677e0577bba08f8b7bc53ec0ed
2017-02-03Merge branch 'maint-18' into maintHans Nilsson
Conflicts: OTP_VERSION erts/doc/src/notes.xml erts/emulator/sys/unix/erl_unix_sys.h erts/emulator/sys/unix/sys.c erts/vsn.mk lib/crypto/c_src/crypto.c lib/crypto/doc/src/notes.xml lib/crypto/vsn.mk lib/inets/doc/src/notes.xml lib/inets/vsn.mk lib/ssh/doc/src/notes.xml lib/ssh/src/ssh.app.src lib/ssh/src/ssh_connection_handler.erl lib/ssh/vsn.mk otp_versions.table
2017-02-02Dirty schedulers should not touch scheduler data pointed to by process structRickard Green
2017-02-02erts: Add size of literals to module code sizeSverker Eriksson
in crash dump and (l)oaded command in break menu.
2017-02-01Merge branch 'sverker/bin2term-zlib-bug/ERL-340/OTP-14159' into maint-18Erlang/OTP
* sverker/bin2term-zlib-bug/ERL-340/OTP-14159: erts: Fix binary_to_term for compressed and zlib >= v1.2.9
2017-02-01Merge branch 'egil/erts/fix_scheduler_suspend/ERL-94/PR-978/OTP-13425' into ↵Erlang/OTP
maint-18 * egil/erts/fix_scheduler_suspend/ERL-94/PR-978/OTP-13425: erts: Fix install of suspend handler
2017-02-01Merge branch 'rickard/thr-prgr-unmanaged-delay-bug/OTP-13869' into maint-18Erlang/OTP
* rickard/thr-prgr-unmanaged-delay-bug/OTP-13869: Fix erts_thr_progress_unmanaged_delay()
2017-02-01Merge branch 'rickard/drv-send-term-thr-bug/OTP-13866' into maint-18Erlang/OTP
* rickard/drv-send-term-thr-bug/OTP-13866: Fix thread calls to erl_drv_send_term()/erl_drv_output_term()
2017-02-01Merge branch 'sverker/bin2term-zlib-bug/ERL-340/OTP-14159' into maintSverker Eriksson
* sverker/bin2term-zlib-bug/ERL-340/OTP-14159: erts: Fix binary_to_term for compressed and zlib >= v1.2.9
2017-01-25Merge branch 'egil/erts/fix-crashdump-suspend/OTP-14164' into maintBjörn-Egil Dahlberg
* egil/erts/fix-crashdump-suspend/OTP-14164: erts: Fix thread suspend in crashdump
2017-01-23Merge branch 'sverker/cuddle-port_trace_SUITE' into maintSverker Eriksson
* sverker/cuddle-port_trace_SUITE: erts: Fix port_trace_SUITE to join threads
2017-01-23erts: Fix binary_to_term for compressed and zlib >= v1.2.9Sverker Eriksson
Problem: z_stream was incorrectly copied with memcpy which just happened to work with zlib < v1.2.9. Solution: Avoid copying z_stream.
2017-01-20erts: Fix thread suspend in crashdumpBjörn-Egil Dahlberg
* move signal handler setup
2017-01-17Merge branch 'sverker/trace_gc-bug/OTP-14154' into maintSverker Eriksson
* sverker/trace_gc-bug: erts: Fix GC tracing to use temp heap erts: Assert sufficient space need after GC
2017-01-17Remove debug printout and unnecessary GCRickard Green
2017-01-17Merge branch 'rickard/no-harddebug' into maintRickard Green
* rickard/no-harddebug: Do not automatically define HARDDEBUG when DEBUG is defined
2017-01-17Merge branch 'rickard/abandoned-heap-bugs' into maintRickard Green
OTP-14135 * rickard/abandoned-heap-bugs: Fix memory leak of temporary heap
2017-01-16Merge branch 'maint-19' into maintSverker Eriksson
2017-01-16erts: Fix port_trace_SUITE to join threadsSverker Eriksson
when port is closed before driver may be unloaded.
2017-01-13erts: Fix enif_send from noproc and no msg_envSverker Eriksson
Only try direct allocation on receiver heap when called in a real process context to avoid trylock on our own main lock.
2017-01-13Do not automatically define HARDDEBUG when DEBUG is definedRickard Green
2017-01-13Fix memory leak of temporary heapRickard Green
This bug was introduced in previous commit, and has never been released in an official OTP version.
2017-01-12Merge branch 'rickard/ds-fixes' into maintRickard Green
OTP-14122 * rickard/ds-fixes: Fix call time tracing with dirty schedulers
2017-01-12Merge branch 'sverker/make-export-fun-race/OTP-14144' into maint-19Erlang/OTP
* sverker/make-export-fun-race/OTP-14144: erts: Fix race bug between export fun creation and code loading
2017-01-12erts: Fix race bug between export fun creation and code loadingSverker Eriksson
Symptom: SEGV crash on ARM in delete_code() -> export_list(). Could probably happen on other machines as well. Problem: Staging export table was iterated in an unsafe way while an entry was added for a new export fun. Solution: Correct write order and some memory barriers.