Skip to content
Commits on Nov 22, 2010
  1. @rickard-green

    Merge branch 'ta/fix-ethread-void-return' into dev

    rickard-green committed
    * ta/fix-ethread-void-return:
      ethread: do not return from void ethr_atomic_set_relb
    
    OTP-8944
  2. @bjorng

    Merge branch 'ks/init-spec-fixes' into dev

    bjorng committed
    * ks/init-spec-fixes:
      init: Fix two erroneous specs
  3. @rickard-green

    Merge branch 'rickard/thr-spec-inet-buf/OTP-8916' into dev

    rickard-green committed
    * rickard/thr-spec-inet-buf/OTP-8916:
      Remove tight restrictions on some options
      Thread specific inet driver buffer stack
Commits on Nov 18, 2010
  1. @weiss @bjorng
  2. @rickard-green

    Remove tight restrictions on some options

    rickard-green committed
    Remove tight restrictions on the high_watermark, low_watermark, and
    buffer options.
  3. @rickard-green

    Thread specific inet driver buffer stack

    rickard-green committed
    The inet driver internal buffer stack implementation
    has been rewritten in order to reduce lock contention.
  4. @rickard-green

    Merge branch 'rickard/cpu-groups/OTP-8861' into dev

    rickard-green committed
    * rickard/cpu-groups/OTP-8861:
      Generalize reader groups
      Move cpu topology functionality into erl_cpu_topology.[ch]
      Do not use more reader groups for schedulers than schedulers
    
    Conflicts:
    	erts/emulator/beam/erl_init.c
  5. @rickard-green

    Generalize reader groups

    rickard-green committed
    Reader groups have been generalized to cpu groups which can be
    used for implementing reader groups, but also for implementing
    other functionality in the future.
  6. @rickard-green
  7. @rickard-green

    Do not use more reader groups for schedulers than schedulers

    rickard-green committed
    When the runtime system had fewer schedulers than logical processors,
    the system could get an unnecessarily large amount reader groups.
  8. @rickard-green

    Merge branch 'rickard/sys_schedule_debug' into dev

    rickard-green committed
    * rickard/sys_schedule_debug:
      Verify that no outstanding I/O exist when checking for I/O in debug build
  9. @rickard-green
  10. @rickard-green

    Merge branch 'pg/freebsd-cpu-affinity-and-topology' into dev

    rickard-green committed
    * pg/freebsd-cpu-affinity-and-topology:
      Add support for CPU affinity & topology detection on FreeBSD 8
    
    OTP-8939
  11. @rickard-green

    Merge branch 'pg/fix-system_info-cpu_topology-segfault' into dev

    rickard-green committed
    * pg/fix-system_info-cpu_topology-segfault:
      Fix crash with erlang:system_info({cpu_topology,junk})
    
    OTP-8914
  12. @pguyot @rickard-green
  13. @rickard-green

    Merge branch 'rickard/sched-misc/OTP-8932' into dev

    rickard-green committed
    * rickard/sched-misc/OTP-8932:
      Fix erts_schedule_misc_op() so it can be called from arbitrary threads
  14. @rickard-green

    Merge branch 'rickard/halfword-fix/OTP-8910' into dev

    rickard-green committed
    * rickard/halfword-fix/OTP-8910:
      Fix ERL_DRV_INT and ERL_DRV_UINT in halfword emulator
  15. @rickard-green

    Merge branch 'rickard/dist/OTP-8901' into dev

    rickard-green committed
    * rickard/dist/OTP-8901:
      Be less eager to set dist entry in busy state
  16. @rickard-green

    Merge branch 'rickard/tsd-get/OTP-8889' into dev

    rickard-green committed
    * rickard/tsd-get/OTP-8889:
      Fix erl_drv_tsd_get() and enif_tsd_get()
  17. @rickard-green

    Merge branch 'rickard/configure-help/OTP-8859' into dev

    rickard-green committed
    * rickard/configure-help/OTP-8859:
      Cleanup configure help texts
    
    Conflicts:
    	erts/aclocal.m4
  18. @rickard-green

    Merge branch 'rickard/pre-pentium4-compat/OTP-8847' into dev

    rickard-green committed
    * rickard/pre-pentium4-compat/OTP-8847:
      Allow usage of libatomic_ops when other compilers than gcc are used
      Add pre pentium 4 compatibilty configure test
      Fix --enable-ethread-pre-pentium4-compatibility
Commits on Nov 15, 2010
  1. @dgud

    Merge branch 'dgud/erts/windows-vs10-express' into dev

    dgud committed
    * dgud/erts/windows-vs10-express:
      Fix manifest files
Commits on Nov 12, 2010
  1. @dgud

    Fix manifest files

    dgud committed
    It seems windows have updated manifest files in VS2010 which
    caused the erlang programs to contain duplicate requestedExecutionLevel
    entries, which is not allowed.
    
    This patch removes the microsoft entry, before adding our own which
    is known to work with XP and Vista.
  2. @RaimoNiskanen

    Merge branch 'raimo/inet-getifaddrs/OTP-8926' into dev

    RaimoNiskanen committed
    * raimo/inet-getifaddrs/OTP-8926:
      Write documentation
      Delete decommented code
      Add testcase
      Implement inet:getifaddrs/0 on Windows
      Implement basic inet:getifaddrs/0
      Fix building error of SCTP in FreeBSD 7.1 and later
Commits on Nov 10, 2010
  1. @rickard-green

    Fix erts_schedule_misc_op() so it can be called from arbitrary threads

    rickard-green committed
    Tracing to port could cause an emulator crash when unloading the
    trace driver.
Commits on Nov 9, 2010
  1. @sverker

    Merge branch 'sverker/doc-fixes/OTP-8880' into dev

    sverker committed
    * sverker/doc-fixes/OTP-8880:
      Documentation update to ETS and drivers
  2. @kostis @bjorng

    init: Fix two erroneous specs

    kostis committed with bjorng
    While at it, introduced a state() type and used it in some place.
  3. @RaimoNiskanen

    Delete decommented code

    RaimoNiskanen committed
  4. @RaimoNiskanen
  5. @RaimoNiskanen
  6. @jj1bdx @RaimoNiskanen

    Fix building error of SCTP in FreeBSD 7.1 and later

    jj1bdx committed with RaimoNiskanen
    This patch fixes building error of SCTP in FreeBSD 7.1 and later.
    
    See
    http://www.erlang.org/cgi-bin/ezmlm-cgi?2:mss:1257:200904:hppnfialjjdlgecdiehe
    for the details.
    
    R13A patch for solving a compilation error when building
    erts/emulator/drivers/common/inet_drv.c
    by Kenji Rikitake 12-APR-2009
    
    Symptom solved by this patch:
    
    When building R13A in FreeBSD 7.1-RELEASE,
    the compiler flag
    HAVE_STRUCT_SCTP_PADDRPARAMS_SPP_SACKDELAY
    is NOT enabled.
    Some code in
    erts/emulator/drivers/common/inet_drv.c
    incorrectly assumes
    HAVE_STRUCT_SCTP_PADDRPARAMS_SPP_SACKDELAY
    is always true when
    HAVE_STRUCT_SCTP_PADDRPARAMS_SPP_FLAGS
    is true in config.h.
    This assumption causes a compilation error.
Commits on Nov 2, 2010
  1. @rickard-green

    Be less eager to set dist entry in busy state

    rickard-green committed
    The runtime system is now less eager to suspend
    processes sending messages over the distribution. The
    default value of the distribution buffer busy limit
    has also been increased from 128 KB to 1 MB. This in
    order to improve throughput.
  2. @rickard-green

    Merge branch 'sf/erts_de_busy_limit' into dev

    rickard-green committed
    * sf/erts_de_busy_limit:
      Add flag-based setting for the distribution buffer busy limit
  3. @slfritchie @rickard-green

    Add flag-based setting for the distribution buffer busy limit

    slfritchie committed with rickard-green
    Id: OTP-8912
    
    This patch creates a new family of flags with the "+z" prefix.  It
    further creates a new configuration option called "dbbl" (which is the
    first letter of the name dist_buf_busy_limit).  Example usage of this
    flag would be "+zdbbl 1048576".
    
    This patch creates an adjustable buffer limit for the amount of data
    that may be buffered by the erlang distribution code (in dist.c
    specifically). Before this patch, this hard-coded constant was used:
    
        #define ERTS_DE_BUSY_LIMIT (128*1024)
    
    When large binaries are transmitted between nodes (or simply a lot of
    medium-sized binaries), it is very easy to hit the old 128KB limit.
    Processes that use the erlang:system_monitor() BIF to monitor system
    events can be spammed by {monitor, busy_dist_port, ...} message tuples
    at rates of tens to even hundreds of messages/second.
    
    A larger buffer limit will allow processes to buffer more outgoing
    messages over the distribution. When the buffer limit has been
    reached, sending processes will be suspended until the buffer size has
    shrunk. The buffer limit is per distribution channel. A higher limit
    will give lower latency and higher throughput at the expense of
    higher memory usage.
    
    A variation of this patch has been in commercial production use in at
    least two companies that the author is aware of.  Larger buffer values
    can reduce the number of {monitor, busy_dist_port, ...} system
    messages drastically, lower overall messaging latencies, and prevent
    false timeouts and 'nodedown' messages in extremely busy Mnesia systems.
    
    Test suite: there are two tests:
    
       a. In erlexec_SUITE.erl to test basic set & get of the value
       b. In distribution_SUITE.erl, to verify that setting +zdbbl very
          low will actually change behavior.
Commits on Oct 29, 2010
  1. @rickard-green
Something went wrong with that request. Please try again.