Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Segfaults for builds using QEMU #124

Open
nightlark opened this issue Jan 23, 2025 · 1 comment · May be fixed by #125
Open

Segfaults for builds using QEMU #124

nightlark opened this issue Jan 23, 2025 · 1 comment · May be fixed by #125

Comments

@nightlark
Copy link
Contributor

It looks like the jobs that use QEMU have started failing as of... several days ago? This also doesn't seem to be limited to this project, since a rebuild of another project I maintain (https://github.com/nightlark/swig-pypi/actions/workflows/build.yml) with no changes in the past 5 days is also failing with a similar error.

Based on updates to cibuildwheel, scikit-build-core, and other things, I think this might be related to the version of qemu used -- perhaps with an update to the GitHub Actions runner images that was gradually rolled out. There is also this report of an intermittent segfault in the repo for the project building the qemu binaries from a week ago, which if there was a runner image update that just finished rolling out lines up with the timeline for every qemu job now failing (tonistiigi/binfmt#215). That issue also suggests the fix is using a newer version of qemu, which unfortunately tonistiigi/binfmt hasn't published updated Docker images in a long time.

@nightlark
Copy link
Contributor Author

Correction, newer versions of qemu are pushed to Docker Hub (https://hub.docker.com/r/tonistiigi/binfmt/tags), but the latest tag that gets installed by default was last updated 2 years ago and is still pointing to qemu-v7.0.0

@nightlark nightlark linked a pull request Jan 24, 2025 that will close this issue
josephleekl added a commit to PennyLaneAI/pennylane-lightning that referenced this issue Jan 29, 2025
### Before submitting

Please complete the following checklist when submitting a PR:

- [ ] All new features must include a unit test.
If you've fixed a bug or added code that should be tested, add a test to
the
      [`tests`](../tests) directory!

- [ ] All new functions and code must be clearly commented and
documented.
If you do make documentation changes, make sure that the docs build and
      render correctly by running `make docs`.

- [ ] Ensure that the test suite passes, by running `make test`.

- [x] Add a new entry to the `.github/CHANGELOG.md` file, summarizing
the
      change, and including a link back to the PR.

- [ ] Ensure that code is properly formatted by running `make format`. 

When all the above are checked, delete everything above the dashed
line and fill in the pull request template.


------------------------------------------------------------------------------------------------------------

**Context:**
The [aarch64 wheel build CI action has been
failing](https://github.com/PennyLaneAI/pennylane-lightning/actions/workflows/wheel_linux_aarch64.yml)
since circa 24 Jan 2025. They fail with a segmentation fault during the
CIBW process. This has also been observed for similar wheel builds with
QEMU with other repositories:
docker/setup-qemu-action#188
ssciwr/clang-format-wheel#124
tonistiigi/binfmt#215
tonistiigi/binfmt#165
and fix attempt:
ssciwr/clang-format-wheel#125

It is due to using an old version (v7) of qemu that comes with binfmt.
`setup-qemu-action` by default uses `binfmt:latest` image which has not
been updated in 2 years.

**Description of the Change:**
Use a newer QEMU image (v8) from binfmt.

**Benefits:**
aarch64 wheel builds will succeed again,
[e.g.](https://github.com/PennyLaneAI/pennylane-lightning/actions/runs/13019772888?pr=1056)
**Possible Drawbacks:**

**Related GitHub Issues:**

[sc-83297]

---------

Co-authored-by: ringo-but-quantum <[email protected]>
Co-authored-by: Ali Asadi <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant