/qemu/common-user/ |
H A D | safe-syscall-error.c | a3310c0397e21df8f47cde3e55736104b9584d2d Mon Nov 15 13:08:52 UTC 2021 Richard Henderson <richard.henderson@linaro.org> linux-user: Move syscall error detection into safe_syscall_base
The current api from safe_syscall_base() is to return -errno, which is the interface provided by *some* linux kernel abis. The wrapper macro, safe_syscall(), detects error, stores into errno, and returns -1, to match the api of the system syscall().
For those kernel abis that do not return -errno natively, this leads to double syscall error detection. E.g. Linux ppc64, which sets the SO flag for error.
Simplify the usage from C by moving the error detection into assembly, and usage from assembly by providing a C helper with which to set errno.
Reviewed-by: Warner Losh <imp@bsdimp.com> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
|
/qemu/common-user/host/arm/ |
H A D | safe-syscall.inc.S | a3310c0397e21df8f47cde3e55736104b9584d2d Mon Nov 15 13:08:52 UTC 2021 Richard Henderson <richard.henderson@linaro.org> linux-user: Move syscall error detection into safe_syscall_base
The current api from safe_syscall_base() is to return -errno, which is the interface provided by *some* linux kernel abis. The wrapper macro, safe_syscall(), detects error, stores into errno, and returns -1, to match the api of the system syscall().
For those kernel abis that do not return -errno natively, this leads to double syscall error detection. E.g. Linux ppc64, which sets the SO flag for error.
Simplify the usage from C by moving the error detection into assembly, and usage from assembly by providing a C helper with which to set errno.
Reviewed-by: Warner Losh <imp@bsdimp.com> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
|
/qemu/common-user/host/s390x/ |
H A D | safe-syscall.inc.S | a3310c0397e21df8f47cde3e55736104b9584d2d Mon Nov 15 13:08:52 UTC 2021 Richard Henderson <richard.henderson@linaro.org> linux-user: Move syscall error detection into safe_syscall_base
The current api from safe_syscall_base() is to return -errno, which is the interface provided by *some* linux kernel abis. The wrapper macro, safe_syscall(), detects error, stores into errno, and returns -1, to match the api of the system syscall().
For those kernel abis that do not return -errno natively, this leads to double syscall error detection. E.g. Linux ppc64, which sets the SO flag for error.
Simplify the usage from C by moving the error detection into assembly, and usage from assembly by providing a C helper with which to set errno.
Reviewed-by: Warner Losh <imp@bsdimp.com> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
|
/qemu/common-user/host/riscv/ |
H A D | safe-syscall.inc.S | a3310c0397e21df8f47cde3e55736104b9584d2d Mon Nov 15 13:08:52 UTC 2021 Richard Henderson <richard.henderson@linaro.org> linux-user: Move syscall error detection into safe_syscall_base
The current api from safe_syscall_base() is to return -errno, which is the interface provided by *some* linux kernel abis. The wrapper macro, safe_syscall(), detects error, stores into errno, and returns -1, to match the api of the system syscall().
For those kernel abis that do not return -errno natively, this leads to double syscall error detection. E.g. Linux ppc64, which sets the SO flag for error.
Simplify the usage from C by moving the error detection into assembly, and usage from assembly by providing a C helper with which to set errno.
Reviewed-by: Warner Losh <imp@bsdimp.com> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
|
/qemu/common-user/host/aarch64/ |
H A D | safe-syscall.inc.S | a3310c0397e21df8f47cde3e55736104b9584d2d Mon Nov 15 13:08:52 UTC 2021 Richard Henderson <richard.henderson@linaro.org> linux-user: Move syscall error detection into safe_syscall_base
The current api from safe_syscall_base() is to return -errno, which is the interface provided by *some* linux kernel abis. The wrapper macro, safe_syscall(), detects error, stores into errno, and returns -1, to match the api of the system syscall().
For those kernel abis that do not return -errno natively, this leads to double syscall error detection. E.g. Linux ppc64, which sets the SO flag for error.
Simplify the usage from C by moving the error detection into assembly, and usage from assembly by providing a C helper with which to set errno.
Reviewed-by: Warner Losh <imp@bsdimp.com> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
|
/qemu/common-user/host/i386/ |
H A D | safe-syscall.inc.S | a3310c0397e21df8f47cde3e55736104b9584d2d Mon Nov 15 13:08:52 UTC 2021 Richard Henderson <richard.henderson@linaro.org> linux-user: Move syscall error detection into safe_syscall_base
The current api from safe_syscall_base() is to return -errno, which is the interface provided by *some* linux kernel abis. The wrapper macro, safe_syscall(), detects error, stores into errno, and returns -1, to match the api of the system syscall().
For those kernel abis that do not return -errno natively, this leads to double syscall error detection. E.g. Linux ppc64, which sets the SO flag for error.
Simplify the usage from C by moving the error detection into assembly, and usage from assembly by providing a C helper with which to set errno.
Reviewed-by: Warner Losh <imp@bsdimp.com> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
|
/qemu/common-user/host/ppc64/ |
H A D | safe-syscall.inc.S | a3310c0397e21df8f47cde3e55736104b9584d2d Mon Nov 15 13:08:52 UTC 2021 Richard Henderson <richard.henderson@linaro.org> linux-user: Move syscall error detection into safe_syscall_base
The current api from safe_syscall_base() is to return -errno, which is the interface provided by *some* linux kernel abis. The wrapper macro, safe_syscall(), detects error, stores into errno, and returns -1, to match the api of the system syscall().
For those kernel abis that do not return -errno natively, this leads to double syscall error detection. E.g. Linux ppc64, which sets the SO flag for error.
Simplify the usage from C by moving the error detection into assembly, and usage from assembly by providing a C helper with which to set errno.
Reviewed-by: Warner Losh <imp@bsdimp.com> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
|
/qemu/include/user/ |
H A D | safe-syscall.h | a3310c0397e21df8f47cde3e55736104b9584d2d Mon Nov 15 13:08:52 UTC 2021 Richard Henderson <richard.henderson@linaro.org> linux-user: Move syscall error detection into safe_syscall_base
The current api from safe_syscall_base() is to return -errno, which is the interface provided by *some* linux kernel abis. The wrapper macro, safe_syscall(), detects error, stores into errno, and returns -1, to match the api of the system syscall().
For those kernel abis that do not return -errno natively, this leads to double syscall error detection. E.g. Linux ppc64, which sets the SO flag for error.
Simplify the usage from C by moving the error detection into assembly, and usage from assembly by providing a C helper with which to set errno.
Reviewed-by: Warner Losh <imp@bsdimp.com> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
|
/qemu/common-user/host/x86_64/ |
H A D | safe-syscall.inc.S | a3310c0397e21df8f47cde3e55736104b9584d2d Mon Nov 15 13:08:52 UTC 2021 Richard Henderson <richard.henderson@linaro.org> linux-user: Move syscall error detection into safe_syscall_base
The current api from safe_syscall_base() is to return -errno, which is the interface provided by *some* linux kernel abis. The wrapper macro, safe_syscall(), detects error, stores into errno, and returns -1, to match the api of the system syscall().
For those kernel abis that do not return -errno natively, this leads to double syscall error detection. E.g. Linux ppc64, which sets the SO flag for error.
Simplify the usage from C by moving the error detection into assembly, and usage from assembly by providing a C helper with which to set errno.
Reviewed-by: Warner Losh <imp@bsdimp.com> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
|
/qemu/linux-user/ |
H A D | meson.build | a3310c0397e21df8f47cde3e55736104b9584d2d Mon Nov 15 13:08:52 UTC 2021 Richard Henderson <richard.henderson@linaro.org> linux-user: Move syscall error detection into safe_syscall_base
The current api from safe_syscall_base() is to return -errno, which is the interface provided by *some* linux kernel abis. The wrapper macro, safe_syscall(), detects error, stores into errno, and returns -1, to match the api of the system syscall().
For those kernel abis that do not return -errno natively, this leads to double syscall error detection. E.g. Linux ppc64, which sets the SO flag for error.
Simplify the usage from C by moving the error detection into assembly, and usage from assembly by providing a C helper with which to set errno.
Reviewed-by: Warner Losh <imp@bsdimp.com> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
|