-
Notifications
You must be signed in to change notification settings - Fork 140
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
lkl: Remove the stat symbol hijack #583
base: master
Are you sure you want to change the base?
Conversation
@thehajime Got any recollection on why the |
Erk, not sure what Ubuntu has done to their glibc... |
88bf435
to
460049f
Compare
Turns out aarch64 apparently uses different constants, marking as a draft again. |
b72ae63
to
25867eb
Compare
Removing the symbol fully passes CI, let me know if there is some user I am missing. The only alternative to this approach (as far as I can see) is to update the minimum environment to have at least glibc 2.33, where a non-internal |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, but lets wait for @thehajime to review this as we don't run DPDK tests in CI.
We are hijacking `stat`, where the size of the target struct is dependent on the wordsize. Delegating to `__xstat64` is incorrect, as it unconditionally uses the stat64 layout and will result in an out-of-bounds write on 32-bit architectures. The replacement would be to use `__xstat` as the implementation instead, but the requirements on the `vers` parameter make it hard to portably call. Since the symbol just delegates to the real implementation unconditionally and therefore does not seem to have a deeper purpose, just remove it. Fixes: d4b9b65 ("lkl: update dpdk version to 17.02 from 2.2") Signed-off-by: Tim Schumacher <[email protected]>
25867eb
to
5920e09
Compare
No changes made in the force push, had an accidental leftover line in the commit message from squashing. |
thanks @timschumi for the patch. the changes looks good to me. |
The replacement would be to use
__xstat
as the implementation instead, but the requirements on thevers
parameter make it hard to portably call.Since the symbol just delegates to the real implementation unconditionally and therefore does not seem to have a deeper purpose, just remove it.
Fixes: #361