Skip to content

ansible: install Clang on RHEL hosts #4123

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

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

@richardlau
Copy link
Member Author

Failures:

14:54:41 clang: error: unknown argument: '-mminimal-toc'
15:19:17 <inline asm>:7:13: error: invalid register
15:19:17     7 |   stmg %r6, %sp, 48(%sp)                           
15:19:17       |             ^
15:19:17 <inline asm>:8:7: error: invalid register
15:19:17     8 |   lay %sp, -160(%sp)                               
15:19:17       |       ^
15:19:17 <inline asm>:10:16: error: invalid register
15:19:17    10 |   lay %r4, 208(%sp)                                
15:19:17       |                ^
15:19:17 <inline asm>:12:12: error: invalid register
15:19:17    12 |   lmg %r14,%sp, 272(%sp)                           
15:19:17       |            ^

@richardlau
Copy link
Member Author

richardlau commented Aug 15, 2025

For Linux ppc64le Node.js is using a gcc-only flag which we'll need to make conditional. PR: nodejs/node#59484
New CI: https://ci.nodejs.org/job/richardlau-node-test-commit-plinux/13/

For Linux s390x we'll need to cherry-pick (list via @miladfarca ):

PR: nodejs/node#59485
New CI: https://ci.nodejs.org/job/richardlau-node-test-commit-linuxone/34/ ✔️

@richardlau
Copy link
Member Author

For Linux ppc64le Node.js is using a gcc-only flag which we'll need to make conditional. PR: nodejs/node#59484 New CI: https://ci.nodejs.org/job/richardlau-node-test-commit-plinux/13/

Single executable application tests are crashing in https://ci.nodejs.org/job/richardlau-node-test-commit-plinux/13/nodes=rhel8-ppc64le/
I don't know if this is clang specific -- those tests have a history of crashing on Linux ppc64le with gcc and are currently skipped on

I think we should land nodejs/node#59484 anyway as a separate fix.

@richardlau
Copy link
Member Author

I've opened nodejs/node#59561 to track the single executable application test failures and nodejs/node#59563 to skip the tests for now on Linux ppc64le on main (as we already do on v20.x/v22.x).

Once that lands we can take this out of draft/wip and land.

@richardlau
Copy link
Member Author

richardlau commented Aug 21, 2025

FWIW I ran a build with clang Linux ppc64le build for nodejs/node#59560 and all tests (including the single executable application tests) passed: https://ci.nodejs.org/job/richardlau-node-test-commit-plinux/22/

I think my preferred plan is to:

  1. Land the skips (test: skip sea tests on Linux ppc64le node#59563).
  2. Land this PR to switch the builds to clang on RHEL 8/9.
  3. Re-evaluate the skips (including possibly reverting them) later on if they no longer fail after sea: implement execArgvExtension node#59560.

@richardlau richardlau changed the title [WIP] ansible: install Clang on RHEL hosts ansible: install Clang on RHEL hosts Aug 21, 2025
@richardlau richardlau marked this pull request as ready for review August 21, 2025 16:42
@richardlau
Copy link
Member Author

I ran a few more clang builds on main today and they both passed

they were failing on main a few days ago, so maybe this is related after all to whatever was causing the failures in the same tests for macOS but have since appeared to have cleared up?

In any case, I'm out of office tomorrow and next week, so it's probably safer to stick to the plan in my previous comment and disable the tests on Linux ppc64le for now and I can check the status again in September.

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

Successfully merging this pull request may close these issues.

1 participant