aboutsummaryrefslogtreecommitdiffstats
path: root/lib
AgeCommit message (Collapse)Author
2018-02-20Merge PR-1716 from sverker/slash-in-modules/ERL-564/OTP-14933Sverker Eriksson
Reject loading modules with slash in name
2018-02-20Fix regression introduced in d468fcbb / OTP-14816John Högberg
The ~p format specifier made file:consult/1 hysterically slow on one of our test machines that had a unicode character in the root of the code path; all paths were printed as lists and indented with way too much whitespace. Using ~w avoids this issue by never indenting.
2018-02-20observer: Refactor get_schedulerinfo1Sverker Eriksson
to prepare for dirty schedulers with common run queues
2018-02-20erts,observer: Add more port info to crash dumpSverker Eriksson
2018-02-20erts: Add binary vheap sizes to crash dumpSverker Eriksson
2018-02-20ssh: No error message for signal killHans Nilsson
2018-02-20ssh: Dont repeat supervisor defaults in map fieldsHans Nilsson
2018-02-20ssh: Move starting of channel child to ssh_channel_supHans Nilsson
2018-02-20ssh: Test case for sup tree when shell server proc times outHans Nilsson
2018-02-19Remove unused cerl_messagean moduleJosé Valim
2018-02-19Merge branch 'maint'Péter Dimitrov
* maint: inets: Prepare for release inets: Fix httpc crash on keep-alive connections Change-Id: If066f788c3fcb8b5c5a943892d3c03c201590e40
2018-02-19Merge branch 'peterdmv/inets/httpc_manager_crash/ERL-559/OTP-14908' into maintPéter Dimitrov
* peterdmv/inets/httpc_manager_crash/ERL-559/OTP-14908: inets: Prepare for release inets: Fix httpc crash on keep-alive connections Change-Id: I5900a425ed2b9034b1a1bf6040ee45e068438a83
2018-02-19ssl: Prepare for releaseIngela Anderton Andin
2018-02-19ssl: Backport PR-1709Ingela Anderton Andin
2018-02-19Merge branch 'maint'Lukas Larsson
2018-02-19stdlib: Correct documentation typoMartin Hässler
2018-02-17Inline more type test BIFs in HiPEMichał Muskała
2018-02-16Merge pull request #1700 from bjorng/bjorn/compiler/beam_blockBjörn Gustavsson
Combine blocks when running beam_block the second time
2018-02-15Merge branch 'maint'Hans Bolinder
* maint: dialyzer: Fix a crash
2018-02-15kernel: Reject load of module names with slashSverker Eriksson
or backslash on Windows. Purpose: Prevent tricks to get hostile code running.
2018-02-14beam_block: Combine blocks when running beam_block the second timeBjörn Gustavsson
1a029efd1ad47f started to run the beam_block pass a second time, but it did not attempt to combine adjacent blocks. Combining adjacent blocks leads to many more opportunities for optimizations. After doing some diffing in generated code, it turns out that there is no benefit for beam_split to split out line instructions from blocks. It seems that the only reason it was done was to slightly simplify the implementation of the no_line_info option in beam_clean.
2018-02-14Disable CSE for floating point operationsBjörn Gustavsson
As a preparation for combining blocks before running beam_block for the second time, disable CSE for floating point operations because it will generate invalid code.
2018-02-14dialyzer: Fix a crashHans Bolinder
2018-02-14Merge branch 'maint'Björn Gustavsson
* maint: Check that the stack is initialized when an exception may occur
2018-02-14Merge pull request #1712 from bjorng/bjorn/compiler/beam_validatorBjörn Gustavsson
Check that the stack is initialized when an exception may occur
2018-02-14Merge pull request #1713 from bjorng/bjorn/compiler/fix-unsafe-allocateBjörn Gustavsson
Fix unsafe use of 'allocate' where 'allocate_zero' should be used
2018-02-13stdlib: Update uri_string documentation (HTML 5.2)Péter Dimitrov
- Original link to HTML 5.0 specification was broken as the document was moved when later revisions were released. - Form-urlencoded query string handling conforms to the HTML 5.2 specification that references WHATWG URL (10 Jan 2018). - HTML 5.2 does not specify handling of non-UTF-8 form-urlencoded query strings, but it is still supported as described in HTML 5.0. Change-Id: I44603bb501530b16651ecbb9a26ea64e119f83d9
2018-02-13Merge branch 'maint'Sverker Eriksson
* maint: Updated OTP version Update release notes Update version numbers kernel: Add os:cmd/2 with max_size option # Conflicts: # OTP_VERSION # lib/kernel/doc/src/os.xml # lib/kernel/src/os.erl
2018-02-13Merge branch 'sverker/master/alloc-n-migration/ERIERL-88'Sverker Eriksson
2018-02-13Merge branch 'maint-20' into maintSverker Eriksson
* maint-20: Updated OTP version Update release notes Update version numbers erts: Add system_flags(erts_alloc,"+M?sbct *") erts: Add age order first fit allocator strategies erts: Refactor erl_ao_firstfit_alloc erts: Add migration options "acnl" and "acfml" kernel: Add os:cmd/2 with max_size option erts: Add more stats for mbcs_pool erts: Fix alloc_SUITE:migration stdlib: Make ets_SUITE memory check try again erts: Improve carrier pool search erts: Improve alloc_SUITE:migration erts: Refactor carrier dealloc migration
2018-02-13public_key: Use uri_stringPéter Dimitrov
- Remove dependency to inets Change-Id: I5f59d21079a068d9ec5e13da26007150d8bc6b04
2018-02-13observer: Use uri_stringPéter Dimitrov
- Remove dependency to inets Change-Id: I63eaa69573e5b7fb7d12b0553026a89d16f3fd22
2018-02-13Stop returning V4MAPPED addressesRaimo Niskanen
2018-02-13Merge branch 'maint'John Högberg
2018-02-13Merge branch 'john/tools/fix-lcnt-server-crash/PR-1711/OTP-14912' into maintJohn Högberg
2018-02-13Merge branch 'john/tools/autostart-lcnt-server/ERIERL-134/OTP-14913' into maintJohn Högberg
2018-02-13Don't crash lcnt server if information/0 is called before collect/0Péter Gömöri
2018-02-12Update release notesErlang/OTP
2018-02-12Update version numbersErlang/OTP
2018-02-12Merge branch 'sverker/maint-20/alloc-n-migration/ERIERL-88' into maint-20Erlang/OTP
* sverker/maint-20/alloc-n-migration/ERIERL-88: erts: Add system_flags(erts_alloc,"+M?sbct *") erts: Add age order first fit allocator strategies erts: Refactor erl_ao_firstfit_alloc erts: Add migration options "acnl" and "acfml" erts: Add more stats for mbcs_pool erts: Fix alloc_SUITE:migration stdlib: Make ets_SUITE memory check try again erts: Improve carrier pool search erts: Improve alloc_SUITE:migration erts: Refactor carrier dealloc migration
2018-02-12Merge 'sverker/maint-20/alloc-n-migration/ERIERL-88'Sverker Eriksson
into 'sverker/master/alloc-n-migration/ERIERL-88'
2018-02-12Merge 'sverker/maint-19/alloc-n-migration/ERIERL-88'Sverker Eriksson
into 'sverker/maint-20/alloc-n-migration/ERIERL-88' OTP-14915 OTP-14916 OTP-14917 OTP-14918
2018-02-12Automatically start lcnt server on first useJohn Högberg
lcnt:collect is documented as implicitly starting the lcnt server but didn't do so prior to this commit. I've decided to extend this behavior to all operations as the overhead is negligible and it's a bit more convenient to use.
2018-02-12Fix unsafe use of 'allocate' where 'allocate_zero' should be usedBjörn Gustavsson
The more aggressive optimizations of 'allocate_zero' introduced in cb6fc15c35c7e could produce unsafe code such as the following: {allocate,0,1}. {bif,element,{f,0},[{integer,1},{x,0}],{x,0}}. The code is not safe because if element/2 fails, the runtime system may scan the stack and find garbage that looks like a catch tag, and would most probably crash. Fix the problem by making beam_utils:is_killed/3 be more conservative when asked whether a Y register will be killed. Also fix an unsafe move upwards of an allocation instruction in beam_block.
2018-02-12Merge 'sverker/carrier-migration-improvements'Sverker Eriksson
into 'sverker/maint-19/alloc-n-migration/ERIERL-88'
2018-02-12erts: Add age order first fit allocator strategiesSverker Eriksson
ageffcaoff: Age First Fit Carrier, Address Order First Fit (within carrier) ageffcbf : Age First Fit Carrier, Best Fit (within carrier) ageffcaobf: Age First Fit Carrier, Address Order Best Fit (within carrier) Prefer old carriers, the older the better.
2018-02-12Merge branch 'maint'Ingela Anderton Andin
2018-02-12Merge pull request #1709 from ↵Ingela Andin
dumbbell/dumbbell/ssl/fix-active-once-dropped-when-handling-alert/ERL-562 ssl: Fix alert handling so that unexpected messages are logged and alerted correctly
2018-02-09Check that the stack is initialized when an exception may occurBjörn Gustavsson
Strengthen beam_validator to check that the stack is initialized when an instruction with an {f,0} operand is executed. For example, the following code sequence: {allocate,0,1}. {bif,element,{f,0},[{integer,1},{x,0}],{x,0}}. should not be accepted because the stack may be scanned if element/2 fails. That could cause a crash or other undefined behavior if garbage on the stack looks like a catch tag.
2018-02-09ssl: Add the unexpected message to #alert{}Jean-Sébastien Pédron
... in handle_common_event(), instead of passing it to handle_own_alert() after wrapping it in a tuple with `StateName` (i.e. `{StateName, Msg}`). The `StateName` is passed to handle_normal_shutdown() and to alert_user(). The latter has a clause matching it against `connection`. Unfortunately, when the argument was in fact `{StateName, Msg}`, another clause was executed which dropped the `active` flag value and forced it to `false`, even if the state was actually `connection`. It meant that later in send_or_reply(), the alert was not propagated to the user, even though it should (`active` set to `true` or `once`). Now that handle_common_event() always passes the actual `StateName`, the problem is fixed. ERL-562