Skip to content

Docker Build: address QEMU arm64 SIGILL crashes #10705

Closed

Description

@mtrezza

Issue

Part of #10681.

The Docker image is built for linux/amd64 and linux/arm64/v8 on an x64 runner, so the arm64 build runs under QEMU emulation. Node.js intermittently crashes under emulation during the first npm ci of the arm64 build:

#20 [linux/arm64 build 6/6] RUN npm ci --omit=dev --ignore-scripts && cp -R node_modules prod_node_modules && npm ci && npm run build
#20 34.76 qemu: uncaught target signal 4 (Illegal instruction) - core dumped
#20 41.32 Illegal instruction (core dumped)
#20 ERROR: ... did not complete successfully: exit code: 132
  • Since the first occurrence on 2025-10-01, 329 of 3,078 completed Docker Build jobs failed with this crash (10.7%). Runs before 2025-08-11 are no longer available.
  • The crash only occurs on runners with an AVX-512 CPU (listed by buildx as linux/amd64/v4). Of the jobs with retained logs, all 79 crashes ran on such a runner, and none of 386 jobs on other runners crashed. This points to QEMU's x64 code generation, not to Node.js or the dependencies. The crash already occurred in October 2025, months before tonistiigi/binfmt:latest moved to the current QEMU 10.2.3 in June 2026, so pinning a QEMU version is not a reliable fix.
  • The Docker release job in release-automated.yml builds the same way and failed with this crash 43 times. A failed build publishes the image for neither platform. For example, 9.10.1 is missing on Docker Hub and latest still points to 9.10.0.
  • Docker Build is a required check on beta, release and release-8.x.x (not on alpha), so a crash also blocks merging into these branches.

Activity

  1. parse-github-assistant commented on Sep 27, 2026

    @parse-github-assistant

    🚀 Thanks for opening this issue!

  2. parseplatformorg commented on Sep 28, 2026

    @parseplatformorg
    Contributor

    🎉 This change has been released in version 9.10.2-alpha.5

  3. parseplatformorg commented on Oct 2, 2026

    @parseplatformorg
    Contributor

    🎉 This change has been released in version 9.10.2

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions