[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 02/51] bsd-user: Define procctl(2) related structs
|
From: |
Warner Losh |
|
Subject: |
[PULL 02/51] bsd-user: Define procctl(2) related structs |
|
Date: |
Tue, 3 Oct 2023 17:31:26 -0600 |
From: Stacey Son <sson@FreeBSD.org>
Implement procctl flags and related structs:
struct target_procctl_reaper_status
struct target_procctl_reaper_pidinfo
struct target_procctl_reaper_pids
struct target_procctl_reaper_kill
Signed-off-by: Stacey Son <sson@FreeBSD.org>
Signed-off-by: Karim Taha <kariem.taha2.7@gmail.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Warner Losh <imp@bsdimp.com>
Message-Id: <20230925182425.3163-3-kariem.taha2.7@gmail.com>
---
bsd-user/syscall_defs.h | 42 +++++++++++++++++++++++++++++++++++++++++
1 file changed, 42 insertions(+)
diff --git a/bsd-user/syscall_defs.h b/bsd-user/syscall_defs.h
index ddd38c13e08..a3bc738ff89 100644
--- a/bsd-user/syscall_defs.h
+++ b/bsd-user/syscall_defs.h
@@ -390,6 +390,48 @@ struct target_freebsd_flock {
/* user: vfork(2) semantics, clear signals */
#define TARGET_RFSPAWN (1U << 31)
+/*
+ * from sys/procctl.h
+ */
+#define TARGET_PROC_SPROTECT 1
+#define TARGET_PROC_REAP_ACQUIRE 2
+#define TARGET_PROC_REAP_RELEASE 3
+#define TARGET_PROC_REAP_STATUS 4
+#define TARGET_PROC_REAP_GETPIDS 5
+#define TARGET_PROC_REAP_KILL 6
+
+struct target_procctl_reaper_status {
+ uint32_t rs_flags;
+ uint32_t rs_children;
+ uint32_t rs_descendants;
+ uint32_t rs_reaper;
+ uint32_t rs_pid;
+ uint32_t rs_pad0[15];
+};
+
+struct target_procctl_reaper_pidinfo {
+ uint32_t pi_pid;
+ uint32_t pi_subtree;
+ uint32_t pi_flags;
+ uint32_t pi_pad0[15];
+};
+
+struct target_procctl_reaper_pids {
+ uint32_t rp_count;
+ uint32_t rp_pad0[15];
+ abi_ulong rp_pids;
+};
+
+struct target_procctl_reaper_kill {
+ int32_t rk_sig;
+ uint32_t rk_flags;
+ uint32_t rk_subtree;
+ uint32_t rk_killed;
+ uint32_t rk_fpid;
+ uint32_t rk_pad0[15];
+};
+
+
#define safe_syscall0(type, name) \
type safe_##name(void) \
{ \
--
2.41.0
- [PULL 00/51] Bsd user mmap patches, Warner Losh, 2023/10/03
- [PULL 01/51] bsd-user: define TARGET_RFSPAWN for rfork to use vfork(2) semantics, and fix RLIM_INFINITY, Warner Losh, 2023/10/03
- [PULL 03/51] bsd-user: Implement host_to_target_siginfo., Warner Losh, 2023/10/03
- [PULL 05/51] bsd-user: add extern declarations for bsd-proc.c conversion functions, Warner Losh, 2023/10/03
- [PULL 02/51] bsd-user: Define procctl(2) related structs,
Warner Losh <=
- [PULL 07/51] bsd-user: Implement target_to_host_rlim and host_to_target_rlim conversion., Warner Losh, 2023/10/03
- [PULL 06/51] bsd-user: Implement target_to_host_resource conversion function, Warner Losh, 2023/10/03
- [PULL 08/51] bsd-user: Implement host_to_target_rusage and host_to_target_wrusage., Warner Losh, 2023/10/03
- [PULL 10/51] bsd-user: Get number of cpus., Warner Losh, 2023/10/03
- [PULL 09/51] bsd-user: Implement host_to_target_waitstatus conversion., Warner Losh, 2023/10/03
- [PULL 13/51] bsd-user: Implement getrusage(2)., Warner Losh, 2023/10/03
- [PULL 11/51] bsd-user: Implement getgroups(2) and setgroups(2) system calls., Warner Losh, 2023/10/03
- [PULL 12/51] bsd-user: Implement umask(2), setlogin(2) and getlogin(2), Warner Losh, 2023/10/03
- [PULL 04/51] bsd-user: Add freebsd_exec_common and do_freebsd_procctl to qemu.h., Warner Losh, 2023/10/03
- [PULL 14/51] bsd-user: Implement getrlimit(2) and setrlimit(2), Warner Losh, 2023/10/03