e4e5cb4a54
{linux,bsd}-user: Introduce get_task_state()
...
A CPU's TaskState is stored in the CPUState's void *opaque field,
accessing which is somewhat awkward due to having to use a cast.
Introduce a wrapper and use it everywhere.
Suggested-by: Alex Bennée <alex.bennee@linaro.org >
Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com >
Reviewed-by: Warner Losh <imp@bsdimp.com >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20240219141628.246823-3-iii@linux.ibm.com >
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
Message-Id: <20240305121005.3528075-4-alex.bennee@linaro.org >
2024-03-06 12:35:19 +00:00
f703f1ef99
bulk: Do not declare function prototypes using 'extern' keyword
...
By default, C function prototypes declared in headers are visible,
so there is no need to declare them as 'extern' functions.
Remove this redundancy in a single bulk commit; do not modify:
- meson.build (used to check function availability at runtime)
- pc-bios/
- libdecnumber/
- tests/
- *.c
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org >
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Message-Id: <20230605175647.88395-5-philmd@linaro.org >
2023-08-31 19:47:43 +02:00
3f1b0235f6
bsd-user: Remove stray 'inline' from do_bsd_close
...
In the last series, I inadvertantly didn't remove this inline, but did
all the others. Remove it for consistency.
Signed-off-by: Warner Losh <imp@bsdimp.com >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
2022-07-02 07:52:48 -06:00
952d5d30d6
bsd-user: Implement undelete
...
Signed-off-by: Stacey Son <sson@FreeBSD.org >
Signed-off-by: Warner Losh <imp@bsdimp.com >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
2022-07-02 07:52:48 -06:00
d3f29ddacd
bsd-user: Implement pathconf, lpathconf and fpathconf
...
Signed-off-by: Stacey Son <sson@FreeBSD.org >
Signed-off-by: Warner Losh <imp@bsdimp.com >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
2022-07-02 07:52:48 -06:00
5fbd8011ff
bsd-user: Implement mkfifo and mkfifoat
...
Signed-off-by: Stacey Son <sson@FreeBSD.org >
Signed-off-by: Warner Losh <imp@bsdimp.com >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
2022-07-02 07:52:48 -06:00
17a4d13cea
bsd-user: Implement chroot and flock
...
Signed-off-by: Stacey Son <sson@FreeBSD.org >
Signed-off-by: Warner Losh <imp@bsdimp.com >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
2022-07-02 07:52:48 -06:00
c6f0a7d91a
bsd-user: Implement chflags, lchflags and fchflags
...
Signed-off-by: Stacey Son <sson@FreeBSD.org >
Signed-off-by: Warner Losh <imp@bsdimp.com >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
2022-07-02 07:52:48 -06:00
58af3e295c
bsd-user: Implement chown, fchown, lchown and fchownat
...
Signed-off-by: Stacey Son <sson@FreeBSD.org >
Signed-off-by: Warner Losh <imp@bsdimp.com >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
2022-07-02 07:52:48 -06:00
79cfae0c1b
bsd-user: Implement freebsd11_mknod, freebsd11_mknodat and mknodat
...
These implement both the old-pre INO64 mknod variations, as well as the
now current INO64 variant. Make direct syscall calls for these older
syscalls to avloid too many dependencies.
Signed-off-by: Stacey Son <sson@FreeBSD.org >
Signed-off-by: Michal Meloun <mmel@FreeBSD.org >
Signed-off-by: Warner Losh <imp@bsdimp.com >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
2022-07-02 07:52:48 -06:00
0db0db8f23
bsd-user: implement chmod, fchmod, lchmod and fchmodat
...
Signed-off-by: Stacey Son <sson@FreeBSD.org >
Signed-off-by: Warner Losh <imp@bsdimp.com >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
2022-07-02 07:52:48 -06:00
c7b62b4a87
bsd-user: Implement symlink, symlinkat, readlink and readlinkat
...
Signed-off-by: Stacey Son <sson@FreeBSD.org >
Signed-off-by: Jung-uk Kim <jkim@FreeBSD.org >
Signed-off-by: Warner Losh <imp@bsdimp.com >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
2022-07-02 07:52:42 -06:00
af2ae2e8ac
bsd-user: Implement mount, umount and nmount
...
Signed-off-by: Stacey Son <sson@FreeBSD.org >
Signed-off-by: Jung-uk Kim <jkim@FreeBSD.org >
Signed-off-by: Warner Losh <imp@bsdimp.com >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
2022-07-02 07:51:03 -06:00
d35020ed00
bsd-user: Implement acct and sync
...
Signed-off-by: Stacey Son <sson@FreeBSD.org >
Signed-off-by: Warner Losh <imp@bsdimp.com >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
2022-06-14 08:17:44 -06:00
4b795b147b
bsd-user: Implement trunctate and ftruncate
...
Signed-off-by: Stacey Son <sson@FreeBSD.org >
Signed-off-by: Warner Losh <imp@bsdimp.com >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
2022-06-14 08:17:44 -06:00
a15699acaf
bsd-user: Implement dup and dup2
...
Signed-off-by: Stacey Son <sson@FreeBSD.org >
Signed-off-by: Warner Losh <imp@bsdimp.com >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
2022-06-14 08:17:44 -06:00
6af8f76a9f
bsd-user: Implement rmdir and undocumented __getcwd
...
Implemenet rmdir and __getcwd. __getcwd is the undocumented
back end to getcwd(3).
Signed-off-by: Stacey Son <sson@FreeBSD.org >
Signed-off-by: Jung-uk Kim <jkim@FreeBSD.org >
Signed-off-by: Warner Losh <imp@bsdimp.com >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
2022-06-14 08:17:37 -06:00
1ffbd5e7fe
bsd-user: Implement mkdir and mkdirat
...
Signed-off-by: Stacey Son <sson@FreeBSD.org >
Signed-off-by: Warner Losh <imp@bsdimp.com >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
2022-06-14 08:17:31 -06:00
2d3b7e01d6
bsd-user: Implement link, linkat, unlink and unlinkat
...
Signed-off-by: Stacey Son <sson@FreeBSD.org >
Signed-off-by: Jung-uk Kim <jkim@FreeBSD.org >
Signed-off-by: Warner Losh <imp@bsdimp.com >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
2022-06-13 15:51:29 -06:00
ab5fd2d969
bsd-user: Implement rename and renameat
...
Plus the helper LOCK_PATH2 and UNLOCK_PATH2 macros.
Signed-off-by: Stacey Son <sson@FreeBSD.org >
Signed-off-by: Jung-uk Kim <jkim@FreeBSD.org >
Signed-off-by: Warner Losh <imp@bsdimp.com >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
2022-06-13 15:50:50 -06:00
390f547ea8
bsd-user: Implement chdir and fchdir
...
Signed-off-by: Stacey Son <sson@FreeBSD.org >
Signed-off-by: Warner Losh <imp@bsdimp.com >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
2022-06-13 15:50:22 -06:00
65c6c4c893
bsd-user: Implement revoke, access, eaccess and faccessat
...
Signed-off-by: Stacey Son <sson@FreeBSD.org >
Signed-off-by: Warner Losh <imp@bsdimp.com >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
2022-06-13 15:49:39 -06:00
a2ba6c7b80
bsd-user: Implement fdatasync, fsync and close_from
...
Implement fdatasync(2), fsync(2) and close_from(2).
Signed-off-by: Stacey Son <sson@FreeBSD.org >
Signed-off-by: Jung-uk Kim <jkim@FreeBSD.org >
Signed-off-by: Warner Losh <imp@bsdimp.com >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
2022-06-13 15:48:59 -06:00
77d3522b3f
bsd-user: Implement open, openat and close
...
Add the open, openat and close system calls. We need to lock paths, so
implmenent that as well.
Signed-off-by: Stacey Son <sson@FreeBSD.org >
Signed-off-by: Jung-uk Kim <jkim@FreeBSD.org >
Signed-off-by: Kyle Evans <kevans@FreeBSD.org >
Signed-off-by: Warner Losh <imp@bsdimp.com >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
2022-06-13 15:48:09 -06:00
770d8abae7
bsd-user/bsd-file.h: Meat of the write system calls
...
Implement write, writev, pwrite and pwritev and connect them to the
system call dispatch routine.
Signed-off-by: Stacey Son <sson@FreeBSD.org >
Signed-off-by: Kyle Evans <kevans@FreeBSD.org >
Signed-off-by: Warner Losh <imp@bsdimp.com >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
2022-06-10 22:00:48 -06:00
80da1b0088
bsd-user/bsd-file.h: Add implementations for read, pread, readv and preadv
...
Implement do_bsd_{read,pread,readv,preadv}. Connect them to the system
call table.
Signed-off-by: Stacey Son <sson@FreeBSD.org >
Signed-off-by: Kyle Evans <kevans@FreeBSD.org >
Signed-off-by: Warner Losh <imp@bsdimp.com >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
2022-06-10 22:00:48 -06:00
9c0928045c
Clean up ill-advised or unusual header guards
...
Leading underscores are ill-advised because such identifiers are
reserved. Trailing underscores are merely ugly. Strip both.
Our header guards commonly end in _H. Normalize the exceptions.
Macros should be ALL_CAPS. Normalize the exception.
Done with scripts/clean-header-guards.pl.
include/hw/xen/interface/ and tools/virtiofsd/ left alone, because
these were imported from Xen and libfuse respectively.
Signed-off-by: Markus Armbruster <armbru@redhat.com >
Message-Id: <20220506134911.2856099-3-armbru@redhat.com >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
2022-05-11 16:50:01 +02:00
c5c84d1651
bsd-user/bsd-file.h: Implementation details for the filesystem calls
...
An include file that pulls in all the definitions needed for the file
related system calls. This also includes the host definitions to
implement the system calls and some helper routines to lock/unlock
different aspects of the system call arguments.
Signed-off-by: Warner Losh <imp@bsdimp.com >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
2022-02-26 21:05:18 -07:00