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

syscall: in TestStdioAreInheritable, powershell on arm64/arm cannot load arm64/arm binaries because it is an intel process #46701

Closed
zx2c4 opened this issue Jun 11, 2021 · 7 comments
Labels
arch-arm64 FrozenDueToAge NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. OS-Windows
Milestone

Comments

@zx2c4
Copy link
Contributor

zx2c4 commented Jun 11, 2021

ARM builds of Windows are still shipping an Intel powershell, which means we can't test arm shared libraries using powershell as a loader. This bug is to track that, if it ever changes, so we can remove the test skippage.

@gopherbot
Copy link

Change https://golang.org/cl/326310 mentions this issue: cmd/internal/sys: mark windows/arm64 as c-shared-capable

@cherrymui cherrymui added arch-arm64 OS-Windows NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. labels Jun 11, 2021
@cherrymui cherrymui changed the title powershell on arm64/arm cannot load arm64/arm binaries because it is an intel process syscall: in TestStdioAreInheritable, powershell on arm64/arm cannot load arm64/arm binaries because it is an intel process Jun 11, 2021
@cherrymui cherrymui added this to the Backlog milestone Jun 11, 2021
@cherrymui
Copy link
Member

Is it possible to rewrite the test to not depend on powershell?

@gopherbot
Copy link

Change https://golang.org/cl/327210 mentions this issue: syscall: do not load native libraries on non-native powershell on arm

gopherbot pushed a commit that referenced this issue Jun 11, 2021
The powershell that currently ships on ARM Windows isn't native, so it
won't load native DLLs. So just skip the tests for now, and reenable it
if this ever changes.

Updates #46701.

Change-Id: I2559fdf13cb65d3ecdc4c6f6df7dec1b490b9651
Reviewed-on: https://go-review.googlesource.com/c/go/+/327210
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
Trust: Jason A. Donenfeld <Jason@zx2c4.com>
Run-TryBot: Jason A. Donenfeld <Jason@zx2c4.com>
@alexbrainman
Copy link
Member

Is it possible to rewrite the test to not depend on powershell?

When I introduced TestStdioAreInheritable in CL 316269, I just adopted repro provided at #44876 (comment). After successfully built TestStdioAreInheritable, I tried to do something similar in C (compiled with GCC). But I could not do it.

I don't remember how much effort I put into conversion of TestStdioAreInheritable into C, but that was significant enough. I don't plan to work on this now. I also don't have any notes of what I tried.

Alex

@zx2c4
Copy link
Contributor Author

zx2c4 commented Jun 12, 2021

I don't remember how much effort I put into conversion of TestStdioAreInheritable into C, but that was significant enough. I don't plan to work on this now. I also don't have any notes of what I tried.

Should we just remove the test? Is it particularly useful?

@alexbrainman
Copy link
Member

Should we just remove the test?

Why? What is the benefit?

Is it particularly useful?

The test verifies that #44876 stays fixed. I think it is useful.

Alex

@gopherbot
Copy link

Change https://golang.org/cl/327969 mentions this issue: syscall: rewrite handle inheritance test to use C rather than Powershell

@golang golang locked and limited conversation to collaborators Jun 15, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
arch-arm64 FrozenDueToAge NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. OS-Windows
Projects
None yet
Development

No branches or pull requests

4 participants