Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: rubinius/rubinius
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 5f9a19a07fc5
Choose a base ref
...
head repository: rubinius/rubinius
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: c8b0422d0dc2
Choose a head ref
  • 2 commits
  • 25 files changed
  • 1 contributor

Commits on May 24, 2016

  1. Allow per-Thread, per-Fiber stack sizing.

    Thread.new, Thread.start, Thread.fork, and Fiber.new all take an optional
    keyword argument of the form: 'stack_size: Fixnum', where Fixnum includes
    objects that respond to #to_int. The keyword argument, if present, sets the
    size of the Thread's or Fiber's stack size. If the argument is not present or
    is zero, the default stack size, configured with -Xmachine.thread.stack_size
    and -Xmachine.fiber.stack_size are used instead.
    
    Added configuration for machine.thread.stack_size to set the default size of
    Thread stacks. Also moved fiber.stack_size configuration under machine
    section.
    
    Also added configuration for machine.stack_cushion to set the size in bytes of
    the cushion to leave at the stack end when checking for stack usage. This is
    necessary because we check the stack usage before calling a method. The method
    may use quite a bit of stack but we can't know this beforehand (hand-wavy
    "can't" here). If we are near the end but not yet at the end, we could easily
    exhaust the stack after calling the method and then segfault.
    brixen committed May 24, 2016
    Copy the full SHA
    c26139a View commit details
  2. Copy the full SHA
    c8b0422 View commit details
Loading