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 ucontext_t for freebsd-aarch64 #3848

Merged
merged 1 commit into from
Oct 1, 2024

Conversation

nathaniel-bennett
Copy link
Contributor

Resolves #3217

@rustbot
Copy link
Collaborator

rustbot commented Aug 17, 2024

r? @JohnTitor

rustbot has assigned @JohnTitor.
They will have a look at your PR within the next two weeks and either review your PR or reassign to another reviewer.

Use r? to explicitly pick a reviewer

@nathaniel-bennett nathaniel-bennett force-pushed the ucontext-freebsd branch 3 times, most recently from c5581de to 444dae2 Compare August 17, 2024 20:51
@tgross35
Copy link
Contributor

tgross35 commented Sep 1, 2024

The ucontext changes look good, but could you link whatever you are referencing for mcontext_t? https://github.com/freebsd/freebsd-src/blob/1a207e5cdf997bd5a04e020d26039844a0c1294f/sys/arm64/include/ucontext.h#L54-L61 (linked from #3217) has a different definition.

@nathaniel-bennett
Copy link
Contributor Author

The definition you link is included in the aarch64.rs submodule, which is intended for 64-bit ARM. The one I added is in the arm.rs submodule for 32-bit ARM architectures; its corresponding documentation can be found here:

https://github.com/freebsd/freebsd-src/blob/2b7f2890a812eb09dccaa8069483566a3b292338/sys/arm/include/ucontext.h#L74-L84

Likewise, documentation for PowerPC can be found here:

https://github.com/freebsd/freebsd-src/blob/2b7f2890a812eb09dccaa8069483566a3b292338/sys/powerpc/include/ucontext.h#L39-L51

@tgross35 tgross35 added the stable-nominated This PR should be considered for cherry-pick to libc's stable release branch label Oct 1, 2024
Copy link
Contributor

@tgross35 tgross35 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry I missed this, thanks for the extra info!

This is okay to go on stable but it isn't a clean cherry pick due to #[align]. I'll try to get it at some point, but feel free to resubmit this against the 0.2 branch if you want to get it in a bit sooner.

@tgross35 tgross35 added this pull request to the merge queue Oct 1, 2024
Merged via the queue into rust-lang:main with commit 2053d5b Oct 1, 2024
41 checks passed
@tgross35
Copy link
Contributor

@asomers could I get an ack from you before I backport this?

@asomers
Copy link
Contributor

asomers commented Oct 21, 2024

nack @tgross35 there's an error for armv7. I'll open a PR to fix it.

asomers added a commit to asomers/libc that referenced this pull request Oct 21, 2024
PR rust-lang#3848 broke the build on avm7-unknown-freebsd by defining a field to
be of an unknown type.  Use the correct type name `usize` instead of
`::size_t`.
asomers added a commit to asomers/libc that referenced this pull request Oct 21, 2024
PR rust-lang#3848 broke the build on armv7-unknown-freebsd by defining a field to
be of an unknown type.  Use the correct type name `usize` instead of
`::size_t`.
asomers added a commit to asomers/libc that referenced this pull request Oct 21, 2024
PR rust-lang#3848 broke the build on armv7-unknown-freebsd by defining a field to
be of an unknown type.  Use the correct type name `usize` instead of
`::__size_t`.
@nathaniel-bennett nathaniel-bennett deleted the ucontext-freebsd branch October 22, 2024 15:13
tgross35 pushed a commit to tgross35/rust-libc that referenced this pull request Nov 6, 2024
@tgross35 tgross35 mentioned this pull request Nov 6, 2024
tgross35 pushed a commit to tgross35/rust-libc that referenced this pull request Nov 6, 2024
tgross35 pushed a commit to tgross35/rust-libc that referenced this pull request Nov 6, 2024
[ gate ppc under `cfg(libc_align)` to meet msrv - Trevor ]
(backport <rust-lang#3848>)
(cherry picked from commit 2053d5b)
tgross35 pushed a commit to tgross35/rust-libc that referenced this pull request Nov 7, 2024
[ gate ppc under `cfg(libc_align)` to meet msrv - Trevor ]
(backport <rust-lang#3848>)
(cherry picked from commit 2053d5b)
tgross35 pushed a commit to tgross35/rust-libc that referenced this pull request Nov 7, 2024
[ gate ppc under `cfg(libc_align)` to meet msrv - Trevor ]
(backport <rust-lang#3848>)
(cherry picked from commit 2053d5b)
tgross35 pushed a commit to tgross35/rust-libc that referenced this pull request Nov 7, 2024
[ gate ppc under `cfg(libc_align)` to meet msrv - Trevor ]
(backport <rust-lang#3848>)
(cherry picked from commit 2053d5b)
tgross35 pushed a commit to tgross35/rust-libc that referenced this pull request Nov 7, 2024
[ gate ppc under `cfg(libc_align)` to meet msrv - Trevor ]
(backport <rust-lang#3848>)
(cherry picked from commit 2053d5b)
tgross35 pushed a commit to tgross35/rust-libc that referenced this pull request Nov 7, 2024
[ gate ppc under `cfg(libc_align)` and adjust `Debug` implementations to
  meet msrv - Trevor ]
(backport <rust-lang#3848>)
(cherry picked from commit 2053d5b)
@github-actions github-actions bot mentioned this pull request Nov 7, 2024
@tgross35 tgross35 added stable-applied This PR has been cherry-picked to libc's stable release branch and removed stable-nominated This PR should be considered for cherry-pick to libc's stable release branch labels Nov 7, 2024
tgross35 pushed a commit to tgross35/rust-libc that referenced this pull request Nov 7, 2024
PR rust-lang#3848 broke the build on armv7-unknown-freebsd by defining a field to
be of an unknown type.  Use the correct type name `usize` instead of
`::__size_t`.

(backport <rust-lang#3994>)
(cherry picked from commit 816b524)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
S-waiting-on-review stable-applied This PR has been cherry-picked to libc's stable release branch
Projects
None yet
Development

Successfully merging this pull request may close these issues.

ucontext_t is missing on aarch64-unknown-freebsd
5 participants