aboutsummaryrefslogtreecommitdiffstats
path: root/erts
AgeCommit message (Collapse)Author
2014-09-04erts: Correct conversion of MIN_SMALL numeral to fixnumSverker Eriksson
list_to_integer and binary_to_integer returned un-normalized bignum for -134217728 on 32-bit and -576460752303423488 on 64-bit. Thanks to Jesper Louis Andersen, Mikael Pettersson and Anthony Ramine for report, initial patch and optimization suggestion.
2014-08-14Merge branch 'lukas/erts/fix_neg_of_int64_min/OTP-12097' into maintLukas Larsson
* lukas/erts/fix_neg_of_int64_min/OTP-12097: erts: Fix neg int overflow when sint is min size
2014-08-14Merge branch 'nox/clang-ubsan/OTP-12097' into maintLukas Larsson
* nox/clang-ubsan/OTP-12097: Properly handle SINT_MIN in small_to_big() Use offsetof() in io.c
2014-08-11Merge branch 'rickard/nosuspend-bug/OTP-12082' into maintRickard Green
* rickard/nosuspend-bug/OTP-12082: Fix build of test port program Update Makefile.src Add async_ports test Fix abort of nosuspend-tasks in erts_port_task_schedule()
2014-08-08erts: Fix neg int overflow when sint is min sizeLukas Larsson
When INT64_MIN is the value of a Sint64 we have to first cast it to an Uint64 before negating it. Otherwise we get an integer overflow which is undefined behaviour and in gcc 4.9 this results in -0 instead of -9223372036854775808 in gcc 4.8.
2014-08-08Merge branch 'tuncer/sanitizers' into maintBruce Yinhe
OTP-12081 * tuncer/sanitizers: Implement --enable-sanitizers[=sanitizers]
2014-08-08Merge branch 'lukas/erts/malloc_failure_errors/OTP-12085' into maintLukas Larsson
* lukas/erts/malloc_failure_errors/OTP-12085: erts: Print error reason when malloc fails
2014-08-06Fix build of test port programRickard Green
2014-08-06Merge branch 'lukas/erts/fd_bind_tc_fix/OTP-12061' into maintLukas Larsson
* lukas/erts/fd_bind_tc_fix/OTP-12061: erts: Fix tc and docs after {fd,FD} bind change
2014-08-06erts: Fix tc and docs after {fd,FD} bind changeLukas Larsson
The sha of the original change is 52810718b
2014-08-06erts: Print error reason when malloc failsLukas Larsson
2014-08-05Update Makefile.srckudryashov-sv
2014-08-05Add async_ports testSergey Kudryashov
2014-08-05Fix abort of nosuspend-tasks in erts_port_task_schedule()Rickard Green
The counter for the amount of outstanding data in the port queue became inconsistent when aborting nosuspend-signals in erts_port_task_schedule(). This since the counter was subtracted by the data size of the signal although the data size had never been added to it. This inconsistency caused the port queue to remain in a busy state forever.
2014-08-05Merge branch 'derek121/epmd-docs-2' into maintBruce Yinhe
OTP-12052 * derek121/epmd-docs-2: Fix minor grammatical errors in epmd docs
2014-07-25fix xml file merge messupHenrik Nord
2014-07-24Merge branch 'maint-r16' into maintHenrik Nord
Conflicts: erts/doc/src/notes.xml erts/preloaded/ebin/prim_inet.beam erts/vsn.mk lib/kernel/doc/src/notes.xml lib/kernel/vsn.mk
2014-07-22Update release notesErlang/OTP
2014-07-22erts: Fix inet close on prebound fdsBjörn-Egil Dahlberg
Inet close must remove fd from select/poll without closing the fd.
2014-07-22kernel: When doing an fdopen we now also bind the fd to the specified addr/portLukas Larsson
2014-07-21Fix minor grammatical errors in epmd docsDerek Brown
Small grammar changes.
2014-07-15Merge branch 'egil/lcnt-histogram/OTP-12059' into maintBjörn-Egil Dahlberg
2014-07-12Implement --enable-sanitizers[=sanitizers]Tuncer Ayaz
Similar to debugging with Valgrind, it's very useful to enable -fsanitize= switches to catch bugs at runtime. $ ./configure Result: no sanitizer enabled $ ./configure --enable-sanitizers Result: -fsanitize=address,undefined $ ./configure --enable-sanitizers=address,thread,undefined Result: -fsanitize=address,thread,undefined $ ./configure --enable-sanitizers=undefined Result: -fsanitize=undefined
2014-07-11Merge branch 'sverk/alloc-size-overflow' into maintSverker Eriksson
* sverk/alloc-size-overflow: erts: Fix size overflow bugs in memory allocation
2014-07-11Merge branch 'vinoski/vinoski/erl-sdio-option' into maintBruce Yinhe
OTP-12052 * vinoski/vinoski/erl-sdio-option: add missing description for erl +SDio option
2014-07-11Merge branch 'maint-17' into maintErland Schönbeck
2014-07-10Prepare releaseErlang/OTP
2014-07-10Merge branch 'nox/filelib-wildcard-broken-link' into maint-17Erlang/OTP
* nox/filelib-wildcard-broken-link: Update stdlib appup file Update runtime dependencies Update preloaded Add tests of filelib and symlinks Fix handling of broken symlinks in filelib Conflicts: erts/preloaded/ebin/erl_prim_loader.beam
2014-07-09erts: Add histogram to lcntBjörn-Egil Dahlberg
2014-07-09Update preloadedSiri Hansen
2014-07-09Fix handling of broken symlinks in filelibAnthony Ramine
This fixes a bug introduced in f11aabdc9fec593c31e6c4f3fa25c1707e9c35df where filelib:eval_read_file_info/2 was made to use file:read_link_info/1 to never follow symlinks. This fixed wildcard/1 but broke every other function using eval_read_file_info/2. Reported-by: Louis-Philippe Gauthier Reported-by: Danil Zagoskin
2014-07-02erlang:statistics(runtime) returns millisecondsMagnus Henoch
Specify in the documentation that erlang:statistics(runtime) returns milliseconds.
2014-07-02Properly handle SINT_MIN in small_to_big()Anthony Ramine
As there is no overflow for signed integers, -SINT_MIN is undefined behaviour and the cast to unsigned needs to happen before negation. SINT_MIN denotes the minimum value that can be stored in the Sint type. beam/big.c:1512:6: runtime error: negation of -9223372036854775808 cannot be represented in type 'Sint' (aka 'long'); cast to an unsigned type to negate this value to itself
2014-07-02Use offsetof() in io.cAnthony Ramine
This silences the following UBSan errors: beam/io.c:7131:27: runtime error: member access within null pointer of type 'ErlDrvSysInfo' beam/io.c:7140:20: runtime error: member access within null pointer of type 'ErlDrvSysInfo' beam/io.c:7166:20: runtime error: member access within null pointer of type 'ErlDrvSysInfo' beam/io.c:7174:20: runtime error: member access within null pointer of type 'ErlDrvSysInfo'
2014-07-01Prepare releaseErlang/OTP
2014-06-30vxworks: Fix SYSTEMD_DAEMON_LIBS in configureBjörn-Egil Dahlberg
2014-06-30erts: Separate ethread inlining from ethread.hBjörn-Egil Dahlberg
The commit adb5dc0090bc419e2c4c1250653badbddeb6263b (ETHR_FORCE_INLINE) broke some platforms without adequate thread support.
2014-06-27erts: Fix size overflow bugs in memory allocationSverker Eriksson
2014-06-21add missing description for erl +SDio optionSteve Vinoski
Add explanatory text for the erl +SDio option, which is used to set the number of dirty I/O schedulers.
2014-06-19Prepare releaseErlang/OTP
2014-06-18Merge branch 'egil/fix-doc-links' into maintBjörn-Egil Dahlberg
* egil/fix-doc-links: doc: Fix broken links in Installation Guide doc: Fix broken links
2014-06-18Update preloaded modulesMagnus Lidén
2014-06-18Merge branch 'siri/cuddle-with-tests' into maintSiri Hansen
* siri/cuddle-with-tests: [upgrade_SUITE] Set previous major to r16b
2014-06-17doc: Fix broken links in Installation GuideBjörn-Egil Dahlberg
2014-06-17doc: Fix broken linksBjörn-Egil Dahlberg
2014-06-17Merge branch 'bjorn/erts/fix-prim_eval' into maintBjörn Gustavsson
* bjorn/erts/fix-prim_eval: add_abstract_code: Remove 'from_asm' option
2014-06-16Merge branch 'jjhoo/mingw_compile_fix_forceinline/OTP-11945' into maintRickard Green
* jjhoo/mingw_compile_fix_forceinline/OTP-11945: Fix redefinition of ETHR_FORCE_INLINE
2014-06-16Fix redefinition of ETHR_FORCE_INLINERickard Green
2014-06-13Merge branch 'sverk/ethr_aux-cache-align-bug' into maintSverker Eriksson
* sverk/ethr_aux-cache-align-bug: erts: Fix cache line alignment bug for ts_event_pool
2014-06-13add_abstract_code: Remove 'from_asm' optionBjörn Gustavsson
The purpose of add_abstract_code is to give Dialyzer some abstract code so that it will not fail fatally when analysing prim_eval which was compiled from BEAM assembly. But if Dialyzer were to pass along the compiler options that the module was compiled with when translating the abstract code to Core Erlang, the 'from_asm' option would crash the compilation. Thus, since we are already cheating, we should cheat a little bit more and also remove the 'from_asm' option.