aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator
AgeCommit message (Collapse)Author
2016-11-23Merge branch 'rickard/nif-scheduling-fixes' into maintRickard Green
* rickard/nif-scheduling-fixes: Fix check_process_code() when NifExport is in use - OTP-14048 Fix GC when NifExport is in use - OTP-14049 Fix saving of original arguments when rescheduling via NifExport - OTP-14050
2016-11-22Fix check_process_code() when NifExport is in useRickard Green
2016-11-22Fix GC when NifExport is in useRickard Green
2016-11-22Fix saving of original arguments when rescheduling via NifExportRickard Green
2016-11-22Merge branch 'sverker/erts/crash-dump-limit/OTP-14046' into maintSverker Eriksson
* sverker/erts/crash-dump-limit: erts: Add env variable ERL_CRASH_DUMP_BYTES erts: Add ErtsStrToSint64 erts: Refactor crash dumping with cbprintf erts: Add cbprintf for Callback Printing erts: Remove unused erl_crash_dump()
2016-11-22erts: Add env variable ERL_CRASH_DUMP_BYTESSverker Eriksson
to limit crash dump size
2016-11-17erts: Add ErtsStrToSint64Sverker Eriksson
for simplify string to 64-bit integer parsing.
2016-11-17erts: Refactor crash dumping with cbprintfSverker Eriksson
Instead of passing around a file descriptor use a function pointer to facilitate more advanced backend write logic such as size limitation or compression.
2016-11-16erts: Remove unused erl_crash_dump()Sverker Eriksson
2016-11-11Merge branch 'sverker/hipe-no-pie-amd64/ERL-294/PR-1239/OTP-14031' into maintSverker Eriksson
* sverker/hipe-no-pie-amd64: erts: Disable -fPIE for HiPE on x86_64 erts: Fix correct link flags for hipe_mkliterals
2016-11-11erts: Fix correct link flags for hipe_mkliteralsSverker Eriksson
and no need for $(INCLUDED).
2016-11-09Merge branch 'maint-19' into maintBjörn-Egil Dahlberg
2016-11-04erts: Use cmd on windows for port_SUITEBjörn-Egil Dahlberg
2016-11-01erts: Fix SIGUSR1 crashdump generationBjörn-Egil Dahlberg
Do not generate a core when a crashdump is asked for. Regression introduced in 56090db3ea417157a749bdd810fc61d117493f1f
2016-10-31Merge branch 'sverker/hipe-beam-stacktrace/ERL-205/OTP-13992' into maintSverker Eriksson
* sverker/hipe-beam-stacktrace/ERL-205: erts: Exclude random beam functions from hipe stacktrace
2016-10-28erts: Exclude random beam functions from hipe stacktraceSverker Eriksson
2016-10-27Merge branch 'sverker/purge-fix/OTP-13925' into maintSverker Eriksson
2016-10-26erts: Avoid delayed fun undef raceSverker Eriksson
Avoid suspending fun caller not just if purge is already done but also if purge of another module has started. Another purge of the same module again cannot happen as making current to old transition includes thread progress.
2016-10-26Merge branch 'lukas/erts/tracing/fix_dead_tracer_check/ERL-274/OTP-13928' ↵Lukas Larsson
into maint * lukas/erts/tracing/fix_dead_tracer_check/ERL-274/OTP-13928: erts: Do tracer liveness check on current tracer
2016-10-04erts: Print error code from failed NIF load/upgrade/reloadSverker Eriksson
in Text part of error tuple, like {error, {load, "Library load-call unsuccessful (606)}}
2016-10-04erts: Do tracer liveness check on current tracerLukas Larsson
This fixes a fault introduced in 19.0 where an invalid tracer would block setting of a new tracer on a process.
2016-09-29Fix minor soft purge bugRickard Green
A process calling a fun from a module currently being soft-purged could race with failure of the soft purge. When this happened the call triggered loading of the module which erroneously would load new code for the module in the case no new generation was currently loaded.
2016-09-27erts: Rename __errno in order to avoid conflict on openbsdLukas Larsson
2016-09-15Merge branch 'raimo/diffserv-socket-option/OTP-13582' into maintRaimo Niskanen
* raimo/diffserv-socket-option/OTP-13582: Tune 'tclass' semantics Implement IPV6_TCLASS
2016-09-15Merge branch 'bjorn/erts/on_load/ERL-240/OTP-13893' into maintBjörn Gustavsson
* bjorn/erts/on_load/ERL-240/OTP-13893: erts: Add nif_SUITE:t_on_load erts: Improve nif_SUITE:upgrade test Don't leak old code when loading a modules with an on_load function
2016-09-14Merge branch 'maint-19' into maintHenrik Nord
2016-09-14Ensure we dont use an invalid live heap fragment pointerRickard Green
2016-09-14Update vheap size when moving msgq to heap after GCRickard Green
2016-09-14erts: Add nif_SUITE:t_on_loadSverker Eriksson
2016-09-14erts: Improve nif_SUITE:upgrade testSverker Eriksson
to include upgrade from deleted (old) module instance
2016-09-14Don't leak old code when loading a modules with an on_load functionBjörn Gustavsson
Normally, calling code:delete/1 before re-loading the code for a module is unnecessary but causes no problem. But there will be be problems if the new code has an on_load function. Code with an on_load function will always be loaded as old code to allowed it to be easily purged if the on_load function would fail. If the on_load function succeeds, the old and current code will be swapped. So in the scenario where code:delete/1 has been called explicitly, there is old code but no current code. Loading code with an on_load function will cause the reference to the old code to be overwritten. That will at best cause a memory leak, and at worst an emulator crash (especially if NIFs are involved). To avoid that situation, we will put the code with the on_load function in a special, third slot in Module. ERL-240
2016-09-14Merge branch 'rickard/test-cuddle' into maintRickard Green
* rickard/test-cuddle: Ensure long enough sleep in driver_SUITE:timer_delay driver
2016-09-14Merge branch 'maint-19' into maintHenrik Nord
2016-09-14Tune 'tclass' semanticsRaimo Niskanen
2016-09-13Fix crash due to heap fragments left after GCRickard Green
Do not decode distribution messages as part of the GC operation. Distribution messages containing maps may generate heap fragments.
2016-09-12Implement IPV6_TCLASSRaimo Niskanen
2016-09-09Fix restore of 'current' field when rescheduled NIF completesRickard Green
2016-09-06Merge branch 'sverker/beam-too-few-functions/ERL-244/OTP-13848' into maintSverker Eriksson
* sverker/beam-too-few-functions/ERL-244: erts: Reject beam file with too few functions
2016-09-06Merge branch 'rickard/thr-prgr-unmanaged-delay-bug/OTP-13869' into maintRickard Green
* rickard/thr-prgr-unmanaged-delay-bug/OTP-13869: Fix erts_thr_progress_unmanaged_delay()
2016-09-06Merge branch 'rickard/drv-send-term-thr-bug/OTP-13866' into maintRickard Green
* rickard/drv-send-term-thr-bug/OTP-13866: Fix thread calls to erl_drv_send_term()/erl_drv_output_term() Conflicts: erts/emulator/beam/io.c
2016-09-05Fix erts_thr_progress_unmanaged_delay()Rickard Green
Thread progress leader update did not cache current unmanaged index when waiting for unmanaged threads. This caused erts_thr_progress_unmanaged_delay() to stop working until a new leader took over.
2016-09-05Merge branch 'lukas/erts/fix_signalhandler_errno_restore/OTP-13868' into maintLukas Larsson
* lukas/erts/fix_signalhandler_errno_restore/OTP-13868: erts: Fix child setup signal hander bug
2016-09-05Merge branch 'lukas/erts/tracing/fix_sparc_align_issue/OTP-13803' into maintLukas Larsson
* lukas/erts/tracing/fix_sparc_align_issue/OTP-13803: erts: Immed tracer states also have to be alignable
2016-09-05Fix thread calls to erl_drv_send_term()/erl_drv_output_term()Rickard Green
2016-09-05erts: Reject beam file with too few functionsSverker Eriksson
2016-09-02Introduce literal sweep of native stack in new purge strategyRickard Green
2016-09-02Ensure long enough sleep in driver_SUITE:timer_delay driverRickard Green
2016-09-02erts: Fix child setup signal hander bugLukas Larsson
When running the signal handler, the errno has to be restored to its original value, otherwise code running in the same thread may misbehave.
2016-09-01Merge branch 'rickard/new-purge-strategy/OTP-13833' into maintRickard Green
* rickard/new-purge-strategy/OTP-13833: Fix reclaim of literal areas Conflicts: erts/emulator/beam/beam_bif_load.c
2016-09-01Fix reclaim of literal areasRickard Green