Upstream the implementation of the stat system calls from the
qemu-bsd-user fork, the following system calls are implemented:
stat(2), lstat(2), fstat(2), fstatat(2), nstat, nfstat, nlstat
getfh(2), lgetfh(2), fhopen(2), fhstat(2), fhstatfs(2), statfs(2)
fstatfs(2), getfsstat(2), getdents(2), getdirentries(2), fcntl(2)
The changes themselves look good (although i had to apply
the safe_fcntl one by hand, it was trivial, but next time i'll ask
you to redo things).
I also needed to tweak the commit messages in three ways:
(1) I had to add 'bsd-user: ' to the front of the first line of each
of the commits (2) I had to reword a few of them to make them
unique and (3) I had to wrap the lines at 80 columns in a few
places. The best way to check on this is to make sure each
of the lines with 'git log --oneline master..' is different. Next
time I'll try to flag them at the review stage.
and OK).
And these patches seem to match bsd-user fork blitz.
And my acceptance test works, so long as I don't add '-strace'
which hits this bug documented in strace.c:
/* XXX: this format system is broken because it uses
host types and host pointers for strings */
and we pass a target address to a host to do a %s on...
Hopefully all that code will go away, but since this is a
pre-existing bug that you weren't trying to fix, this counts
as a pass. It doesn't fail in the obvious way due to another
bug in qemu-upstream bsd-user, that's fixed in the blitz branch
(it generates a segv, which isn't properly handled sometimes
in qemu upstream). I document it here for others that might
run into it in the future :).
I've queued them to the branch that I'll submit when things
open up...
Warner
Karim Taha (1):
Add os-stat.c to the build
Kyle Evans (2):
Disable clang warnings
Define safe_fcntl macro in bsd-user/syscall_defs.h
Michal Meloun (8):
Add struct target_stat to bsd-user/syscall_defs.h
Add struct target_statfs to bsd-user/syscall_defs.h
Implement h2t_freebsd_stat and h2t_freebsd_statfs functions
Implement freebsd11 stat related syscalls
Implement freebsd11 stat related syscalls
Implement freebsd11 stat related syscalls
Implement freebsd11 stat related syscalls
Implement freebsd11 stat related syscalls
Mikaël Urankar (1):
Implement do_freebsd_realpathat syscall
Stacey Son (13):
Declarations of h2t and t2h conversion functions.
Add struct target_freebsd11_stat to bsd-user/syscall_defs
Add structs target_freebsd11_nstat and target_freebsd11_statfs to
bsd-user/syscall_defs.h
Add struct target_freebsd_fhandle and fcntl flags to
bsd-user/syscall_defs.h
Implement h2t_freebsd11_stat h2t_freebsd_nstat
Implement h2t_freebsd_fhandle t2h_freebsd_fhandle functions
Implement h2t_freebds11_statfs
Implement target_to_host_fcntl_cmd
Implement stat related syscalls
Implement stat related syscalls
Implement stat related syscalls
Implement stat related syscalls
Implement stat related syscalls
Warner Losh (7):
Move _WANT_FREEBSD macros to include/qemu/osdep.h
Update the definitions of __put_user and __get_user macros
Rename target_freebsd_time_t to target_time_t
Add glue to call the following syscalls to the freebsd_syscall
function:
Add glue to call the following syscalls to the freebsd_syscall
function:
Add glue to call the following syscalls to the freebsd_syscall
function:
Add glue to call the following syscalls to the freebsd_syscall
function:
bsd-user/freebsd/meson.build | 1 +
bsd-user/freebsd/os-stat.c | 262 ++++++++++++++
bsd-user/freebsd/os-stat.h | 663 ++++++++++++++++++++++++++++++++++
bsd-user/freebsd/os-syscall.c | 121 ++++++-
bsd-user/freebsd/qemu-os.h | 50 +++
bsd-user/qemu.h | 82 ++---
bsd-user/signal.c | 5 +-
bsd-user/syscall_defs.h | 221 +++++++++++-
include/qemu/compiler.h | 30 ++
include/qemu/osdep.h | 13 +
10 files changed, 1382 insertions(+), 66 deletions(-)
create mode 100644 bsd-user/freebsd/os-stat.c
create mode 100644 bsd-user/freebsd/os-stat.h
create mode 100644 bsd-user/freebsd/qemu-os.h
--
2.40.0