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

[0.2] Backports #4270

Merged
merged 8 commits into from
Feb 18, 2025
Merged

[0.2] Backports #4270

merged 8 commits into from
Feb 18, 2025

Conversation

sthibaul and others added 8 commits February 18, 2025 02:57
(backport <rust-lang#4237>)
(cherry picked from commit 6c6674e)
Impacts linux and android adding in (when applicable):

* SI_ASYNCIO
* SI_ASYNCNL
* SI_DETHREAD
* SI_KERNEL
* SI_MESGQ
* SI_QUEUE
* SI_SIGIO
* SI_TIMER
* SI_TKILL
* SI_USER

And also:

* TRAP_BRANCH
* TRAP_BRKPT
* TRAP_HWBKPT
* TRAP_PERF
* TRAP_TRACE
* TRAP_UNK

(backport <rust-lang#4225>)
(cherry picked from commit a34697a)
This revises commit 63b0d67
to assume that Emscripten 3.1.42 or later is being used whenever
`emcc` is not available. Since Emscripten 3.1.42 was released on
June 23, 2023, the majority of users are expected to have upgraded
to a more recent version.

Resolves: rust-lang/rust#131467.

(backport <rust-lang#4243">)
(cherry picked from commit b511f66)
(backport <rust-lang#4243">)
(cherry picked from commit 99515f2)
Add definitions from `spawn.h` as present [in illumos-gate (blame
view)][spawn-h]. I added definitions more than 15 years old to
`solarish/mod.rs`, and others to `solarish/illumos.rs`.

There are a lot of definitions here -- it's easiest to look at them in the
blame view linked above. But here are the corresponding man pages:

For solarish:

* [`posix_spawn`, `posix_spawnp`](https://illumos.org/man/3C/posix_spawn)
* [`posix_spawn_file_actions_{init,destroy}`](https://illumos.org/man/3C/posix_spawn_file_actions_init)
* [`posix_spawn_file_actions_{addopen,addclose}`](https://illumos.org/man/3C/posix_spawn_file_actions_addopen)
* [`posix_spawn_file_actions_adddup2`](https://illumos.org/man/3C/posix_spawn_file_actions_adddup2)
* [`posix_spawn_file_actions_addclosefrom_np`](https://illumos.org/man/3C/posix_spawn_file_actions_addclosefrom_np)
* [`posix_spawnattr_{init,destroy}`](https://illumos.org/man/3C/posix_spawnattr_init)
* [`posix_spawnattr_{setflags,getflags}`](https://illumos.org/man/3C/posix_spawnattr_setflags)
* [`posix_spawnattr_{setpgroup,getpgroup}`](https://illumos.org/man/3C/posix_spawnattr_setpgroup)
* [`posix_spawnattr_{setschedparam,getschedparam}`](https://illumos.org/man/3C/posix_spawnattr_setschedparam)
* [`posix_spawnattr_{setschedpolicy,getschedpolicy}`](https://illumos.org/man/3C/posix_spawnattr_setschedpolicy)
* [`posix_spawnattr_{setsigdefault,getsigdefault}`](https://illumos.org/man/3C/posix_spawnattr_setsigdefault)
* [`posix_spawnattr_{setsigignore,getsigignore}_np`](https://illumos.org/man/3C/posix_spawnattr_setsigignore_np)
* [`posix_spawnattr_{setsigmask,getsigmask}`](https://illumos.org/man/3C/posix_spawnattr_setsigmask)

Newer functions added independently to Solaris and illumos:

* [`posix_spawn_file_actions_{addchdir,addchdir_np,addfchdir}` on Solaris](https://docs.oracle.com/cd/E88353_01/html/E37843/posix-spawn-file-actions-addchdir-np-3c.html)

* The illumos-only functions are quite recent so the man pages haven't been
  uploaded to illumos.org yet. But [here's the one for `addchdir` and
  `addfchdir`](https://github.com/illumos/illumos-gate/blob/7633a05bff8c639f2df722d1fba7b889b2763d3d/usr/src/man/man3c/posix_spawn_file_actions_addchdir.3c).
  Note that the `_np` functions are not documented in the manual, but they are
  available for compatibility.

The one function I skipped over was
[`posix_spawn_pipe_np`](https://illumos.org/man/3C/posix_spawn_pipe_np) -- it
seemed a bit niche and I wasn't quite sure how to model `boolean_t`.

[spawn-h]: https://github.com/illumos/illumos-gate/blame/7633a05bff8c639f2df722d1fba7b889b2763d3d/usr/src/head/spawn.h#L1

(backport <rust-lang#4259>)
(cherry picked from commit 162e306)
(backport <rust-lang#4265>)
(cherry picked from commit e1e9d97)
@rustbot
Copy link
Collaborator

rustbot commented Feb 18, 2025

@tgross35: no appropriate reviewer found, use r? to override

@rustbot
Copy link
Collaborator

rustbot commented Feb 18, 2025

Some changes occurred in solarish module

cc @jclulow, @pfmooney

Some changes occurred in the Android module

cc @maurer

@tgross35 tgross35 enabled auto-merge February 18, 2025 03:02
@tgross35 tgross35 added this pull request to the merge queue Feb 18, 2025
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Feb 18, 2025
@tgross35 tgross35 added this pull request to the merge queue Feb 18, 2025
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Feb 18, 2025
@tgross35 tgross35 added this pull request to the merge queue Feb 18, 2025
Merged via the queue into rust-lang:libc-0.2 with commit 4e9c916 Feb 18, 2025
44 checks passed
@tgross35 tgross35 deleted the backport-portobello branch February 18, 2025 05:42
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.

9 participants