std: make send_process_group_signal unsupported on VxWorks#159991
std: make send_process_group_signal unsupported on VxWorks#159991physwkim wants to merge 1 commit into
Conversation
|
Thanks for the pull request, and welcome! The Rust Project is excited to review your changes, and you should hear from @Darksonn (or someone else) some time within the next two weeks. Please see the contribution instructions for more information. Namely, in order to ensure the minimum review times lag, PR authors and assigned reviewers should ensure that the review label (
Why was this reviewer chosen?The reviewer was selected based on:
|
This comment has been minimized.
This comment has been minimized.
91cad5f to
4ea0ccf
Compare
| pub fn send_process_group_signal(&self, _signal: i32) -> io::Result<()> { | ||
| Err(io::const_error!(ErrorKind::Unsupported, "process groups not supported by vxworks")) |
There was a problem hiding this comment.
This returns an error, but the other platform where this is unsupported panics:
rust/library/std/src/sys/process/unix/fuchsia.rs
Lines 161 to 164 in dfbea5b
Let's be consistent.
There was a problem hiding this comment.
Thanks for the review — switched to unimplemented!() to match fuchsia.
|
Reminder, once the PR becomes ready for a review, use |
VxWorks has no process groups: the SDK defines no `killpg`, and `getpgrp`/`setpgid` are no-ops in libunix, so `kill(-pgrp, sig)` is no substitute either. libc cannot usefully declare `killpg` for this target, so calling it leaves the target unable to build std. Panic instead, matching what fuchsia does for the same method.
4ea0ccf to
c707fad
Compare
|
@rustbot review |
…upported, r=Darksonn std: make send_process_group_signal unsupported on VxWorks `x86_64-wrs-vxworks` doesn't build std: `cargo new` plus `-Zbuild-std` stops with E0425 on `libc::killpg`, which rust-lang#156539 introduced. libc has never declared `killpg` for vxworks, and declaring it wouldn't help. On wrsdk-vxworks7-qemu-1.17.0 there's no `killpg` in the headers, the sysroot archives or the prebuilt kernel, and `getpgrp`/`setpgid` are no-ops in libunix: `getpgrp` returns a constant 0, `setpgid` stores nothing. That rules out `kill(-pgrp, sig)` too. `Command::process_group` is already ignored on this target, since `get_pgroup` is only read by the fork/posix_spawn path while vxworks spawns through `rtpSpawn`. Closes rust-lang#159969.
…upported, r=Darksonn std: make send_process_group_signal unsupported on VxWorks `x86_64-wrs-vxworks` doesn't build std: `cargo new` plus `-Zbuild-std` stops with E0425 on `libc::killpg`, which rust-lang#156539 introduced. libc has never declared `killpg` for vxworks, and declaring it wouldn't help. On wrsdk-vxworks7-qemu-1.17.0 there's no `killpg` in the headers, the sysroot archives or the prebuilt kernel, and `getpgrp`/`setpgid` are no-ops in libunix: `getpgrp` returns a constant 0, `setpgid` stores nothing. That rules out `kill(-pgrp, sig)` too. `Command::process_group` is already ignored on this target, since `get_pgroup` is only read by the fork/posix_spawn path while vxworks spawns through `rtpSpawn`. Closes rust-lang#159969.
…uwer Rollup of 14 pull requests Successful merges: - #158417 (Avoid ICE when cfg_eval recovers no item from derive input) - #159085 (Fix decoding attributes of `SyntheticCoroutineBody`) - #159554 (feat: Update method signature of int_from_ascii) - #159637 (Some place analysis tweaks) - #159649 (Normalize region obligations before regionck) - #159961 (sanitize_standard_fds: Miri supports poll now) - #159967 (rustc_target: callconv: mips64: Return structs with single f128 in FPRs) - #159253 (Add suggestions for using `#[export_name]` instead of `#[link_name]` on static) - #159804 (Expand docs for fs::metadata and fs::symlink_metadata) - #159821 (Update expect message using the recommended style in binary_heap module) - #159840 (Fix opaque type ICE in late lints under the next-generation trait solver) - #159956 (Fix observable intermediate state in `thread::add_spawn_hook`) - #159991 (std: make send_process_group_signal unsupported on VxWorks) - #159996 (Detect when a macro without exclamation mark uses square brackets)
x86_64-wrs-vxworksdoesn't build std:cargo newplus-Zbuild-stdstopswith E0425 on
libc::killpg, which #156539 introduced.libc has never declared
killpgfor vxworks, and declaring it wouldn't help.On wrsdk-vxworks7-qemu-1.17.0 there's no
killpgin the headers, the sysrootarchives or the prebuilt kernel, and
getpgrp/setpgidare no-ops in libunix:getpgrpreturns a constant 0,setpgidstores nothing. That rules outkill(-pgrp, sig)too.Command::process_groupis already ignored on thistarget, since
get_pgroupis only read by the fork/posix_spawn path whilevxworks spawns through
rtpSpawn.Closes #159969.