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: rubyjs/libv8-node
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: node-21
Choose a base ref
...
head repository: rubyjs/libv8-node
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: master
Choose a head ref
Checking mergeability… Don’t worry, you can still create the pull request.
  • 17 commits
  • 13 files changed
  • 3 contributors

Commits on Jul 23, 2024

  1. Update to node 22.5.1

    lloeki committed Jul 23, 2024
    Configuration menu
    Copy the full SHA
    aae83f9 View commit details
    Browse the repository at this point in the history
  2. Use GCC on glibc

    lloeki committed Jul 23, 2024
    Configuration menu
    Copy the full SHA
    fb6f143 View commit details
    Browse the repository at this point in the history
  3. Fix libv8 version

    lloeki committed Jul 23, 2024
    Configuration menu
    Copy the full SHA
    e7e17d2 View commit details
    Browse the repository at this point in the history

Commits on Aug 21, 2024

  1. Disable use of Linux memory protection keys

    V8's default thread-isolated allocator has a bug on x64 Linux.
    
    It uses memory protection keys (see `man 7 pkeys`) to
    write-protect JIT code memory but in a way that is currently
    incompatible with how we use threads.
    
    Specifically, pkey permissions are inherited by child threads.
    Threads that are not descendants of the thread that allocates
    the pkey default to "no permissions" for that pkey.
    
    Concretely, if thread A creates the v8::Platform (and the pkey)
    and write-protects memory, then later thread B tries to access
    that memory, it segfaults due to the lack of permissions.
    
    The fix on V8's side is conceptually easy - call
    pkey_set(PKEY_DISABLE_WRITE) before accessing the memory,
    to flip the permissions from "none" to "can read" - but
    until it's actually fixed, disable thread-isolation.
    
    Fixes: rubyjs/mini_racer#300
    Refs: https://issues.chromium.org/issues/360909072
    bnoordhuis committed Aug 21, 2024
    Configuration menu
    Copy the full SHA
    db82899 View commit details
    Browse the repository at this point in the history

Commits on Aug 22, 2024

  1. Merge pull request #53 from bnoordhuis/disable-pkey

    Disable use of Linux memory protection keys
    SamSaffron authored Aug 22, 2024
    Configuration menu
    Copy the full SHA
    0bfaa5d View commit details
    Browse the repository at this point in the history
  2. bump version

    SamSaffron committed Aug 22, 2024
    Configuration menu
    Copy the full SHA
    a616a9a View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    362241d View commit details
    Browse the repository at this point in the history
  4. lint

    SamSaffron committed Aug 22, 2024
    Configuration menu
    Copy the full SHA
    8646501 View commit details
    Browse the repository at this point in the history
  5. this should be correct...

    SamSaffron committed Aug 22, 2024
    Configuration menu
    Copy the full SHA
    3322d01 View commit details
    Browse the repository at this point in the history
  6. attempt to upgrade CI so we only run on non EOL rubies.

    2.7 and 3.0 are EOL
    SamSaffron committed Aug 22, 2024
    Configuration menu
    Copy the full SHA
    9a0ad74 View commit details
    Browse the repository at this point in the history
  7. Disable madvise(MADV_DONTFORK)

    Node.js uses it to speed up fork & exec (stops V8 heap pages from
    getting copied into the forked process; slow) but mini_racer also
    supports fork & continue.
    bnoordhuis committed Aug 22, 2024
    Configuration menu
    Copy the full SHA
    7a1ee4b View commit details
    Browse the repository at this point in the history
  8. Merge pull request #54 from bnoordhuis/no-madv-dontfork

    Disable madvise(MADV_DONTFORK)
    SamSaffron authored Aug 22, 2024
    Configuration menu
    Copy the full SHA
    8dea2b8 View commit details
    Browse the repository at this point in the history

Commits on Aug 26, 2024

  1. Fix C++ tests, switch to C++17 (#55)

    It was at C++14 but newer versions of V8 require C++17.
    bnoordhuis authored Aug 26, 2024
    Configuration menu
    Copy the full SHA
    1910d10 View commit details
    Browse the repository at this point in the history

Commits on Aug 27, 2024

  1. Update to node 22.7.0 (#56)

    Note the V8 version didn't change between 22.6.0 and 22.7.0
    bnoordhuis authored Aug 27, 2024
    Configuration menu
    Copy the full SHA
    b305a1e View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    62476a3 View commit details
    Browse the repository at this point in the history

Commits on Sep 4, 2024

  1. Configuration menu
    Copy the full SHA
    fc88262 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    8900cf6 View commit details
    Browse the repository at this point in the history
Loading