aboutsummaryrefslogtreecommitdiffstats
path: root/erts
AgeCommit message (Collapse)Author
2017-11-17Prepare releaseErlang/OTP
2017-11-17Merge branch 'rickard/node-mon-proc-exit-race/maint-20/OTP-14781' into maint-20Erlang/OTP
* rickard/node-mon-proc-exit-race/maint-20/OTP-14781: Fix triggering of node monitors
2017-11-17Merge branch 'john/erts/fix-close-eintr/OTP-14775' into maint-20Erlang/OTP
* john/erts/fix-close-eintr/OTP-14775: Remove invalid EINTR loop around close(2)
2017-11-16Fix triggering of node monitorsRickard Green
2017-11-13Remove invalid EINTR loop around close(2)John Högberg
Retrying close(2) on anything other than HP-UX is likely to close something entirely different. POSIX says that the state of the file descriptor is unspecified, and Linux/BSD guarantee that it's closed on return.
2017-11-09Update release notesErlang/OTP
2017-11-09Update version numbersErlang/OTP
2017-11-09Merge branch 'john/erts/fix-gunzip-eos/OTP-14730/ERL-507' into maint-20Erlang/OTP
* john/erts/fix-gunzip-eos/OTP-14730/ERL-507: Only apply EOS behaviors if there's pending data
2017-11-09Merge branch 'john/erts/msacc-dirty-schedulers/OTP-14707' into maint-20Erlang/OTP
* john/erts/msacc-dirty-schedulers/OTP-14707: Stop assuming that all schedulers are managed when updating msacc
2017-11-09Merge branch 'john/erts/misc-iovec-issues/OTP-14745/OTP-14750' into maint-20Erlang/OTP
* john/erts/misc-iovec-issues/OTP-14745/OTP-14750: Ignore empty binaries in enif_inspect_iovec Emasculate writable binaries on entering an iovec
2017-11-09Fix deflateParams on zlib 1.2.11John Högberg
1.2.11 started bailing when avail_out==0 regardless of whether there's anything to flush or not, and there's no point in adapting the old method since it was vulnerable to bugs in other zlib versions which updated the deflate parameters even on failure. The api_deflateParams test has been expanded accordingly, and two white-box cases in zip_usage has been updated to make fewer assumptions about the output; the validity of the compressed data is what matters, not whether it's exactly the same as the test vector.
2017-11-07Ignore empty binaries in enif_inspect_iovecJohn Högberg
2017-11-07Emasculate writable binaries on entering an iovecJohn Högberg
The lack of this caused serious data corruption when a binary was altered after entering the queue. This went unnoticed because it was never used without erlang:iolist_to_iovec, which always emasculates binaries.
2017-11-02Only apply EOS behaviors if there's pending dataJohn Högberg
2017-10-25Stop assuming that all schedulers are managed when updating msaccJohn Högberg
This fixes statistics_SUITE:msacc when dirty schedulers are used during the test.
2017-10-25Update release notesErlang/OTP
2017-10-25Update version numbersErlang/OTP
2017-10-25Merge branch 'lukas/erts/fix-cpu-bind-w-modifies-scheduler-avail/OTP-14694' ↵Erlang/OTP
into maint-20 * lukas/erts/fix-cpu-bind-w-modifies-scheduler-avail/OTP-14694: erts: Fix so that bind correct schedulers
2017-10-23erts: Fix so that bind correct schedulersLukas Larsson
When the cpu ids and scheduler ids don't match, the end schedulers could end up not being bound when they should be. example: > taskset -c 1-3 erl +S 4 +sbts > erlang:system_info(scheduler_bindings). {1,2,3,unbound} This fix makes it so that all cores are used to bind schedulers.
2017-10-11Add zlib:set_controlling_process/2John Högberg
2017-10-09Update release notesErlang/OTP
2017-10-09Update version numbersErlang/OTP
2017-10-09Merge branch 'sverker/bad-dist-msg-bug/ERIERL-80/OTP-14661' into maint-20Erlang/OTP
* sverker/bad-dist-msg-bug/ERIERL-80/OTP-14661: erts: Fix bug when detecting bad dist message Add distribution_SUITE:bad_dist_ext_size
2017-10-02erts: Fix bug when detecting bad dist messageSverker Eriksson
We can't just leave it in queue with dist_ext=NULL. Two symptoms seen: 1. 'receive' trying to deref dist_ext as NULL. 2. GC think it's a term and put THE_NON_VALUE in root set.
2017-10-02Add distribution_SUITE:bad_dist_ext_sizeSverker Eriksson
2017-10-02Prepare releaseErlang/OTP
2017-10-02Fix zlib merge snafuJohn Högberg
I accidentally merged a few fixes directly to maint-20 (and then to maint and master), instead of merging to maint and master and waiting for a patch to merge it into maint-20, leaving the related tickets dangling. This commit does nothing beyond getting the tickets (and their release notes) into the next patch.
2017-09-29Fix gunzip/1 of concatenated gzip filesJohn Högberg
Quoting RFC 1952: "A gzip file consists of a series of "members" (compressed data sets). [...] The members simply appear one after another in the file, with no additional information before, between, or after them."
2017-09-29Fix minor incompatibilities in inflate behaviorJohn Högberg
When presented with multiple valid but concatenated streams, the old driver returned an empty result once the end of the first stream was reached, and kept doing so even if fed new data. The new driver/NIF returned a data_error instead. zlib:inflateInit/3 has been added to control this behavior, but is not yet ready for public use.
2017-09-22Update release notesErlang/OTP
2017-09-22Update version numbersErlang/OTP
2017-09-22Correctly append sub-binaries in iolist_to_iovecJohn Högberg
The byte_offset of sub-binaries wasn't taken into account for ProcBins, subtly ruining the results. The test suite didn't catch it since it didn't check for sub-binaries in particular, and only checked for equality between variations -- not whether the output was equal to the input.
2017-09-20erts, stdlib: Fix xmllint warningHans Bolinder
2017-09-15Merge branch 'sverker/on_load-on_load-bug/OTP-14612' into maintSverker Eriksson
* sverker/on_load-on_load-bug/OTP-14612: erts: Fix 'on_load' tracing bug for modules with -on_load code_SUITE:on_load_trace_on_load
2017-09-15Merge pull request #1566 from bjorng/bjorn/erts/fix-existing-atom-doc/ERL-453Björn Gustavsson
Document that the compiler may optimize away atoms OTP-14614
2017-09-14Merge branch 'maint-20' into maintPéter Dimitrov
* maint-20: Updated OTP version Update release notes Update version numbers inets: httpd correct server_name environment value inets: httpd - Add chunk handling of client data inets: Restore old behavior when parsing "+" inets: prepare for release
2017-09-14Document that the compiler may optimize away atomsBjörn Gustavsson
The following code could fail in the call to list_existing_atom/1: String = atom_to_list(some_atom), Atom = list_to_existing_atom(String) because the compiler will rewrite the code to: String = "some_atom", Atom = list_to_existing_atom(String) If some_atom is not used in another place, it will not exist. The compiler could be updated to preserve the atom in this simple case, but it would be hard to make sure that the compiler never loses atoms that exist in the source text. It also difficult to imagine a real world use case where this would be a problem. If an atom is mentioned only in a way that the compiler can optimize away, is there really any need to create the atom at all in list_to_existing_atom/1? Therefore, it is better to place the responsibility that the atom exists on the user of list_to_existing_atom/1. Update the documentation to mention that the compiler may optimize away atoms. https://bugs.erlang.org/browse/ERL-453
2017-09-14Merge pull request #1549 from ggcampinho/fix-move-cursorDan Gudmundsson
Consider ANSI escape codes on cp_pos_to_col
2017-09-13Merge branch 'sverker/19/on_load-on_load-bug/OTP-14612' into ↵Sverker Eriksson
sverker/on_load-on_load-bug/OTP-14612
2017-09-13erts: Fix 'on_load' tracing bug for modules with -on_loadSverker Eriksson
Symptom: VM crash when erlang:trace_pattern(on_load, ..) is set and module with -on_load is loaded. Problem: Tracing and -on_load clash in their use of Export.beam[1] Solution: Do not do call set_default_trace_pattern in finish_loading_1 for modules with -on_load. finish_after_on_load_2 will do that anyway.
2017-09-13Fix del_chars not considering wide chars and update buffer length before ↵Glauber Campinho
calling write_buf After deleting the chars the function `del_chars` was considering the code points to move the cursor back and not the graphemes
2017-09-13Update release notesErlang/OTP
2017-09-13Update version numbersErlang/OTP
2017-09-13Merge branch 'sverker/20/binary_to_atom-utf8-crash/ERL-474/OTP-14590' into ↵Erlang/OTP
maint-20 * sverker/20/binary_to_atom-utf8-crash/ERL-474/OTP-14590: erts: Fix crash in binary_to_atom/term for invalid utf8
2017-09-12Merge branch 'sverker/ets-fix-assert-fix' into maintSverker Eriksson
* sverker/ets-fix-assert-fix: erts: Fix faulty ASSERT of table fixation counter
2017-09-12Merge branch 'sverker/valgrind-fixes/OTP-14609' into maintSverker Eriksson
* sverker/valgrind-fixes/OTP-14609: erts: Suppress false memory leak for dlerror [ct] Cleanup and rename purify related functions as valgrind Revert "remove unused purify functions" erts: Fix memory leak when sending to terminating port erts: Fix harmless use of uninitialised value
2017-09-12Merge branch 'lukas/ct/ts_abort_on_compilation_fail' into maintLukas Larsson
* lukas/ct/ts_abort_on_compilation_fail: erts: Fix leaking of fds in iovec_SUITE ts: Don't test apps that are not available asn1: Fix test suite deprecated functions ct: ts:run now abort the test run on compilation failure
2017-09-12erts: Fix leaking of fds in iovec_SUITELukas Larsson
2017-09-11Merge branch 'lukas/erts/fix_warnings' into maintLukas Larsson
* lukas/erts/fix_warnings: Fix some clang warnings Fix unused-functions warnings
2017-09-11Fix some clang warningsLukas Larsson