[PATCH v5 00/28] bsd-user: Implement freebsd process related system calls.

Karim Taha posted 28 patches 7 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20230925182425.3163-1-kariem.taha2.7@gmail.com
Maintainers: Warner Losh <imp@bsdimp.com>, Kyle Evans <kevans@freebsd.org>
bsd-user/bsd-proc.c           | 145 ++++++++++
bsd-user/bsd-proc.h           | 379 +++++++++++++++++++++++++++
bsd-user/freebsd/meson.build  |   1 +
bsd-user/freebsd/os-proc.c    | 479 ++++++++++++++++++++++++++++++++++
bsd-user/freebsd/os-proc.h    | 293 +++++++++++++++++++++
bsd-user/freebsd/os-syscall.c | 206 ++++++++++++++-
bsd-user/main.c               |   2 +-
bsd-user/meson.build          |   6 +
bsd-user/qemu-bsd.h           |  38 +++
bsd-user/qemu.h               |   7 +
bsd-user/signal-common.h      |   1 +
bsd-user/signal.c             |   6 +
bsd-user/syscall_defs.h       |  50 +++-
13 files changed, 1607 insertions(+), 6 deletions(-)
create mode 100644 bsd-user/bsd-proc.c
create mode 100644 bsd-user/freebsd/os-proc.c
create mode 100644 bsd-user/freebsd/os-proc.h
create mode 100644 bsd-user/qemu-bsd.h
[PATCH v5 00/28] bsd-user: Implement freebsd process related system calls.
Posted by Karim Taha 7 months ago

Karim Taha (3):
  bsd-user: define TARGET_RFSPAWN for rfork to use vfork(2) semantics,
    and fix RLIM_INFINITY
  bsd-user: Implement get_filename_from_fd.
  bsd-user: Implement execve(2) and fexecve(2) system calls.

Kyle Evans (1):
  bsd-user: Get number of cpus.

Stacey Son (24):
  bsd-user: Define procctl(2) related structs
  bsd-user: Implement host_to_target_siginfo.
  bsd-user: Add freebsd_exec_common and do_freebsd_procctl to qemu.h.
  bsd-user: add extern declarations for bsd-proc.c conversion functions
  bsd-user: Implement target_to_host_resource conversion function
  bsd-user: Implement target_to_host_rlim and host_to_target_rlim
    conversion.
  bsd-user: Implement host_to_target_rusage and host_to_target_wrusage.
  bsd-user: Implement host_to_target_waitstatus conversion.
  bsd-user: Implement getgroups(2) and setgroups(2) system calls.
  bsd-user: Implement umask(2), setlogin(2) and getlogin(2)
  bsd-user: Implement getrusage(2).
  bsd-user: Implement getrlimit(2) and setrlimit(2)
  bsd-user: Implement several get/set system calls:
  bsd-user: Implement get/set[resuid/resgid/sid] and issetugid.
  bsd-user: Add stubs for profil(2), ktrace(2), utrace(2) and ptrace(2).
  bsd-user: Implement getpriority(2) and setpriority(2).
  bsd-user: Implement freebsd_exec_common, used in implementing
    execve/fexecve.
  bsd-user: Implement procctl(2) along with necessary conversion
    functions.
  bsd-user: Implement wait4(2) and wait6(2) system calls.
  bsd-user: Implement setloginclass(2) and getloginclass(2) system
    calls.
  bsd-user: Implement pdgetpid(2) and the undocumented setugid.
  bsd-user: Implement fork(2) and vfork(2) system calls.
  bsd-user: Implement rfork(2) system call.
  bsd-user: Implement pdfork(2) system call.

 bsd-user/bsd-proc.c           | 145 ++++++++++
 bsd-user/bsd-proc.h           | 379 +++++++++++++++++++++++++++
 bsd-user/freebsd/meson.build  |   1 +
 bsd-user/freebsd/os-proc.c    | 479 ++++++++++++++++++++++++++++++++++
 bsd-user/freebsd/os-proc.h    | 293 +++++++++++++++++++++
 bsd-user/freebsd/os-syscall.c | 206 ++++++++++++++-
 bsd-user/main.c               |   2 +-
 bsd-user/meson.build          |   6 +
 bsd-user/qemu-bsd.h           |  38 +++
 bsd-user/qemu.h               |   7 +
 bsd-user/signal-common.h      |   1 +
 bsd-user/signal.c             |   6 +
 bsd-user/syscall_defs.h       |  50 +++-
 13 files changed, 1607 insertions(+), 6 deletions(-)
 create mode 100644 bsd-user/bsd-proc.c
 create mode 100644 bsd-user/freebsd/os-proc.c
 create mode 100644 bsd-user/freebsd/os-proc.h
 create mode 100644 bsd-user/qemu-bsd.h

-- 
2.42.0
Re: [PATCH v5 00/28] bsd-user: Implement freebsd process related system calls.
Posted by Warner Losh 7 months ago
On Mon, Sep 25, 2023 at 12:25 PM Karim Taha <kariem.taha2.7@gmail.com>
wrote:

>
>
> Karim Taha (3):
>   bsd-user: define TARGET_RFSPAWN for rfork to use vfork(2) semantics,
>     and fix RLIM_INFINITY
>   bsd-user: Implement get_filename_from_fd.
>   bsd-user: Implement execve(2) and fexecve(2) system calls.
>
> Kyle Evans (1):
>   bsd-user: Get number of cpus.
>
> Stacey Son (24):
>   bsd-user: Define procctl(2) related structs
>   bsd-user: Implement host_to_target_siginfo.
>   bsd-user: Add freebsd_exec_common and do_freebsd_procctl to qemu.h.
>   bsd-user: add extern declarations for bsd-proc.c conversion functions
>   bsd-user: Implement target_to_host_resource conversion function
>   bsd-user: Implement target_to_host_rlim and host_to_target_rlim
>     conversion.
>   bsd-user: Implement host_to_target_rusage and host_to_target_wrusage.
>   bsd-user: Implement host_to_target_waitstatus conversion.
>   bsd-user: Implement getgroups(2) and setgroups(2) system calls.
>   bsd-user: Implement umask(2), setlogin(2) and getlogin(2)
>   bsd-user: Implement getrusage(2).
>   bsd-user: Implement getrlimit(2) and setrlimit(2)
>   bsd-user: Implement several get/set system calls:
>   bsd-user: Implement get/set[resuid/resgid/sid] and issetugid.
>   bsd-user: Add stubs for profil(2), ktrace(2), utrace(2) and ptrace(2).
>   bsd-user: Implement getpriority(2) and setpriority(2).
>   bsd-user: Implement freebsd_exec_common, used in implementing
>     execve/fexecve.
>   bsd-user: Implement procctl(2) along with necessary conversion
>     functions.
>   bsd-user: Implement wait4(2) and wait6(2) system calls.
>   bsd-user: Implement setloginclass(2) and getloginclass(2) system
>     calls.
>   bsd-user: Implement pdgetpid(2) and the undocumented setugid.
>   bsd-user: Implement fork(2) and vfork(2) system calls.
>   bsd-user: Implement rfork(2) system call.
>   bsd-user: Implement pdfork(2) system call.
>
>  bsd-user/bsd-proc.c           | 145 ++++++++++
>  bsd-user/bsd-proc.h           | 379 +++++++++++++++++++++++++++
>  bsd-user/freebsd/meson.build  |   1 +
>  bsd-user/freebsd/os-proc.c    | 479 ++++++++++++++++++++++++++++++++++
>  bsd-user/freebsd/os-proc.h    | 293 +++++++++++++++++++++
>  bsd-user/freebsd/os-syscall.c | 206 ++++++++++++++-
>  bsd-user/main.c               |   2 +-
>  bsd-user/meson.build          |   6 +
>  bsd-user/qemu-bsd.h           |  38 +++
>  bsd-user/qemu.h               |   7 +
>  bsd-user/signal-common.h      |   1 +
>  bsd-user/signal.c             |   6 +
>  bsd-user/syscall_defs.h       |  50 +++-
>  13 files changed, 1607 insertions(+), 6 deletions(-)
>  create mode 100644 bsd-user/bsd-proc.c
>  create mode 100644 bsd-user/freebsd/os-proc.c
>  create mode 100644 bsd-user/freebsd/os-proc.h
>  create mode 100644 bsd-user/qemu-bsd.h
>

queued to bsd-user-trial