Three patch series were reviewed during the code freeze and are finally ready to
head into the tree.

(1) Use SPDX identifiers in most places. This makes it easier for me to upstream
since I can do almost all of the files in the forked tree and not have it be an
issue each time I add a new file.

(2) Per discussions in the review, copy thunk.c to bsd-user from linux-user. We
will use this in the third set of patches, ioctls. All that changed is the
copyright header. This file has style problems, but fixing them would be a worse
problem than the style issues since we share it with linux-user and want to
track changes there. In the future we may actually share, but for now this was
the compromise.

(3) All the ioctls that bsd-user supports in FreeBSD. This uses the thunk.c code
to translate back and forth between host and target. A number of pedantic
changes were made against the blitz branch upstream and were discovered or
highlighted by claude code.

I used claude to extract all the ioctl code from the blitz branch for
upstreaming. I had it review the code and fixed the problems it found (though
one was a false positive). I've not tagged these as Assisted-by: since that part
of our policy is in flux. No creative output of claude was applied here, though
it also suggested the commit messages (that I rewrote in large part, but
vestiges of the original remain). To be clear: Claude didn't write any of
the actual code.

Stacey Son (19):
  bsd-user: ioctl: add common definitions
  bsd-user: Add FreeBSD tty ioctl definitions
  bsd-user: Add FreeBSD file I/O ioctl definitions
  bsd-user: Add FreeBSD socket ioctl definitions
  bsd-user: Add FreeBSD cryptodev ioctl definitions
  bsd-user: Add FreeBSD disk ioctl definitions
  bsd-user: Add FreeBSD IPv6 ioctl definitions
  bsd-user: Add FreeBSD ioctl type definitions
  bsd-user: Add FreeBSD ioctl command table
  bsd-user: Add bsd-ioctl.h header
  bsd-user: Add target_sockaddr and safe_ioctl to syscall_defs.h
  bsd-user: Add bsd-ioctl.c infrastructure and termios conversion
  bsd-user: Add log_unsupported_ioctl function
  bsd-user: Add do_ioctl_unsupported function
  bsd-user: Add target_to_host_sockaddr_in6 function
  bsd-user: Add do_ioctl_in6_ifreq_sockaddr_int function
  bsd-user: Add do_bsd_ioctl main function
  bsd-user: Add init_bsd_ioctl function
  bsd-user: Add call to do_bsd_ioctl and add bsd-ioctl.c to the build

Warner Losh (6):
  bsd-user: Switch to SPDX-License-Expression
  bsd-user: Add syscall header generator for FreeBSD
  bsd-user: Delete sbrk and sstk system calls.
  bsd-user: Create os-syscall.h
  bsd-user: Switch to generated syscall_nr.h
  bsd-user: Copy linux-user/thunk.c to bsd-user

 bsd-user/aarch64/signal.c               |  15 +-
 bsd-user/aarch64/target_arch.h          |  16 +-
 bsd-user/aarch64/target_arch_cpu.c      |  15 +-
 bsd-user/aarch64/target_arch_cpu.h      |  18 +-
 bsd-user/aarch64/target_arch_elf.h      |  14 +-
 bsd-user/aarch64/target_arch_reg.h      |  19 +-
 bsd-user/aarch64/target_arch_signal.h   |  16 +-
 bsd-user/aarch64/target_arch_sigtramp.h |  16 +-
 bsd-user/aarch64/target_arch_sysarch.h  |  16 +-
 bsd-user/aarch64/target_arch_thread.h   |  16 +-
 bsd-user/aarch64/target_arch_vmparam.h  |  16 +-
 bsd-user/aarch64/target_syscall.h       |  16 +-
 bsd-user/arm/signal.c                   |  18 +-
 bsd-user/arm/target_arch.h              |  16 +-
 bsd-user/arm/target_arch_cpu.c          |  18 +-
 bsd-user/arm/target_arch_cpu.h          |  18 +-
 bsd-user/arm/target_arch_elf.h          |  18 +-
 bsd-user/arm/target_arch_reg.h          |  18 +-
 bsd-user/arm/target_arch_signal.h       |  18 +-
 bsd-user/arm/target_arch_sigtramp.h     |  18 +-
 bsd-user/arm/target_arch_sysarch.h      |  18 +-
 bsd-user/arm/target_arch_thread.h       |  18 +-
 bsd-user/arm/target_arch_vmparam.h      |  18 +-
 bsd-user/arm/target_syscall.h           |  18 +-
 bsd-user/bsd-file.h                     |  18 +-
 bsd-user/bsd-ioctl.c                    | 436 ++++++++++++++++++++
 bsd-user/bsd-ioctl.h                    |  14 +
 bsd-user/bsd-mem.c                      |  17 +-
 bsd-user/bsd-mem.h                      |  30 +-
 bsd-user/bsd-proc.c                     |  17 +-
 bsd-user/bsd-proc.h                     |  17 +-
 bsd-user/freebsd/meson.build            |  10 +-
 bsd-user/freebsd/os-ioctl-cmds.h        | 149 +++++++
 bsd-user/freebsd/os-ioctl-cryptodev.h   |  84 ++++
 bsd-user/freebsd/os-ioctl-disk.h        |  52 +++
 bsd-user/freebsd/os-ioctl-filio.h       |  34 ++
 bsd-user/freebsd/os-ioctl-in6_var.h     | 226 +++++++++++
 bsd-user/freebsd/os-ioctl-ioccom.h      |  43 ++
 bsd-user/freebsd/os-ioctl-sockio.h      | 246 +++++++++++
 bsd-user/freebsd/os-ioctl-ttycom.h      | 239 +++++++++++
 bsd-user/freebsd/os-ioctl-types.h       | 109 +++++
 bsd-user/freebsd/os-misc.h              |  18 +-
 bsd-user/freebsd/os-proc.c              |  17 +-
 bsd-user/freebsd/os-proc.h              |  18 +-
 bsd-user/freebsd/os-stat.c              |  17 +-
 bsd-user/freebsd/os-stat.h              |  18 +-
 bsd-user/freebsd/os-strace.h            |  19 +-
 bsd-user/freebsd/os-syscall.c           |  17 +-
 bsd-user/freebsd/os-syscall.h           |  21 +
 bsd-user/freebsd/scripts/syscallhdr.sh  |   9 +
 bsd-user/freebsd/strace.list            |   4 +
 bsd-user/freebsd/syscall_nr.h           | 515 ------------------------
 bsd-user/freebsd/target_os_elf.h        |  18 +-
 bsd-user/freebsd/target_os_siginfo.h    |  18 +-
 bsd-user/freebsd/target_os_signal.h     |   7 +
 bsd-user/freebsd/target_os_stack.h      |  18 +-
 bsd-user/freebsd/target_os_thread.h     |  18 +-
 bsd-user/freebsd/target_os_user.h       |  18 +-
 bsd-user/freebsd/target_os_vmparam.h    |  18 +-
 bsd-user/i386/signal.c                  |  17 +-
 bsd-user/i386/target_arch.h             |  16 +-
 bsd-user/i386/target_arch_cpu.c         |  17 +-
 bsd-user/i386/target_arch_cpu.h         |  17 +-
 bsd-user/i386/target_arch_elf.h         |  18 +-
 bsd-user/i386/target_arch_reg.h         |  19 +-
 bsd-user/i386/target_arch_signal.h      |  16 +-
 bsd-user/i386/target_arch_sigtramp.h    |  16 +-
 bsd-user/i386/target_arch_sysarch.h     |  18 +-
 bsd-user/i386/target_arch_thread.h      |  18 +-
 bsd-user/i386/target_arch_vmparam.h     |  18 +-
 bsd-user/i386/target_syscall.h          |  16 +-
 bsd-user/meson.build                    |   2 +
 bsd-user/qemu-bsd.h                     |  18 +-
 bsd-user/syscall_defs.h                 |  50 +--
 bsd-user/thunk.c                        | 470 +++++++++++++++++++++
 bsd-user/x86_64/signal.c                |  16 +-
 bsd-user/x86_64/target_arch.h           |  16 +-
 bsd-user/x86_64/target_arch_cpu.c       |  17 +-
 bsd-user/x86_64/target_arch_cpu.h       |  17 +-
 bsd-user/x86_64/target_arch_elf.h       |  18 +-
 bsd-user/x86_64/target_arch_reg.h       |  19 +-
 bsd-user/x86_64/target_arch_signal.h    |  17 +-
 bsd-user/x86_64/target_arch_sigtramp.h  |  17 +-
 bsd-user/x86_64/target_arch_sysarch.h   |  17 +-
 bsd-user/x86_64/target_arch_thread.h    |  18 +-
 bsd-user/x86_64/target_arch_vmparam.h   |  18 +-
 bsd-user/x86_64/target_syscall.h        |  16 +-
 87 files changed, 2362 insertions(+), 1526 deletions(-)
 create mode 100644 bsd-user/bsd-ioctl.c
 create mode 100644 bsd-user/bsd-ioctl.h
 create mode 100644 bsd-user/freebsd/os-ioctl-cmds.h
 create mode 100644 bsd-user/freebsd/os-ioctl-cryptodev.h
 create mode 100644 bsd-user/freebsd/os-ioctl-disk.h
 create mode 100644 bsd-user/freebsd/os-ioctl-filio.h
 create mode 100644 bsd-user/freebsd/os-ioctl-in6_var.h
 create mode 100644 bsd-user/freebsd/os-ioctl-ioccom.h
 create mode 100644 bsd-user/freebsd/os-ioctl-sockio.h
 create mode 100644 bsd-user/freebsd/os-ioctl-ttycom.h
 create mode 100644 bsd-user/freebsd/os-ioctl-types.h
 create mode 100644 bsd-user/freebsd/os-syscall.h
 create mode 100644 bsd-user/freebsd/scripts/syscallhdr.sh
 delete mode 100644 bsd-user/freebsd/syscall_nr.h
 create mode 100644 bsd-user/thunk.c

-- 
2.52.0


Reply via email to