aboutsummaryrefslogtreecommitdiffstats
path: root/erts
AgeCommit message (Collapse)Author
2015-01-14Improve ethread atomics based on GCC builtinsRickard Green
* Use of __atomic builtins when available. * Improved configure test that checks for missing memory barrier in __sync_synchronize(). The old approach was to verify known working gcc versions and check gcc version at compile time. Besides not being very safe, the old approach often unnecessarily caused usage of the very expensive workaround. * Introduced (no overhead) workaround for missing clobber in __sync_synchronize() when using buggy LLVM implementation of __sync_synchronize(). * Implement native memory barriers for ARM processors supporting the DMB instruction. * Use of volatile store on Alpha as atomic set operation if no __atomic_store_n() is available (already used on x86/x86_64 Sparc V9, PowerPC, and MIPS). Fallback used when not using volatile store is typically very expensive. * Use volatile load on Alpha and ARM as atomic read operation if no __atomic_load_n() is available (already used on x86/x86_64 Sparc V9, PowerPC, and MIPS). Fallback when not using volatile load is typically very expensive.
2015-01-05Fix missing quotation in LM_FIND_EMU_CCRickard Green
2014-12-09Prepare releaseErlang/OTP
2014-12-09Update preloaded modulesMarcus Arendt
2014-12-08Add .appup fileRickard Green
2014-12-03Fix function "defined but not used" warningRickard Green
2014-12-03erts: Fix some spelling in internal docsSverker Eriksson
2014-12-02Merge branch 'lukas/erts/isfinite-fix/OTP-12268' into maintLukas Larsson
* lukas/erts/isfinite-fix/OTP-12268: erts: Fix finite warning for clang
2014-12-02erts: Fix finite warning for clangLukas Larsson
clang aka llvm claims to be __GNUC__ and thus we have to explicitly check that it is not used.
2014-12-02Merge branch 'lukas/erts/bif_info_rebuild/OTP-12344' into maintLukas Larsson
* lukas/erts/bif_info_rebuild/OTP-12344: Sort keys before generating
2014-12-01Merge branch 'vinoski/rm-foo-dtrace' into maintMarcus Arendt
* vinoski/rm-foo-dtrace: Clean up temporary dtrace file during config
2014-11-26Merge branch 'sverk/port_get_data-race/OTP-12208' into maintSverker Eriksson
* sverk/port_get_data-race/OTP-12208: erts: Fix port data memory allocation bug
2014-11-26Clean up temporary dtrace file during configSteve Vinoski
When configuring erts to support dynamic trace via dtrace, be sure to clean up the temporary file "erts/foo-dtrace.h" used to help check for dtrace support. Otherwise, it shows up as an untracked file in git.
2014-11-26Sort keys before generatingLukas Larsson
This has to be done in order to consistently generate the same file so that we do not get rebuilds all the time.
2014-11-25Merge branch 'rickard/maint-17/activate-runq/OTP-12287' into maintRickard Green
* rickard/maint-17/activate-runq/OTP-12287: Do not let non-empty run-queue prevent activation of scheduler
2014-11-25Merge branch 'rickard/ppc32-atomic-opt/OTP-12250' into maintRickard Green
* rickard/ppc32-atomic-opt/OTP-12250: Optimize atomic ops with release barrier for 32-bit PowerPC
2014-11-25Merge branch 'rickard/libatomic_ops_improvements/OTP-12302' into maintRickard Green
* rickard/libatomic_ops_improvements/OTP-12302: Implement support for double word atomics using libatomic_ops Improve usage of libatomic_ops for word size atomics
2014-11-25Merge branch 'sverk/cpool-search-improvement' into maintSverker Eriksson
OTP-12323 * sverk/cpool-search-improvement: erts: Add internal docs for super carrier and new cpool search. erts: Fix bug causing mbc to be deleted from cpool before it was inserted erts: Fix bug causing mbc removed from cpool to be used at pool entrance erts: Add pooled_list and traitor_list
2014-11-25erts: Fix port data memory allocation bugSverker Eriksson
for non-immediate port data >= sizeof(Eterm)*2 words.
2014-11-25Merge branch 'sverk/with-ssl-rpath/OTP-12316' into maintSverker Eriksson
* sverk/with-ssl-rpath/OTP-12316: erts,crypto: Add configure option --with-ssl-rpath
2014-11-25Merge branch 'lem/epmd_sd_notify/OTP-12321' into maintLukas Larsson
* lem/epmd_sd_notify/OTP-12321: epmd: Unify systemd autoconf macros usage epmd: Added systemd notify support to EPMD
2014-11-24epmd: Unify systemd autoconf macros usagePeter Lemenkov
Don't use both HAVE_SYSTEMD_DAEMON and HAVE_SYSTEMD_SD_DAEMON - use only the former one and remove the latter one entirely. Signed-off-by: Peter Lemenkov <[email protected]>
2014-11-24epmd: Added systemd notify support to EPMDPeter Lemenkov
Signed-off-by: Peter Lemenkov <[email protected]>
2014-11-24Merge branch 'lukas/erts/isfinite-fix/OTP-12268' into maintLukas Larsson
* lukas/erts/isfinite-fix/OTP-12268: erts: Use finite instead of isfinite with gcc
2014-11-24erts: Use finite instead of isfinite with gccLukas Larsson
Turns out that isfinite emits a function call and not an instruction in gcc, this makes estone float arith about 50-75% slower. finite emits the instruction so we use that instead.
2014-11-20erts,crypto: Add configure option --with-ssl-rpathSverker Eriksson
2014-11-18Merge branch 'siri/no-unicode-atoms/OTP-12172' into maintSiri Hansen
* siri/no-unicode-atoms/OTP-12172: Remove comments about unicode atoms in OTP 18
2014-11-12Merge branch 's1n4/zlib_doc_typo' into maintBruce Yinhe
* s1n4/zlib_doc_typo: Fix a typo in the zlib documentation
2014-11-11Remove comments about unicode atoms in OTP 18Siri Hansen
There was once a plan to implement support for unicode atoms in OTP 18. This plan has been stopped until further notice, and the information about this is now removed from the documentation.
2014-11-10Implement support for double word atomics using libatomic_opsRickard Green
2014-11-10Improve usage of libatomic_ops for word size atomicsRickard Green
Use AO_fetch_compare_and_swap*() when present
2014-11-10Fix a typo in the zlib documentationSina Samavati
2014-11-10Merge branch 'vinoski/dirty-nif-return-gc' into maintBruce Yinhe
OTP-12300 * vinoski/dirty-nif-return-gc: Fix gc-related problem with dirty NIFs
2014-11-07Merge branch 'lemenkov/expose_nif_version' into maintBruce Yinhe
OTP-12298 * lemenkov/expose_nif_version: Expose NIF version
2014-11-06erts: Add internal docs for super carrier and new cpool search.Sverker Eriksson
2014-11-06Merge branch 'vinoski/fix-smp-disable-with-ds/OTP-12295' into maintMarcus Arendt
* vinoski/fix-smp-disable-with-ds/OTP-12295: Fix "-smp disable" for emulator with dirty schedulers
2014-11-05Merge branch 'maint-17' into maintMarcus Arendt
Conflicts: OTP_VERSION
2014-11-05Merge branch 'lukas/erts/fix_undefined_behaviour/OTP-12290' into maintLukas Larsson
* lukas/erts/fix_undefined_behaviour/OTP-12290: erts: Fix ub in list_to_integer and bignum div
2014-11-05Merge branch 'lukas/erts/fdopen_non_bound_win32_fix/OTP-12289' into maintLukas Larsson
* lukas/erts/fdopen_non_bound_win32_fix/OTP-12289: erts: getsockname is not allowed on non-bound sockets
2014-11-04Merge branch 'rickard/activate-runq/OTP-12287' into ↵Rickard Green
rickard/maint-17/activate-runq/OTP-12287 * rickard/activate-runq/OTP-12287: Do not let non-empty run-queue prevent activation of scheduler Conflicts: erts/emulator/beam/erl_process.c
2014-11-04Do not let non-empty run-queue prevent activation of schedulerRickard Green
Conflicts: erts/emulator/beam/erl_process.c
2014-11-04Fix gc-related problem with dirty NIFsSteve Vinoski
Ensure that the return value from a dirty NIF call is made part of the GC rootset. Add a new regression test to nif_SUITE. Thanks to Daniel Goertzen for reporting the error and providing a test case, and to Sverker Eriksson for making test case reproducible and finding the fix.
2014-11-04Prepare releaseErlang/OTP
2014-11-04Merge branch 'sverk/cpool_fetch-dc_list-bug/OTP-12249' into maint-17Erlang/OTP
* sverk/cpool_fetch-dc_list-bug/OTP-12249: erts: Fix bug when delayed deallocated carrier is reused by cpool_fetch
2014-11-03Merge branch 'sverk/beam-ranges-bug/OTP-12273' into maintSverker Eriksson
* sverk/beam-ranges-bug/OTP-12273: erts: Fix bug in beam_ranges
2014-11-02Expose NIF versionPeter Lemenkov
This patch allows checking for NIF API version in a way similar to driver version. E.g. by calling erlang:system_info(nif_version). Signed-off-by: Peter Lemenkov <[email protected]>
2014-10-30erts: Mend run_erl to set windows size of terminal sent from to_erlSverker Eriksson
Need to include sys/ioctl.h for TIOCSWINSZ to be defined. Seems this was broken when refactoring run_erl for OSE in OTP 17.0.
2014-10-29Merge branch 'sverk/etp-check-beam-ranges' into maintSverker Eriksson
* sverk/etp-check-beam-ranges: erts: Add gdb command etp-check-beam-ranges
2014-10-29erts: Add gdb command etp-check-beam-rangesSverker Eriksson
2014-10-29erts: Fix bug in beam_rangesSverker Eriksson
Symptom: VM on OSX (darwin11.4.2) with +Meamin running sasl tests, crashing when init:reboot() does erlang:purge_module(installer). Problem: Off-by-one bug in beam_ranges:find_range, returning the wrong range if the 'end' of one module is the 'start' of the next. This is only possible if using sys_alloc (+Meamin) as our own allocators always put block headers between allocated payload data.