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

Add bindings to __fxstat and __lxstat for x86_64-linux-gnu #11361

Merged
merged 1 commit into from
Oct 27, 2021

Conversation

straight-shoota
Copy link
Member

On some systems, the symbols fstat and lstat are not part of the GNU libc.so shared library, and instead provided by libc_noshared.a. That makes them unavailable for dynamic runtime symbol lookup via dlsym which we use for interpreted mode.
See #11157 (comment) for details.

The symbols __fxstat and __lxstat are the internal counterparts and should be available in any GNU libc.so. Thus it makes sense to link against those directly (which would otherwise happen through libc_noshared.a) because that works both in interpreted and compiled mode.

GNU libraries on other architectures (especially aarch64) might be similarly affected, but I couldn't verify that yet.

Resolves #11157

@straight-shoota straight-shoota added this to the 1.3.0 milestone Oct 24, 2021
@straight-shoota straight-shoota merged commit f00f04a into master Oct 27, 2021
@straight-shoota straight-shoota deleted the feature/libc-fstat branch October 27, 2021 08:36
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.

Dynamically linking fstat & co
2 participants