-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Android: Add preadv and pwritev. #1832
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
Conversation
Hm, aarh64 test fails on CI. |
Sorry, I was away for a bit and now can't see the CI results. How do I get it to re-run? |
No worries! I also doesn't have the permission to re-run on Pipelines and usually close/re-open PRs to do it. |
This looks like it might be #1765 again. I do notice that the aarch64 Android build is using aarch64-linux-android21-clang, while the others use x86_64-linux-android28-clang and armv7a-linux-androideabi24-clang (note the different versions). The functions in question were introduced with API level 24, so this could be related. Where do these toolchains come from? |
I might be wrong about that, digging some more. It looks like it comes from ci/android-install-ndk.sh calling build/tools/make_standalone_toolchain.py, but it always passes at least API 24, including on aarch64, so that shouldn't be the difference. |
Hm, seems Pipelines couldn't find 07dbd45, it has just three checks on Cirrus CI. |
This AArch64 issue is painful and I have no idea how to fix TBH, sorry. The only way we can do here is to skip the test for it. I could r=me if you drop 07dbd45 and skip the test. |
Done, PTAL. |
src/unix/linux_like/android/mod.rs
Outdated
pub fn process_vm_readv( | ||
pid: ::pid_t, | ||
local_iov: *const ::iovec, | ||
local_iov_count: ::c_ulong, | ||
remote_iov: *const ::iovec, | ||
remote_iov_count: ::c_ulong, | ||
flags: ::c_ulong, | ||
) -> ::ssize_t; | ||
pub fn process_vm_writev( | ||
pid: ::pid_t, | ||
local_iov: *const ::iovec, | ||
local_iov_count: ::c_ulong, | ||
remote_iov: *const ::iovec, | ||
remote_iov_count: ::c_ulong, | ||
flags: ::c_ulong, | ||
) -> ::ssize_t; |
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.
Oops sorry, they're added by 582c5cf already.
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.
I guess you mean #1878. Fixed.
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.
Yeah, you're right :)
☔ The latest upstream changes (presumably #1927) made this pull request unmergeable. Please resolve the merge conflicts. Note that reviewers usually do not review pull requests until merge conflicts are resolved! Once you resolve the conflicts, you should change the labels applied by bors to indicate that your PR is ready for review. Post this as a comment to change the labels:
|
From sys/uio.h. Note that preadv64/pwritev64 are already included in src/unix/linux_like/mod.rs. Also fix parameter names of process_vm_[readv,writev] to match Bionic header.
@rustbot modify labels: +S-waiting-on-review -S-waiting-on-author |
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.
Thanks! I'll r+ once CI is fixed.
@bors r+ |
📌 Commit d04bb8e has been approved by |
Android: Add preadv and pwritev. From sys/uio.h. Note that preadv64/pwritev64 are already included in src/unix/linux_like/mod.rs.
💔 Test failed - checks-actions |
@bors retry
|
☀️ Test successful - checks-actions, checks-cirrus-freebsd-11, checks-cirrus-freebsd-12, checks-cirrus-freebsd-13 |
From sys/uio.h. Note that preadv64/pwritev64 are already included in
src/unix/linux_like/mod.rs.