ear since last bsd-user specific patch, I take we need a new
>> maintainer for bsd-user?
>
> Perhaps so. Stacey Son submitted a set of patches to
> it back in January, but they were a very large series
> which needed some restructuring to get through code
> review and I don
On Jan 27, 2014, at 2:07 PM, Peter Maydell wrote:
> On 17 December 2013 11:52, Stacey Son wrote:
>> FreeBSD has it's own AES_set_decrypt_key, etc. in libcrypto. This
>> change fixes these conflicts and allows statically linking BSD
>> user mode qemu.
>>
On Jan 27, 2014, at 1:15 PM, Peter Maydell wrote:
> On 17 December 2013 11:52, Stacey Son wrote:
>> [v3]
>>
>> - Rebases to commit f46e720a82ccdf1a521cf459448f3f96ed895d43 (HEAD).
>> - Changes 'HOST_API_DIR' to 'HOST_VARIANT_DIR' for the BSD va
This change moves host OS and arch dependent code for the sysarch
system call related to the -strace functionality into the
appropriate host OS and target arch directories.
---
bsd-user/arm/syscall.h | 36 +++
bsd-user/arm/target_arch_sysarch.h | 78 ++
bsd-
Update FreeBSD system call numbers in freebsd/syscall_nr.h.
Reviewed-by: Ed Maste
---
bsd-user/freebsd/syscall_nr.h | 813 ++---
1 files changed, 445 insertions(+), 368 deletions(-)
diff --git a/bsd-user/freebsd/syscall_nr.h b/bsd-user/freebsd/syscall_nr.h
i
This change adds HOST_VARIANT_DIR so the various BSD OS dependent
code can be seperated into its own directories rather than
using #ifdef's. This may also allow an BSD variant OS to host
another BSD variant's executible as a target.
---
Makefile.target |3 ++-
configure | 11
This change add support for extended attribute and Access
Control List (ACL) related system calls including extattrctl(),
extattr_set_file(2), extattr_delete_file(2), extattr_set_fd(2),
extattr_get_fd(2), extattr_delete_fd(2), extattr_get_link(2),
extattr_set_link(2), extattr_delete_link(2), extatt
This change adds support or stubs for file system (except stat)
related system calls including read(2), pread(2), readv(2),
write(2), pwrite(2), writev(2), pwritev(2), open(2), openat(2),
close(2), closefrom(2), revoke(2), access(2), eaccess(2),
faccessat(2), chdir(2), fchdir(2), rename(2), rename
This change adds support or stubs for memory management related
system calls including mmap(2), munmap(2), mprotect(2), msync(2),
mlock(2), munlock(2), mlockall(2), munlockall(2), madvise(2),
minherit(2), mincore(2), shm_open(2), shm_unlink(2), shmget(2),
shmctl(2), shmat(2), shmdt(2), vadvise(), s
This change adds support or stubs for socket related system calls
including accept(2), bind(2), connect(2), getpeername(2),
getsockname(2), getsockopt(2), setsockopt(2), listen(2),
recvfrom(2), recvmsg(2), sendmsg(2), sendto(2), socket(2),
socketpair(2), shutdown(2), setfib(2), sctp_peeloff(2),
sct
This change adds support or stubs for stat, directory, and file
control related system calls including 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), an
FreeBSD has it's own AES_set_decrypt_key, etc. in libcrypto. This
change fixes these conflicts and allows statically linking BSD
user mode qemu.
---
include/qemu/aes.h |9 +
1 files changed, 9 insertions(+), 0 deletions(-)
diff --git a/include/qemu/aes.h b/include/qemu/aes.h
index e7
This change adds arm-bsd-user, mips-bsd-user, mips64-bsd-user,
mips64el-bsd-user, and mipsel-bsd-user as --target-list options to configure.
---
default-configs/arm-bsd-user.mak |3 +++
default-configs/mips-bsd-user.mak |1 +
default-configs/mips64-bsd-user.mak |1 +
default
emu port, for their contributions.
Note that these patches are also available at:
http://people.freebsd.org/~sson/qemu/qemu-bsd-user/
and on github in the 'bsd-user' branch of the following repository:
https://github.com/staceyson/qemu-bsd-user
Best Regards,
Stacey D. Son
---
S
This change moves the system call handler for sysctl(2) and
sysarch(2) from syscall.c to the OS and arch dependent directories.
This eliminates many of the #ifdef's in syscall.c. These system
call handlers are now located in the host os and target arch
directories.
---
bsd-user/Makefile.objs
On Dec 12, 2013, at 1:57 PM, Ed Maste wrote:
> On 27 November 2013 06:29, Paolo Bonzini wrote:
>> Il 26/11/2013 22:01, Ed Maste ha scritto:
>>>
>>> Ping.
>>>
>>> This is a large change in an area that hasn't had a lot of activity of
>>> late; what are the next steps here?
>>
>> We're now in
This change adds arm-bsd-user, mips-bsd-user, mips64-bsd-user,
mips64el-bsd-user, and mipsel-bsd-user as --target-list options to configure.
Signed-off-by: Stacey Son
---
default-configs/arm-bsd-user.mak |3 +++
default-configs/mips-bsd-user.mak |1 +
default-configs/mips64-bsd
(), sbrk(),
sstk(),
and freebsd6_mmap().
Signed-off-by: Stacey Son
---
bsd-user/Makefile.objs |2 +-
bsd-user/bsd-mem.c | 122
bsd-user/bsd-mem.h | 393 ++
bsd-user/mmap.c| 493
This change moves the system call handler for sysctl(2) and sysarch(2)
from syscall.c to the OS and arch dependent directories. This
eliminates many of the #ifdef's in syscall.c. These system call
handlers are now located in the host os and target arch directories.
Signed-off-by: Stace
FreeBSD has it's own AES_set_decrypt_key, etc. in libcrypto. This
change fixes these conflicts and allows statically linking BSD
user mode qemu.
Signed-off-by: Stacey Son
---
include/qemu/aes.h |9 +
1 files changed, 9 insertions(+), 0 deletions(-)
diff --git a/include/qemu/
().
Signed-off-by: Stacey Son
---
bsd-user/Makefile.objs|2 +-
bsd-user/freebsd/os-extattr.c | 119
bsd-user/freebsd/os-extattr.h | 644 +
bsd-user/freebsd/qemu-os.h|6 +
bsd-user/netbsd/os-extattr.h | 247
bsd-user
This change moves host OS and arch dependent code for the sysarch system
call related to the -strace functionality into the appropriate HOST_ABI_DIR
and TARGET_ABI_DIR directories.
Signed-off-by: Stacey Son
---
bsd-user/arm/syscall.h | 36 +++
bsd-user/arm
),
sctp_generic_sendmsg(2), sctp_generic_recvmsg(2), sendfile(2), and
freebsd4_sendfile(2).
Signed-off-by: Stacey Son
---
bsd-user/Makefile.objs |4 +-
bsd-user/bsd-socket.c| 108 +
bsd-user/bsd-socket.h| 266
bsd-user/freebsd/os-socket.c | 149
Update FreeBSD system call numbers in freebsd/syscall_nr.h.
Reviewed-by: Ed Maste
Signed-off-by: Stacey Son
---
bsd-user/freebsd/syscall_nr.h | 813 ++---
1 files changed, 445 insertions(+), 368 deletions(-)
diff --git a/bsd-user/freebsd/syscall_nr.h b/bsd
), and fcntl(2).
Signed-off-by: Stacey Son
---
bsd-user/Makefile.objs |1 +
bsd-user/freebsd/os-stat.c | 234 +++
bsd-user/freebsd/os-stat.h | 437
bsd-user/freebsd/qemu-os.h |8 +
bsd-user/netbsd/os-stat.c |1 +
bsd
sible.
I would like to recognize Olivier Houchard for a lot of the arm
dependent code and Juergen Lock, the maintainer of the FreeBSD
Qemu port, for their contributions.
Best Regards,
Stacey D. Son
---
Stacey Son (19):
bsd-user: refresh freebsd system call numbers
bsd-user: add HOST_ABI_DIR
.
Signed-off-by: Stacey Son
---
bsd-user/bsd-file.h | +++
bsd-user/qemu.h | 36 ++
bsd-user/syscall.c | 391 ++
3 files changed, 1454 insertions(+), 84 deletions(-)
create mode 100644 bsd-user/bsd-file.h
diff --git a
This change adds HOST_ABI_DIR (similar to TARGET_ABI_DIR) so the various
BSD OS dependent code can be seperated into its own directories rather
than using #ifdef's.
Signed-off-by: Stacey Son
---
Makefile.target |3 ++-
configure | 11 +++
2 files changed, 13 insertions(
On Oct 16, 2013, at 11:32 AM, Peter Maydell wrote:
> On 16 October 2013 16:46, Stacey Son wrote:
>> The arm code came from another source as noted in the cover letter. It
>> could use a lot more work.
>
> Possibly better to leave it out of this initial patch set and s
On Oct 16, 2013, at 10:22 AM, Alex Bennée wrote:
>
> s...@freebsd.org writes:
>
>> This change adds arm-bsd-user, mips-bsd-user, mips64-bsd-user,
>> mips64el-bsd-user, and mipsel-bsd-user as --target-list options to configure.
>>
>> Signed-off-by: Stace
.c to the OS and arch dependent directories. This eliminates
>> many of the #ifdef's in main.c. The cpu initialization and loop
>> code is now located in the arch directory along with target arch
>> support code.
>>
>> Signed-off-by: Stacey Son
>
On Oct 16, 2013, at 10:27 AM, Alex Bennée wrote:
>
> s...@freebsd.org writes:
>
>> This patch series adds a significant number of system calls and mips/arm
>> support for bsd-user. In its current state it can emulate most
>> FreeBSD mips/mips64 and arm target binaries on a x86 host in a simpl
().
Signed-off-by: Stacey Son
---
bsd-user/Makefile.objs|2 +-
bsd-user/freebsd/os-extattr.c | 119
bsd-user/freebsd/os-extattr.h | 644 +
bsd-user/freebsd/qemu-os.h|6 +
bsd-user/netbsd/os-extattr.h | 247
bsd-user
),
sctp_generic_sendmsg(2), sctp_generic_recvmsg(2), sendfile(2), and
freebsd4_sendfile(2).
Signed-off-by: Stacey Son
---
bsd-user/Makefile.objs |4 +-
bsd-user/bsd-socket.c| 108 +
bsd-user/bsd-socket.h| 266
bsd-user/freebsd/os-socket.c | 149
This change adds arm-bsd-user, mips-bsd-user, mips64-bsd-user,
mips64el-bsd-user, and mipsel-bsd-user as --target-list options to configure.
Signed-off-by: Stacey Son
---
default-configs/arm-bsd-user.mak |3 +++
default-configs/mips-bsd-user.mak |1 +
default-configs/mips64-bsd
(), sbrk(),
sstk(),
and freebsd6_mmap().
Signed-off-by: Stacey Son
---
bsd-user/Makefile.objs |2 +-
bsd-user/bsd-mem.c | 122 +++
bsd-user/bsd-mem.h | 393
bsd-user/mmap.c| 160 +---
bsd-user/qemu
), and fcntl(2).
Signed-off-by: Stacey Son
---
bsd-user/Makefile.objs |1 +
bsd-user/freebsd/os-stat.c | 234 +++
bsd-user/freebsd/os-stat.h | 437
bsd-user/freebsd/qemu-os.h |8 +
bsd-user/netbsd/os-stat.c |1 +
bsd
This change adds HOST_ABI_DIR (similar to TARGET_ABI_DIR) so the various
BSD OS dependent code can be seperated into its own directories rather
than using #ifdef's.
Signed-off-by: Stacey Son
---
Makefile.target |3 ++-
configure | 11 +++
2 files changed, 13 insertions(
.
Signed-off-by: Stacey Son
---
bsd-user/bsd-file.h | +++
bsd-user/qemu.h | 36 ++
bsd-user/syscall.c | 391 ++
3 files changed, 1454 insertions(+), 84 deletions(-)
create mode 100644 bsd-user/bsd-file.h
diff --git a
This change moves the system call handler for sysctl(2) and sysarch(2)
from syscall.c to the OS and arch dependent directories. This
eliminates many of the #ifdef's in syscall.c. These system call
handlers are now located in the host os and target arch directories.
Signed-off-by: Stace
This change moves host OS and arch dependent code for the sysarch system
call related to the -strace functionality into the appropriate HOST_ABI_DIR
and TARGET_ABI_DIR directories.
Signed-off-by: Stacey Son
---
bsd-user/arm/syscall.h | 36 +++
bsd-user/arm
Update FreeBSD system call numbers in freebsd/syscall_nr.h.
Signed-off-by: Stacey Son
---
bsd-user/freebsd/syscall_nr.h | 813 ++---
1 files changed, 445 insertions(+), 368 deletions(-)
diff --git a/bsd-user/freebsd/syscall_nr.h b/bsd-user/freebsd
cey D. Son
---
Stacey Son (18):
bsd-user: refresh freebsd system call numbers
bsd-user: add HOST_ABI_DIR for the various *BSD dependent code.
bsd-user: move OS/arch dependent code for strace into separate
directories
bsd-user: move target arch and host OS dependent code out of main.c
bsd
On Jun 24, 2013, at 12:41 PM, Peter Maydell wrote:
> On 24 June 2013 03:03, Stacey Son wrote:
>> This change add more strace formating for popular system calls. It also
>> separates out *BSD and architecture dependent code. In addition, it
>> changes TARGET_OS in
On Jun 24, 2013, at 3:07 PM, Anthony Liguori wrote:
> Stacey Son writes:
>
>> On Jun 24, 2013, at 12:55 PM, Anthony Liguori wrote:
>>
>>> There is no humanly way 23k LOC can be reviewed in a single series.
>>
>> Yes, indeed, it is a lot of code.
>&
On Jun 24, 2013, at 12:37 PM, Peter Maydell wrote:
> On 24 June 2013 03:03, Stacey Son wrote:
>> diff --git a/configure b/configure
>> index ba90975..812ea3f 100755
>> --- a/configure
>> +++ b/configure
>> @@ -1438,6 +1438,15 @@ fi
>>
>> if
On Jun 24, 2013, at 12:24 PM, Peter Maydell wrote:
> On 24 June 2013 03:03, Stacey Son wrote:
>> diff --git a/configure b/configure
>> index ad32f87..749eba8 100755
>> --- a/configure
>> +++ b/configure
>> @@ -432,6 +432,7 @@ if test -z "$ARCH"; th
On Jun 24, 2013, at 12:15 PM, Peter Maydell wrote:
>>
>> +#if defined(TARGET_MIPS)
>> +
>> +/* Compare to sys/mips/mips/trap.c */
>> +
>> +void cpu_loop(CPUMIPSState *env)
>
> I suspect you'd do better in the long term to restructure
> to pull cpu_loop out into a per-architecture source file
>
On Jun 24, 2013, at 12:55 PM, Anthony Liguori wrote:
> There is no humanly way 23k LOC can be reviewed in a single series.
Yes, indeed, it is a lot of code.
> Has this been maintained out of tree for some time?
Yes, it has been a large, ugly patch set in the FreeBSD qemu-devel port for
some t
On Jun 24, 2013, at 12:49 PM, Peter Maydell wrote:
> On 24 June 2013 03:03, Stacey Son wrote:
>> This patch series add BSD user mode support for FreeBSD. In addition,
>> it adds the necessary architecture dependent code for the mips, mips64,
>> and arm targets. In its
This change add System V semaphores/messages, uuid, FreeBSD cpu
scheduling/affinity management, and other miscellaneous system call shims. A
lot of these other system call shims are stubs for maybe future work.
Signed-off-by: Stacey Son
---
bsd-user/Makefile.objs |2 +-
bsd-user/bsd
This change adds support for signal related system calls including sigaction(2),
sigprocmask(2), sigpending(2), sigsuspend(2), and so on. The older, obsolete,
system calls such as sigvec(2), sigblock(2), sigsetmask(2), and sigstack(2) are
not supported.
Signed-off-by: Stacey Son
---
bsd-user
Initialize all the registers correctly for mips/mips64 in init_thread(), use
the correct ELF_START_MMAP for mips64, use the correct run-time linker, and
clean up the code by eliminating some #if's. Also, fix all the checkpatch.pl
warnings and errors.
Signed-off-by: Stacey Son
---
bsd
Add the bsd_binprm (formerly linux_binprm) structure to TaskState so it can be
used to support core dumping emulation support in the future. Also, make freebsd
the default bsd_type, if compiled on a FreeBSD system.
Signed-off-by: Stacey Son
---
bsd-user/bsdload.c | 36
If the target executable's path is not absolute then this code will search
the PATH to find it. Save the fullpath to put on to the stack for the
runtime linker.
Signed-off-by: Stacey Son
---
bsd-user/bsdload.c | 84 +--
bsd-user/qemu.h|
This change adds support for sysarch() and sysctl() system call emulation.
sysarch() is both architecture and OS dependent. Therefore this change
adds a handler for each architecture. sysctl() has a lot special cases that
have to each decoded and handled individually.
Signed-off-by: Stacey Son
Add bsd-user signal emulation code, fix name space confict with sigqueue, add
arch dependent code for mips/mips64, and OS dependent definitions for FreeBSD.
Signed-off-by: Stacey Son
---
bsd-user/freebsd/target_os_signal.h |9 +
bsd-user/i386/target_arch_signal.h| 39 ++
bsd-user
included
in *bsd/os-socket.h.
Signed-off-by: Stacey Son
---
bsd-user/Makefile.objs |2 +-
bsd-user/bsd-socket.c| 108 +
bsd-user/bsd-socket.h| 266
bsd-user/freebsd/os-socket.c | 149
bsd-user/freebsd/os-socket.h | 548
This change adds support for the extended attribute and access control list
system calls. While NetBSD has the same extended attribute system calls it
is unclear if OpenBSD does. Therefore, this calls were added as FreeBSD-only.
Signed-off-by: Stacey Son
---
bsd-user/Makefile.objs
This change adds support for status, file handle, and fcntl related system
calls including stat(), statfs(), fhstatfs(), fcntl() and the many variants.
Signed-off-by: Stacey Son
---
bsd-user/Makefile.objs |3 +-
bsd-user/freebsd/os-stat.c | 234 +++
bsd-user/freebsd
This change add more strace formating for popular system calls. It also
separates out *BSD and architecture dependent code. In addition, it
changes TARGET_OS in configure (and in the associated makefiles) to
what it should really be: HOST_OS.
Signed-off-by: Stacey Son
---
Makefile.target
Update freebsd/syscall_nr.h with FreeBSD's latest system call numbers from
-current (FreeBSD 10).
Signed-off-by: Stacey Son
---
bsd-user/freebsd/syscall_nr.h | 834 ++---
1 files changed, 446 insertions(+), 388 deletions(-)
diff --git a/bsd-user/fr
Add license headers, #ifndef's for header files, and fix various style problem
as reported by checkpatch.pl.
Signed-off-by: Stacey Son
---
bsd-user/bsd-mman.h |2 +-
bsd-user/bsdload.c | 21 ++-
bsd-user/elfload.c |
SD it is always
defined as an int64_t. On OpenBSD it is defined as an int. This change also
defines system call shim stubs for NetBSD/OpenBSD in case some whats to add
code to emulate FreeBSD binaries on one of the other *BSD's.
Signed-off-by: Stacey Son
---
bsd-user/Makefile.objs |
This change adds support for bsd memory management system calls including
mmap(2), munmap(2), mprotect(2), msync(2), etc. Also, it adds shared memory
management system calls. In addition, cleans up syscall.c a bit and fixes
checkpatch.pl warnings and errors.
Signed-off-by: Stacey Son
---
bsd
Add the main cpu loop, cpu_loop(), for mips and mips64 architecture. Set the
cpu model. Add some stubs for future code.
Signed-off-by: Stacey Son
---
bsd-user/errno_defs.h |5 +
bsd-user/main.c | 189 +
bsd-user/mips
This changes adds support for file and file system related system calls that
are largely BSD OS independent. Also includes some more clean up of syscall.c.
Signed-off-by: Stacey Son
---
bsd-user/bsd-file.h| 1095
bsd-user/i386
Put full path for target executable, signal trampolin code, and stack canary
on the stack in addition to just simply coping argv and env values.
Signed-off-by: Stacey Son
---
bsd-user/elfload.c | 32 +++-
bsd-user/freebsd/target_os_stack.h | 124
red.
Best Regards,
Stacey D. Son
---
Stacey Son (23):
bsd-user: initial code clean up
bsd-user: add initial support for mips/mips64
bsd-user: additional seperation of OS and architecture dependent code
bsd-user: add bsd signal emulation
bsd-user: add bsd_binprm to TaskState for core dumping
69 matches
Mail list logo