Permalink
Commits on Jan 17, 2017
  1. Merge branch 'ingela/ssl/hs-stream/OTP-14138' into maint

    * ingela/ssl/hs-stream/OTP-14138:
      ssl: Handle really big handshake packages
    IngelaAndin committed Jan 17, 2017
  2. ssl: Handle really big handshake packages

    If a handshake message is really big it could happen that the ssl
    process would hang due to failing of requesting more data from the
    socket. This has been fixed.
    
    Also added option to limit max handshake size. It has a default
    value that should be big enough to handle normal usage and small
    enough to mitigate DoS attacks.
    IngelaAndin committed Dec 22, 2016
Commits on Jan 16, 2017
Commits on Jan 13, 2017
  1. Merge pull request #1261 from smangelsdorf/default_attrs_bug

    Include explicit attrs when default_attrs=true
    lthor committed on GitHub Jan 13, 2017
Commits on Jan 12, 2017
  1. Merge branch 'hasse/stdlib/fix_anno_types/OTP-14131' into maint

    * hasse/stdlib/fix_anno_types/OTP-14131:
      stdlib: Correct signatures of functions in erl_parse
    uabboli committed Jan 12, 2017
  2. Merge pull request #1305 from bjorng/bjorn/travis-dialyzer

    Travis: Simplify running of dialyzer
    bjorng committed on GitHub Jan 12, 2017
  3. Merge branch 'rickard/ds-fixes' into maint

    OTP-14122
    
    * rickard/ds-fixes:
      Fix call time tracing with dirty schedulers
    rickard-green committed Jan 12, 2017
  4. Updated OTP version

    Erlang/OTP committed Jan 12, 2017
  5. Prepare release

    Erlang/OTP committed Jan 12, 2017
  6. Merge branch 'sverker/make-export-fun-race/OTP-14144' into maint-19

    * sverker/make-export-fun-race/OTP-14144:
      erts: Fix race bug between export fun creation and code loading
    Erlang/OTP committed Jan 12, 2017
  7. Travis: Simplify running of dialyzer

    Now that dialyzer has been optimized for memory usage,
    we can combine the dialyzer invocations that use the same
    options.
    bjorng committed Jan 12, 2017
  8. erts: Fix race bug between export fun creation and code loading

    Symptom: SEGV crash on ARM in delete_code() -> export_list().
    Could probably happen on other machines as well.
    
    Problem: Staging export table was iterated in an unsafe way
    while an entry was added for a new export fun.
    
    Solution: Correct write order and some memory barriers.
    sverker committed Jan 12, 2017
  9. Merge branch 'hasse/dialyzer/memory_opt/OTP-14126' into maint

    * hasse/dialyzer/memory_opt/OTP-14126:
      dialyzer: Compact 'file' annotations in Core code
      dialyzer: Try to reduce memory usage
      dialyzer: Use less memory when translating contracts
      dialyzer: Use maps instaed of dict
      dialyzer: Use maps instead of dict for module contracts map
      dialyzer: Compress a few more ETS tables
      dialyzer: Optimize memory consumption
      dialyzer: Reduce memory consumption during 'remote' phase
      dialyzer: Update code for finding parallelism
      compiler: Do not spawn process when dialyzing
      dialyzer: Reduce ETS usage during the typesig phase
      dialyzer: Optimize graph condensation
      dialyzer: Do not send full PLTs as messages
    uabboli committed Jan 12, 2017
Commits on Jan 11, 2017
  1. Merge branch 'rickard/nif-call-time-trace-bug' into maint

    OTP-14136
    
    * rickard/nif-call-time-trace-bug:
      Fix call_time trace for NIFs
    rickard-green committed Jan 11, 2017
  2. Merge branch 'rickard/abandoned-heap-bugs' into maint

    OTP-14134
    OTP-14135
    
    * rickard/abandoned-heap-bugs:
      Fix issues with abandoned heap
    rickard-green committed Jan 11, 2017
  3. Merge branch 'rickard/test-fix' into maint

    * rickard/test-fix:
      Fix processes() BIF test cases
    rickard-green committed Jan 11, 2017
  4. Merge branch 'rickard/debug-fix' into maint

    * rickard/debug-fix:
      Fix faulty assertion
    rickard-green committed Jan 11, 2017
  5. Merge branch 'rickard/crashdump-timer-fix' into maint

    OTP-14133
    
    * rickard/crashdump-timer-fix:
      Fix printout of timer data in crash dump
    rickard-green committed Jan 11, 2017
  6. Merge branch 'siri/ct/add_app_tests' into maint

    * siri/ct/add_app_tests:
      Add ct_default_gl to common_test.app.src
      [ct] Add tests for .app and .appup files
    sirihansen committed Jan 11, 2017
  7. dialyzer: Compact 'file' annotations in Core code

    File annotations {file, File} in Core Erlang code is replaced by
    {file, FakeFile}, where FakeFile is "0", "1", ..., in order to save
    memory. When a warning message is created, FakeFile is translated to
    the original File (a bit awkward but easy to do).
    
    The Core code stored in ETS tables needs less space, but more
    important is that a less heap memory is used in the dataflow,
    warnings, and typesig phases, allowing more parallelism.
    uabboli committed Jan 5, 2017
  8. dialyzer: Try to reduce memory usage

    The translation from forms to types is done in a separate process
    in an attempt to reduce peak memory usage.
    
    Expect further optimizations as it is probably not feasible
    in the long run to keep all type information on the heap.
    uabboli committed Jan 1, 2017
  9. dialyzer: Optimize memory consumption

    Some SCC info is no longer cached. It reduces the peak memory
    consumption of workers during the typesig phase, and seems to cost
    very little time.
    uabboli committed Dec 9, 2016
  10. dialyzer: Reduce memory consumption during 'remote' phase

    The cache used for speeding up the translation from forms to types is
    no longer global, but reset per module. The peak memory consumption
    is reduced, and the added time seems to be small.
    uabboli committed Dec 19, 2016
  11. dialyzer: Update code for finding parallelism

    Using erlang:system_info(schedulers_online) for determining
    parallelism is recommended by OTP experts. It takes care of "+S 4:1"
    and simultaneous loading of HiPE code.
    uabboli committed Dec 15, 2016
  12. compiler: Do not spawn process when dialyzing

    Memory consumption is reduced during the compilation phase by keeping
    the Core parse tree shared. In particular the file annotation takes a
    lot of memory when not shared.
    uabboli committed Dec 15, 2016
  13. dialyzer: Reduce ETS usage during the typesig phase

    The condensed graph of SCCs occupies less ETS memory. A table
    translating to and from SCC to a unique integer is introduced.
    uabboli committed Dec 20, 2016
  14. dialyzer: Optimize graph condensation

    By not using ETS when calculating the condensation of graphs, peak
    heap memory consumption is reduced.
    uabboli committed Dec 13, 2016
  15. dialyzer: Do not send full PLTs as messages

    The mini PLT is extended to hold all data of the full PLT, and the
    full PLT is restored when needed (for storing the PLT on file).
    uabboli committed Dec 6, 2016
  16. Merge branch 'hasse/dialyzer/fix_opaque_parms/OTP-14130' into maint

    * hasse/dialyzer/fix_opaque_parms/OTP-14130:
      dialyzer: Fix check of parameterized opaque types
    uabboli committed Jan 11, 2017
Commits on Jan 10, 2017