[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Minios-devel] [UNIKRAFT PATCH 0/6] lib/syscall_shim: Handling binary system calls



Hi Simon, 

Thanks a lot for this patch series! 

Gaulthier

> On 11 Dec 2019, at 15:19, Simon Kuenzer <simon.kuenzer@xxxxxxxxx> wrote:
> 
> This series introduces support for handling Linux-style binary system call
> requests with the syscall_shim library. The syscall_shim library provides
> handling of indirect system calls (like documented with `man syscall(2)`)
> which is also needed to handle binary system call requests: The system call
> number is handed over as argument to the system call request.
> 
> However, the convention of error handling is different between the binary
> syscall ABI and the libc level. For this purpose the concept of "libc-style"
> and "raw" system call implementions is introduced.
> 
> This patch series depends on the series:
> "Support for binary system calls (x86_64, KVM for now)"
> (https://patchwork.unikraft.org/project/unikraft/list/?series=1082)
> 
> Simon Kuenzer (6):
>  lib/syscall_shim: Namespace definitions
>  lib/syscall_shim: Populate make rule dependencies
>  lib/syscall_shim: uk_syscall_name(), uk_syscall_name_p()
>  lib/syscall_shim: Raw system calls
>  doc: Raw system calls with syscall_shim
>  lib/syscall_shim: Binary system call handler
> 
> doc/guides/developers-app.rst                 | 135 +++++++---
> lib/syscall_shim/Config.uk                    |  15 +-
> lib/syscall_shim/Makefile.uk                  |  44 +++-
> lib/syscall_shim/gen_provided.awk             |   5 +-
> lib/syscall_shim/gen_stubs.awk                |   8 +-
> lib/syscall_shim/gen_syscall_map.awk          |   3 +-
> .../{gen_entry.awk => gen_uk_syscall.awk}     |   7 +-
> lib/syscall_shim/gen_uk_syscall_name.awk      |  20 ++
> lib/syscall_shim/gen_uk_syscall_name_p.awk    |  20 ++
> lib/syscall_shim/gen_uk_syscall_r.awk         |  39 +++
> lib/syscall_shim/include/uk/syscall.h         | 234 +++++++++++++-----
> lib/syscall_shim/regmap_linuxabi.h            |  46 ++++
> .../{entry.c.in_end => uk_syscall.c.in_end}   |   4 +-
> lib/syscall_shim/uk_syscall_r.c.in_end        |  33 +++
> lib/vfscore/exportsyms.uk                     |   3 +-
> lib/vfscore/main.c                            |   9 +-
> 16 files changed, 497 insertions(+), 128 deletions(-)
> rename lib/syscall_shim/{gen_entry.awk => gen_uk_syscall.awk} (77%)
> create mode 100644 lib/syscall_shim/gen_uk_syscall_name.awk
> create mode 100644 lib/syscall_shim/gen_uk_syscall_name_p.awk
> create mode 100644 lib/syscall_shim/gen_uk_syscall_r.awk
> create mode 100644 lib/syscall_shim/regmap_linuxabi.h
> rename lib/syscall_shim/{entry.c.in_end => uk_syscall.c.in_end} (74%)
> create mode 100644 lib/syscall_shim/uk_syscall_r.c.in_end
> 
> -- 
> 2.20.1
> 


_______________________________________________
Minios-devel mailing list
Minios-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/minios-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.