* [PATCH] linux-user/alpha: Fix target rlimits for alpha and rearrange for clarity @ 2022-01-15 11:32 Serge Belyshev 2022-01-27 13:49 ` Laurent Vivier 2022-01-27 14:09 ` [PATCH] linux-user/alpha: Fix target rlimits for alpha and rearrange for clarity Laurent Vivier 0 siblings, 2 replies; 10+ messages in thread From: Serge Belyshev @ 2022-01-15 11:32 UTC (permalink / raw) To: qemu-devel; +Cc: qemu-trivial, Laurent Vivier Alpha uses different values of some TARGET_RLIMIT_* constants, which were missing and caused bugs like #577, fixed thus. Also rearranged all three (alpha, mips and sparc) that differ from everyone else for clarity. Signed-off-by: Serge Belyshev <belyshev@depni.sinp.msu.ru> Resolves: https://gitlab.com/qemu-project/qemu/-/issues/577 --- linux-user/syscall_defs.h | 31 ++++++++++++++----------------- 1 file changed, 14 insertions(+), 17 deletions(-) diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h index f23f0a2178..3fcabaeae3 100644 --- a/linux-user/syscall_defs.h +++ b/linux-user/syscall_defs.h @@ -730,44 +730,41 @@ struct target_rlimit { #define TARGET_RLIM_INFINITY ((abi_ulong)-1) #endif -#if defined(TARGET_MIPS) #define TARGET_RLIMIT_CPU 0 #define TARGET_RLIMIT_FSIZE 1 #define TARGET_RLIMIT_DATA 2 #define TARGET_RLIMIT_STACK 3 #define TARGET_RLIMIT_CORE 4 +#if defined(TARGET_MIPS) +#define TARGET_RLIMIT_NOFILE 5 +#define TARGET_RLIMIT_AS 6 #define TARGET_RLIMIT_RSS 7 #define TARGET_RLIMIT_NPROC 8 -#define TARGET_RLIMIT_NOFILE 5 #define TARGET_RLIMIT_MEMLOCK 9 -#define TARGET_RLIMIT_AS 6 -#define TARGET_RLIMIT_LOCKS 10 -#define TARGET_RLIMIT_SIGPENDING 11 -#define TARGET_RLIMIT_MSGQUEUE 12 -#define TARGET_RLIMIT_NICE 13 -#define TARGET_RLIMIT_RTPRIO 14 -#else -#define TARGET_RLIMIT_CPU 0 -#define TARGET_RLIMIT_FSIZE 1 -#define TARGET_RLIMIT_DATA 2 -#define TARGET_RLIMIT_STACK 3 -#define TARGET_RLIMIT_CORE 4 +#elif defined(TARGET_ALPHA) +#define TARGET_RLIMIT_RSS 5 +#define TARGET_RLIMIT_NOFILE 6 +#define TARGET_RLIMIT_AS 7 +#define TARGET_RLIMIT_NPROC 8 +#define TARGET_RLIMIT_MEMLOCK 9 +#elif defined(TARGET_SPARC) #define TARGET_RLIMIT_RSS 5 -#if defined(TARGET_SPARC) #define TARGET_RLIMIT_NOFILE 6 #define TARGET_RLIMIT_NPROC 7 +#define TARGET_RLIMIT_MEMLOCK 8 +#define TARGET_RLIMIT_AS 9 #else +#define TARGET_RLIMIT_RSS 5 #define TARGET_RLIMIT_NPROC 6 #define TARGET_RLIMIT_NOFILE 7 -#endif #define TARGET_RLIMIT_MEMLOCK 8 #define TARGET_RLIMIT_AS 9 +#endif #define TARGET_RLIMIT_LOCKS 10 #define TARGET_RLIMIT_SIGPENDING 11 #define TARGET_RLIMIT_MSGQUEUE 12 #define TARGET_RLIMIT_NICE 13 #define TARGET_RLIMIT_RTPRIO 14 -#endif struct target_pollfd { int fd; /* file descriptor */ -- 2.34.1 ^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [PATCH] linux-user/alpha: Fix target rlimits for alpha and rearrange for clarity 2022-01-15 11:32 [PATCH] linux-user/alpha: Fix target rlimits for alpha and rearrange for clarity Serge Belyshev @ 2022-01-27 13:49 ` Laurent Vivier 2022-01-29 19:41 ` Serge Belyshev 2022-01-27 14:09 ` [PATCH] linux-user/alpha: Fix target rlimits for alpha and rearrange for clarity Laurent Vivier 1 sibling, 1 reply; 10+ messages in thread From: Laurent Vivier @ 2022-01-27 13:49 UTC (permalink / raw) To: Serge Belyshev, qemu-devel; +Cc: qemu-trivial Le 15/01/2022 à 12:32, Serge Belyshev a écrit : > Alpha uses different values of some TARGET_RLIMIT_* constants, which were > missing and caused bugs like #577, fixed thus. Also rearranged all three > (alpha, mips and sparc) that differ from everyone else for clarity. > > Signed-off-by: Serge Belyshev <belyshev@depni.sinp.msu.ru> > Resolves: https://gitlab.com/qemu-project/qemu/-/issues/577 > --- > linux-user/syscall_defs.h | 31 ++++++++++++++----------------- > 1 file changed, 14 insertions(+), 17 deletions(-) > > diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h > index f23f0a2178..3fcabaeae3 100644 > --- a/linux-user/syscall_defs.h > +++ b/linux-user/syscall_defs.h > @@ -730,44 +730,41 @@ struct target_rlimit { > #define TARGET_RLIM_INFINITY ((abi_ulong)-1) > #endif > > -#if defined(TARGET_MIPS) > #define TARGET_RLIMIT_CPU 0 > #define TARGET_RLIMIT_FSIZE 1 > #define TARGET_RLIMIT_DATA 2 > #define TARGET_RLIMIT_STACK 3 > #define TARGET_RLIMIT_CORE 4 > +#if defined(TARGET_MIPS) > +#define TARGET_RLIMIT_NOFILE 5 > +#define TARGET_RLIMIT_AS 6 > #define TARGET_RLIMIT_RSS 7 > #define TARGET_RLIMIT_NPROC 8 > -#define TARGET_RLIMIT_NOFILE 5 > #define TARGET_RLIMIT_MEMLOCK 9 > -#define TARGET_RLIMIT_AS 6 > -#define TARGET_RLIMIT_LOCKS 10 > -#define TARGET_RLIMIT_SIGPENDING 11 > -#define TARGET_RLIMIT_MSGQUEUE 12 > -#define TARGET_RLIMIT_NICE 13 > -#define TARGET_RLIMIT_RTPRIO 14 > -#else > -#define TARGET_RLIMIT_CPU 0 > -#define TARGET_RLIMIT_FSIZE 1 > -#define TARGET_RLIMIT_DATA 2 > -#define TARGET_RLIMIT_STACK 3 > -#define TARGET_RLIMIT_CORE 4 > +#elif defined(TARGET_ALPHA) > +#define TARGET_RLIMIT_RSS 5 > +#define TARGET_RLIMIT_NOFILE 6 > +#define TARGET_RLIMIT_AS 7 > +#define TARGET_RLIMIT_NPROC 8 > +#define TARGET_RLIMIT_MEMLOCK 9 > +#elif defined(TARGET_SPARC) > #define TARGET_RLIMIT_RSS 5 > -#if defined(TARGET_SPARC) > #define TARGET_RLIMIT_NOFILE 6 > #define TARGET_RLIMIT_NPROC 7 > +#define TARGET_RLIMIT_MEMLOCK 8 > +#define TARGET_RLIMIT_AS 9 > #else > +#define TARGET_RLIMIT_RSS 5 > #define TARGET_RLIMIT_NPROC 6 > #define TARGET_RLIMIT_NOFILE 7 > -#endif > #define TARGET_RLIMIT_MEMLOCK 8 > #define TARGET_RLIMIT_AS 9 > +#endif > #define TARGET_RLIMIT_LOCKS 10 > #define TARGET_RLIMIT_SIGPENDING 11 > #define TARGET_RLIMIT_MSGQUEUE 12 > #define TARGET_RLIMIT_NICE 13 > #define TARGET_RLIMIT_RTPRIO 14 > -#endif > > struct target_pollfd { > int fd; /* file descriptor */ Reviewed-by: Laurent Vivier <laurent@vivier.eu> perhaps you could also add RLIMIT_RTTIME (15) and update target_to_host_resource()? The next step would be to move the generic definitions to a new file in linux-user/generic/target_resource.h and the specific ones to linux-user/alpha, linux-user/mips and linux-user/sparc. Thanks, Laurent ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH] linux-user/alpha: Fix target rlimits for alpha and rearrange for clarity 2022-01-27 13:49 ` Laurent Vivier @ 2022-01-29 19:41 ` Serge Belyshev 2022-01-29 19:46 ` [PATCH] linux-user: Move generic TARGET_RLIMIT* definitions to generic/target_resource.h Serge Belyshev 0 siblings, 1 reply; 10+ messages in thread From: Serge Belyshev @ 2022-01-29 19:41 UTC (permalink / raw) To: Laurent Vivier; +Cc: qemu-trivial, qemu-devel Laurent Vivier <laurent@vivier.eu> writes: > > Reviewed-by: Laurent Vivier <laurent@vivier.eu> > Applied to my linux-user-for-7.0 branch. Thanks! > perhaps you could also add RLIMIT_RTTIME (15) and update target_to_host_resource()? > > The next step would be to move the generic definitions to a new file > in linux-user/generic/target_resource.h and the specific ones to > linux-user/alpha, linux-user/mips and linux-user/sparc. Will submit in a moment on top of the previous patch. End result is cleaner but slightly bulkier. ^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH] linux-user: Move generic TARGET_RLIMIT* definitions to generic/target_resource.h 2022-01-29 19:41 ` Serge Belyshev @ 2022-01-29 19:46 ` Serge Belyshev 2022-01-29 19:48 ` [PATCH] linux-user/syscall: Translate TARGET_RLIMIT_RTTIME Serge Belyshev 2022-02-01 7:02 ` [PATCH] linux-user: Move generic TARGET_RLIMIT* definitions to generic/target_resource.h Laurent Vivier 0 siblings, 2 replies; 10+ messages in thread From: Serge Belyshev @ 2022-01-29 19:46 UTC (permalink / raw) To: Laurent Vivier; +Cc: qemu-trivial, qemu-devel Signed-off-by: Serge Belyshev <belyshev@depni.sinp.msu.ru> --- Compile tested, and also verified that target definitions did not change. linux-user/aarch64/target_resource.h | 1 + linux-user/alpha/target_resource.h | 21 ++++++++++ linux-user/arm/target_resource.h | 1 + linux-user/cris/target_resource.h | 1 + linux-user/generic/target_resource.h | 37 +++++++++++++++++ linux-user/hexagon/target_resource.h | 1 + linux-user/hppa/target_resource.h | 1 + linux-user/i386/target_resource.h | 1 + linux-user/m68k/target_resource.h | 1 + linux-user/microblaze/target_resource.h | 1 + linux-user/mips/target_resource.h | 24 +++++++++++ linux-user/mips64/target_resource.h | 1 + linux-user/nios2/target_resource.h | 1 + linux-user/openrisc/target_resource.h | 1 + linux-user/ppc/target_resource.h | 1 + linux-user/riscv/target_resource.h | 1 + linux-user/s390x/target_resource.h | 1 + linux-user/sh4/target_resource.h | 1 + linux-user/sparc/target_resource.h | 17 ++++++++ linux-user/syscall_defs.h | 53 +------------------------ linux-user/x86_64/target_resource.h | 1 + linux-user/xtensa/target_resource.h | 1 + 22 files changed, 117 insertions(+), 52 deletions(-) create mode 100644 linux-user/aarch64/target_resource.h create mode 100644 linux-user/alpha/target_resource.h create mode 100644 linux-user/arm/target_resource.h create mode 100644 linux-user/cris/target_resource.h create mode 100644 linux-user/generic/target_resource.h create mode 100644 linux-user/hexagon/target_resource.h create mode 100644 linux-user/hppa/target_resource.h create mode 100644 linux-user/i386/target_resource.h create mode 100644 linux-user/m68k/target_resource.h create mode 100644 linux-user/microblaze/target_resource.h create mode 100644 linux-user/mips/target_resource.h create mode 100644 linux-user/mips64/target_resource.h create mode 100644 linux-user/nios2/target_resource.h create mode 100644 linux-user/openrisc/target_resource.h create mode 100644 linux-user/ppc/target_resource.h create mode 100644 linux-user/riscv/target_resource.h create mode 100644 linux-user/s390x/target_resource.h create mode 100644 linux-user/sh4/target_resource.h create mode 100644 linux-user/sparc/target_resource.h create mode 100644 linux-user/x86_64/target_resource.h create mode 100644 linux-user/xtensa/target_resource.h diff --git a/linux-user/aarch64/target_resource.h b/linux-user/aarch64/target_resource.h new file mode 100644 index 0000000000..227259594c --- /dev/null +++ b/linux-user/aarch64/target_resource.h @@ -0,0 +1 @@ +#include "../generic/target_resource.h" diff --git a/linux-user/alpha/target_resource.h b/linux-user/alpha/target_resource.h new file mode 100644 index 0000000000..c9b082faee --- /dev/null +++ b/linux-user/alpha/target_resource.h @@ -0,0 +1,21 @@ +#ifndef ALPHA_TARGET_RESOURCE_H +#define ALPHA_TARGET_RESOURCE_H + +#include "../generic/target_resource.h" + +#undef TARGET_RLIM_INFINITY +#define TARGET_RLIM_INFINITY 0x7fffffffffffffffull + +#undef TARGET_RLIMIT_NOFILE +#define TARGET_RLIMIT_NOFILE 6 + +#undef TARGET_RLIMIT_AS +#define TARGET_RLIMIT_AS 7 + +#undef TARGET_RLIMIT_NPROC +#define TARGET_RLIMIT_NPROC 8 + +#undef TARGET_RLIMIT_MEMLOCK +#define TARGET_RLIMIT_MEMLOCK 9 + +#endif diff --git a/linux-user/arm/target_resource.h b/linux-user/arm/target_resource.h new file mode 100644 index 0000000000..227259594c --- /dev/null +++ b/linux-user/arm/target_resource.h @@ -0,0 +1 @@ +#include "../generic/target_resource.h" diff --git a/linux-user/cris/target_resource.h b/linux-user/cris/target_resource.h new file mode 100644 index 0000000000..227259594c --- /dev/null +++ b/linux-user/cris/target_resource.h @@ -0,0 +1 @@ +#include "../generic/target_resource.h" diff --git a/linux-user/generic/target_resource.h b/linux-user/generic/target_resource.h new file mode 100644 index 0000000000..f04c93b125 --- /dev/null +++ b/linux-user/generic/target_resource.h @@ -0,0 +1,37 @@ +/* + * Target definitions of RLIMIT_* constants. These may be overridden by an + * architecture specific header if needed. + */ + +#ifndef GENERIC_TARGET_RESOURCE_H +#define GENERIC_TARGET_RESOURCE_H + +struct target_rlimit { + abi_ulong rlim_cur; + abi_ulong rlim_max; +}; + +struct target_rlimit64 { + uint64_t rlim_cur; + uint64_t rlim_max; +}; + +#define TARGET_RLIM_INFINITY ((abi_ulong)-1) + +#define TARGET_RLIMIT_CPU 0 +#define TARGET_RLIMIT_FSIZE 1 +#define TARGET_RLIMIT_DATA 2 +#define TARGET_RLIMIT_STACK 3 +#define TARGET_RLIMIT_CORE 4 +#define TARGET_RLIMIT_RSS 5 +#define TARGET_RLIMIT_NPROC 6 +#define TARGET_RLIMIT_NOFILE 7 +#define TARGET_RLIMIT_MEMLOCK 8 +#define TARGET_RLIMIT_AS 9 +#define TARGET_RLIMIT_LOCKS 10 +#define TARGET_RLIMIT_SIGPENDING 11 +#define TARGET_RLIMIT_MSGQUEUE 12 +#define TARGET_RLIMIT_NICE 13 +#define TARGET_RLIMIT_RTPRIO 14 + +#endif diff --git a/linux-user/hexagon/target_resource.h b/linux-user/hexagon/target_resource.h new file mode 100644 index 0000000000..227259594c --- /dev/null +++ b/linux-user/hexagon/target_resource.h @@ -0,0 +1 @@ +#include "../generic/target_resource.h" diff --git a/linux-user/hppa/target_resource.h b/linux-user/hppa/target_resource.h new file mode 100644 index 0000000000..227259594c --- /dev/null +++ b/linux-user/hppa/target_resource.h @@ -0,0 +1 @@ +#include "../generic/target_resource.h" diff --git a/linux-user/i386/target_resource.h b/linux-user/i386/target_resource.h new file mode 100644 index 0000000000..227259594c --- /dev/null +++ b/linux-user/i386/target_resource.h @@ -0,0 +1 @@ +#include "../generic/target_resource.h" diff --git a/linux-user/m68k/target_resource.h b/linux-user/m68k/target_resource.h new file mode 100644 index 0000000000..227259594c --- /dev/null +++ b/linux-user/m68k/target_resource.h @@ -0,0 +1 @@ +#include "../generic/target_resource.h" diff --git a/linux-user/microblaze/target_resource.h b/linux-user/microblaze/target_resource.h new file mode 100644 index 0000000000..227259594c --- /dev/null +++ b/linux-user/microblaze/target_resource.h @@ -0,0 +1 @@ +#include "../generic/target_resource.h" diff --git a/linux-user/mips/target_resource.h b/linux-user/mips/target_resource.h new file mode 100644 index 0000000000..6d131b041d --- /dev/null +++ b/linux-user/mips/target_resource.h @@ -0,0 +1,24 @@ +#ifndef MIPS_TARGET_RESOURCE_H +#define MIPS_TARGET_RESOURCE_H + +#include "../generic/target_resource.h" + +#undef TARGET_RLIM_INFINITY +#define TARGET_RLIM_INFINITY 0x7fffffffUL + +#undef TARGET_RLIMIT_NOFILE +#define TARGET_RLIMIT_NOFILE 5 + +#undef TARGET_RLIMIT_AS +#define TARGET_RLIMIT_AS 6 + +#undef TARGET_RLIMIT_RSS +#define TARGET_RLIMIT_RSS 7 + +#undef TARGET_RLIMIT_NPROC +#define TARGET_RLIMIT_NPROC 8 + +#undef TARGET_RLIMIT_MEMLOCK +#define TARGET_RLIMIT_MEMLOCK 9 + +#endif diff --git a/linux-user/mips64/target_resource.h b/linux-user/mips64/target_resource.h new file mode 100644 index 0000000000..fe29002a12 --- /dev/null +++ b/linux-user/mips64/target_resource.h @@ -0,0 +1 @@ +#include "../mips/target_resource.h" diff --git a/linux-user/nios2/target_resource.h b/linux-user/nios2/target_resource.h new file mode 100644 index 0000000000..227259594c --- /dev/null +++ b/linux-user/nios2/target_resource.h @@ -0,0 +1 @@ +#include "../generic/target_resource.h" diff --git a/linux-user/openrisc/target_resource.h b/linux-user/openrisc/target_resource.h new file mode 100644 index 0000000000..227259594c --- /dev/null +++ b/linux-user/openrisc/target_resource.h @@ -0,0 +1 @@ +#include "../generic/target_resource.h" diff --git a/linux-user/ppc/target_resource.h b/linux-user/ppc/target_resource.h new file mode 100644 index 0000000000..227259594c --- /dev/null +++ b/linux-user/ppc/target_resource.h @@ -0,0 +1 @@ +#include "../generic/target_resource.h" diff --git a/linux-user/riscv/target_resource.h b/linux-user/riscv/target_resource.h new file mode 100644 index 0000000000..227259594c --- /dev/null +++ b/linux-user/riscv/target_resource.h @@ -0,0 +1 @@ +#include "../generic/target_resource.h" diff --git a/linux-user/s390x/target_resource.h b/linux-user/s390x/target_resource.h new file mode 100644 index 0000000000..227259594c --- /dev/null +++ b/linux-user/s390x/target_resource.h @@ -0,0 +1 @@ +#include "../generic/target_resource.h" diff --git a/linux-user/sh4/target_resource.h b/linux-user/sh4/target_resource.h new file mode 100644 index 0000000000..227259594c --- /dev/null +++ b/linux-user/sh4/target_resource.h @@ -0,0 +1 @@ +#include "../generic/target_resource.h" diff --git a/linux-user/sparc/target_resource.h b/linux-user/sparc/target_resource.h new file mode 100644 index 0000000000..d9a2fb814a --- /dev/null +++ b/linux-user/sparc/target_resource.h @@ -0,0 +1,17 @@ +#ifndef SPARC_TARGET_RESOURCE_H +#define SPARC_TARGET_RESOURCE_H + +#include "../generic/target_resource.h" + +#if TARGET_ABI_BITS == 32 +#undef TARGET_RLIM_INFINITY +#define TARGET_RLIM_INFINITY 0x7fffffffUL +#endif + +#undef TARGET_RLIMIT_NOFILE +#define TARGET_RLIMIT_NOFILE 6 + +#undef TARGET_RLIMIT_NPROC +#define TARGET_RLIMIT_NPROC 7 + +#endif diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h index 3fcabaeae3..78607effe8 100644 --- a/linux-user/syscall_defs.h +++ b/linux-user/syscall_defs.h @@ -717,54 +717,7 @@ typedef struct target_siginfo { #define TARGET_TRAP_HWBKPT (4) /* hardware breakpoint/watchpoint */ #define TARGET_TRAP_UNK (5) /* undiagnosed trap */ -struct target_rlimit { - abi_ulong rlim_cur; - abi_ulong rlim_max; -}; - -#if defined(TARGET_ALPHA) -#define TARGET_RLIM_INFINITY 0x7fffffffffffffffull -#elif defined(TARGET_MIPS) || (defined(TARGET_SPARC) && TARGET_ABI_BITS == 32) -#define TARGET_RLIM_INFINITY 0x7fffffffUL -#else -#define TARGET_RLIM_INFINITY ((abi_ulong)-1) -#endif - -#define TARGET_RLIMIT_CPU 0 -#define TARGET_RLIMIT_FSIZE 1 -#define TARGET_RLIMIT_DATA 2 -#define TARGET_RLIMIT_STACK 3 -#define TARGET_RLIMIT_CORE 4 -#if defined(TARGET_MIPS) -#define TARGET_RLIMIT_NOFILE 5 -#define TARGET_RLIMIT_AS 6 -#define TARGET_RLIMIT_RSS 7 -#define TARGET_RLIMIT_NPROC 8 -#define TARGET_RLIMIT_MEMLOCK 9 -#elif defined(TARGET_ALPHA) -#define TARGET_RLIMIT_RSS 5 -#define TARGET_RLIMIT_NOFILE 6 -#define TARGET_RLIMIT_AS 7 -#define TARGET_RLIMIT_NPROC 8 -#define TARGET_RLIMIT_MEMLOCK 9 -#elif defined(TARGET_SPARC) -#define TARGET_RLIMIT_RSS 5 -#define TARGET_RLIMIT_NOFILE 6 -#define TARGET_RLIMIT_NPROC 7 -#define TARGET_RLIMIT_MEMLOCK 8 -#define TARGET_RLIMIT_AS 9 -#else -#define TARGET_RLIMIT_RSS 5 -#define TARGET_RLIMIT_NPROC 6 -#define TARGET_RLIMIT_NOFILE 7 -#define TARGET_RLIMIT_MEMLOCK 8 -#define TARGET_RLIMIT_AS 9 -#endif -#define TARGET_RLIMIT_LOCKS 10 -#define TARGET_RLIMIT_SIGPENDING 11 -#define TARGET_RLIMIT_MSGQUEUE 12 -#define TARGET_RLIMIT_NICE 13 -#define TARGET_RLIMIT_RTPRIO 14 +#include "target_resource.h" struct target_pollfd { int fd; /* file descriptor */ @@ -2769,10 +2722,6 @@ struct target_epoll_event { #define TARGET_EP_MAX_EVENTS (INT_MAX / sizeof(struct target_epoll_event)) #endif -struct target_rlimit64 { - uint64_t rlim_cur; - uint64_t rlim_max; -}; struct target_ucred { uint32_t pid; diff --git a/linux-user/x86_64/target_resource.h b/linux-user/x86_64/target_resource.h new file mode 100644 index 0000000000..227259594c --- /dev/null +++ b/linux-user/x86_64/target_resource.h @@ -0,0 +1 @@ +#include "../generic/target_resource.h" diff --git a/linux-user/xtensa/target_resource.h b/linux-user/xtensa/target_resource.h new file mode 100644 index 0000000000..227259594c --- /dev/null +++ b/linux-user/xtensa/target_resource.h @@ -0,0 +1 @@ +#include "../generic/target_resource.h" -- 2.34.1 ^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH] linux-user/syscall: Translate TARGET_RLIMIT_RTTIME 2022-01-29 19:46 ` [PATCH] linux-user: Move generic TARGET_RLIMIT* definitions to generic/target_resource.h Serge Belyshev @ 2022-01-29 19:48 ` Serge Belyshev 2022-01-31 9:26 ` Laurent Vivier ` (2 more replies) 2022-02-01 7:02 ` [PATCH] linux-user: Move generic TARGET_RLIMIT* definitions to generic/target_resource.h Laurent Vivier 1 sibling, 3 replies; 10+ messages in thread From: Serge Belyshev @ 2022-01-29 19:48 UTC (permalink / raw) To: Laurent Vivier; +Cc: qemu-trivial, qemu-devel Signed-off-by: Serge Belyshev <belyshev@depni.sinp.msu.ru> --- linux-user/generic/target_resource.h | 1 + linux-user/syscall.c | 2 ++ 2 files changed, 3 insertions(+) diff --git a/linux-user/generic/target_resource.h b/linux-user/generic/target_resource.h index f04c93b125..539d8c4677 100644 --- a/linux-user/generic/target_resource.h +++ b/linux-user/generic/target_resource.h @@ -33,5 +33,6 @@ struct target_rlimit64 { #define TARGET_RLIMIT_MSGQUEUE 12 #define TARGET_RLIMIT_NICE 13 #define TARGET_RLIMIT_RTPRIO 14 +#define TARGET_RLIMIT_RTTIME 15 #endif diff --git a/linux-user/syscall.c b/linux-user/syscall.c index 5950222a77..6d41a741ac 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -1083,6 +1083,8 @@ static inline int target_to_host_resource(int code) return RLIMIT_RSS; case TARGET_RLIMIT_RTPRIO: return RLIMIT_RTPRIO; + case TARGET_RLIMIT_RTTIME: + return RLIMIT_RTTIME; case TARGET_RLIMIT_SIGPENDING: return RLIMIT_SIGPENDING; case TARGET_RLIMIT_STACK: -- 2.34.1 ^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [PATCH] linux-user/syscall: Translate TARGET_RLIMIT_RTTIME 2022-01-29 19:48 ` [PATCH] linux-user/syscall: Translate TARGET_RLIMIT_RTTIME Serge Belyshev @ 2022-01-31 9:26 ` Laurent Vivier 2022-01-31 9:39 ` Laurent Vivier 2022-02-01 7:02 ` Laurent Vivier 2 siblings, 0 replies; 10+ messages in thread From: Laurent Vivier @ 2022-01-31 9:26 UTC (permalink / raw) To: Serge Belyshev; +Cc: qemu-trivial, qemu-devel Le 29/01/2022 à 20:48, Serge Belyshev a écrit : > > Signed-off-by: Serge Belyshev <belyshev@depni.sinp.msu.ru> > --- > linux-user/generic/target_resource.h | 1 + > linux-user/syscall.c | 2 ++ > 2 files changed, 3 insertions(+) > > diff --git a/linux-user/generic/target_resource.h b/linux-user/generic/target_resource.h > index f04c93b125..539d8c4677 100644 > --- a/linux-user/generic/target_resource.h > +++ b/linux-user/generic/target_resource.h > @@ -33,5 +33,6 @@ struct target_rlimit64 { > #define TARGET_RLIMIT_MSGQUEUE 12 > #define TARGET_RLIMIT_NICE 13 > #define TARGET_RLIMIT_RTPRIO 14 > +#define TARGET_RLIMIT_RTTIME 15 > > #endif > diff --git a/linux-user/syscall.c b/linux-user/syscall.c > index 5950222a77..6d41a741ac 100644 > --- a/linux-user/syscall.c > +++ b/linux-user/syscall.c > @@ -1083,6 +1083,8 @@ static inline int target_to_host_resource(int code) > return RLIMIT_RSS; > case TARGET_RLIMIT_RTPRIO: > return RLIMIT_RTPRIO; > + case TARGET_RLIMIT_RTTIME: > + return RLIMIT_RTTIME; > case TARGET_RLIMIT_SIGPENDING: > return RLIMIT_SIGPENDING; > case TARGET_RLIMIT_STACK: Reviewed-by: Laurent Vivier <laurent@vivier.eu> ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH] linux-user/syscall: Translate TARGET_RLIMIT_RTTIME 2022-01-29 19:48 ` [PATCH] linux-user/syscall: Translate TARGET_RLIMIT_RTTIME Serge Belyshev 2022-01-31 9:26 ` Laurent Vivier @ 2022-01-31 9:39 ` Laurent Vivier 2022-02-01 7:02 ` Laurent Vivier 2 siblings, 0 replies; 10+ messages in thread From: Laurent Vivier @ 2022-01-31 9:39 UTC (permalink / raw) To: Serge Belyshev; +Cc: qemu-trivial, qemu-devel Le 29/01/2022 à 20:48, Serge Belyshev a écrit : > > Signed-off-by: Serge Belyshev <belyshev@depni.sinp.msu.ru> > --- > linux-user/generic/target_resource.h | 1 + > linux-user/syscall.c | 2 ++ > 2 files changed, 3 insertions(+) > > diff --git a/linux-user/generic/target_resource.h b/linux-user/generic/target_resource.h > index f04c93b125..539d8c4677 100644 > --- a/linux-user/generic/target_resource.h > +++ b/linux-user/generic/target_resource.h > @@ -33,5 +33,6 @@ struct target_rlimit64 { > #define TARGET_RLIMIT_MSGQUEUE 12 > #define TARGET_RLIMIT_NICE 13 > #define TARGET_RLIMIT_RTPRIO 14 > +#define TARGET_RLIMIT_RTTIME 15 > > #endif > diff --git a/linux-user/syscall.c b/linux-user/syscall.c > index 5950222a77..6d41a741ac 100644 > --- a/linux-user/syscall.c > +++ b/linux-user/syscall.c > @@ -1083,6 +1083,8 @@ static inline int target_to_host_resource(int code) > return RLIMIT_RSS; > case TARGET_RLIMIT_RTPRIO: > return RLIMIT_RTPRIO; > + case TARGET_RLIMIT_RTTIME: > + return RLIMIT_RTTIME; > case TARGET_RLIMIT_SIGPENDING: > return RLIMIT_SIGPENDING; > case TARGET_RLIMIT_STACK: Reviewed-by: Laurent Vivier <laurent@vivier.eu> ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH] linux-user/syscall: Translate TARGET_RLIMIT_RTTIME 2022-01-29 19:48 ` [PATCH] linux-user/syscall: Translate TARGET_RLIMIT_RTTIME Serge Belyshev 2022-01-31 9:26 ` Laurent Vivier 2022-01-31 9:39 ` Laurent Vivier @ 2022-02-01 7:02 ` Laurent Vivier 2 siblings, 0 replies; 10+ messages in thread From: Laurent Vivier @ 2022-02-01 7:02 UTC (permalink / raw) To: Serge Belyshev; +Cc: qemu-trivial, qemu-devel Le 29/01/2022 à 20:48, Serge Belyshev a écrit : > > Signed-off-by: Serge Belyshev <belyshev@depni.sinp.msu.ru> > --- > linux-user/generic/target_resource.h | 1 + > linux-user/syscall.c | 2 ++ > 2 files changed, 3 insertions(+) > > diff --git a/linux-user/generic/target_resource.h b/linux-user/generic/target_resource.h > index f04c93b125..539d8c4677 100644 > --- a/linux-user/generic/target_resource.h > +++ b/linux-user/generic/target_resource.h > @@ -33,5 +33,6 @@ struct target_rlimit64 { > #define TARGET_RLIMIT_MSGQUEUE 12 > #define TARGET_RLIMIT_NICE 13 > #define TARGET_RLIMIT_RTPRIO 14 > +#define TARGET_RLIMIT_RTTIME 15 > > #endif > diff --git a/linux-user/syscall.c b/linux-user/syscall.c > index 5950222a77..6d41a741ac 100644 > --- a/linux-user/syscall.c > +++ b/linux-user/syscall.c > @@ -1083,6 +1083,8 @@ static inline int target_to_host_resource(int code) > return RLIMIT_RSS; > case TARGET_RLIMIT_RTPRIO: > return RLIMIT_RTPRIO; > + case TARGET_RLIMIT_RTTIME: > + return RLIMIT_RTTIME; > case TARGET_RLIMIT_SIGPENDING: > return RLIMIT_SIGPENDING; > case TARGET_RLIMIT_STACK: Applied to my linux-user-for-7.0 branch. Thanks, Laurent ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH] linux-user: Move generic TARGET_RLIMIT* definitions to generic/target_resource.h 2022-01-29 19:46 ` [PATCH] linux-user: Move generic TARGET_RLIMIT* definitions to generic/target_resource.h Serge Belyshev 2022-01-29 19:48 ` [PATCH] linux-user/syscall: Translate TARGET_RLIMIT_RTTIME Serge Belyshev @ 2022-02-01 7:02 ` Laurent Vivier 1 sibling, 0 replies; 10+ messages in thread From: Laurent Vivier @ 2022-02-01 7:02 UTC (permalink / raw) To: Serge Belyshev; +Cc: qemu-trivial, qemu-devel Le 29/01/2022 à 20:46, Serge Belyshev a écrit : > > Signed-off-by: Serge Belyshev <belyshev@depni.sinp.msu.ru> > --- > Compile tested, and also verified that target definitions did not change. > > linux-user/aarch64/target_resource.h | 1 + > linux-user/alpha/target_resource.h | 21 ++++++++++ > linux-user/arm/target_resource.h | 1 + > linux-user/cris/target_resource.h | 1 + > linux-user/generic/target_resource.h | 37 +++++++++++++++++ > linux-user/hexagon/target_resource.h | 1 + > linux-user/hppa/target_resource.h | 1 + > linux-user/i386/target_resource.h | 1 + > linux-user/m68k/target_resource.h | 1 + > linux-user/microblaze/target_resource.h | 1 + > linux-user/mips/target_resource.h | 24 +++++++++++ > linux-user/mips64/target_resource.h | 1 + > linux-user/nios2/target_resource.h | 1 + > linux-user/openrisc/target_resource.h | 1 + > linux-user/ppc/target_resource.h | 1 + > linux-user/riscv/target_resource.h | 1 + > linux-user/s390x/target_resource.h | 1 + > linux-user/sh4/target_resource.h | 1 + > linux-user/sparc/target_resource.h | 17 ++++++++ > linux-user/syscall_defs.h | 53 +------------------------ > linux-user/x86_64/target_resource.h | 1 + > linux-user/xtensa/target_resource.h | 1 + > 22 files changed, 117 insertions(+), 52 deletions(-) > create mode 100644 linux-user/aarch64/target_resource.h > create mode 100644 linux-user/alpha/target_resource.h > create mode 100644 linux-user/arm/target_resource.h > create mode 100644 linux-user/cris/target_resource.h > create mode 100644 linux-user/generic/target_resource.h > create mode 100644 linux-user/hexagon/target_resource.h > create mode 100644 linux-user/hppa/target_resource.h > create mode 100644 linux-user/i386/target_resource.h > create mode 100644 linux-user/m68k/target_resource.h > create mode 100644 linux-user/microblaze/target_resource.h > create mode 100644 linux-user/mips/target_resource.h > create mode 100644 linux-user/mips64/target_resource.h > create mode 100644 linux-user/nios2/target_resource.h > create mode 100644 linux-user/openrisc/target_resource.h > create mode 100644 linux-user/ppc/target_resource.h > create mode 100644 linux-user/riscv/target_resource.h > create mode 100644 linux-user/s390x/target_resource.h > create mode 100644 linux-user/sh4/target_resource.h > create mode 100644 linux-user/sparc/target_resource.h > create mode 100644 linux-user/x86_64/target_resource.h > create mode 100644 linux-user/xtensa/target_resource.h > > diff --git a/linux-user/aarch64/target_resource.h b/linux-user/aarch64/target_resource.h > new file mode 100644 > index 0000000000..227259594c > --- /dev/null > +++ b/linux-user/aarch64/target_resource.h > @@ -0,0 +1 @@ > +#include "../generic/target_resource.h" > diff --git a/linux-user/alpha/target_resource.h b/linux-user/alpha/target_resource.h > new file mode 100644 > index 0000000000..c9b082faee > --- /dev/null > +++ b/linux-user/alpha/target_resource.h > @@ -0,0 +1,21 @@ > +#ifndef ALPHA_TARGET_RESOURCE_H > +#define ALPHA_TARGET_RESOURCE_H > + > +#include "../generic/target_resource.h" > + > +#undef TARGET_RLIM_INFINITY > +#define TARGET_RLIM_INFINITY 0x7fffffffffffffffull > + > +#undef TARGET_RLIMIT_NOFILE > +#define TARGET_RLIMIT_NOFILE 6 > + > +#undef TARGET_RLIMIT_AS > +#define TARGET_RLIMIT_AS 7 > + > +#undef TARGET_RLIMIT_NPROC > +#define TARGET_RLIMIT_NPROC 8 > + > +#undef TARGET_RLIMIT_MEMLOCK > +#define TARGET_RLIMIT_MEMLOCK 9 > + > +#endif > diff --git a/linux-user/arm/target_resource.h b/linux-user/arm/target_resource.h > new file mode 100644 > index 0000000000..227259594c > --- /dev/null > +++ b/linux-user/arm/target_resource.h > @@ -0,0 +1 @@ > +#include "../generic/target_resource.h" > diff --git a/linux-user/cris/target_resource.h b/linux-user/cris/target_resource.h > new file mode 100644 > index 0000000000..227259594c > --- /dev/null > +++ b/linux-user/cris/target_resource.h > @@ -0,0 +1 @@ > +#include "../generic/target_resource.h" > diff --git a/linux-user/generic/target_resource.h b/linux-user/generic/target_resource.h > new file mode 100644 > index 0000000000..f04c93b125 > --- /dev/null > +++ b/linux-user/generic/target_resource.h > @@ -0,0 +1,37 @@ > +/* > + * Target definitions of RLIMIT_* constants. These may be overridden by an > + * architecture specific header if needed. > + */ > + > +#ifndef GENERIC_TARGET_RESOURCE_H > +#define GENERIC_TARGET_RESOURCE_H > + > +struct target_rlimit { > + abi_ulong rlim_cur; > + abi_ulong rlim_max; > +}; > + > +struct target_rlimit64 { > + uint64_t rlim_cur; > + uint64_t rlim_max; > +}; > + > +#define TARGET_RLIM_INFINITY ((abi_ulong)-1) > + > +#define TARGET_RLIMIT_CPU 0 > +#define TARGET_RLIMIT_FSIZE 1 > +#define TARGET_RLIMIT_DATA 2 > +#define TARGET_RLIMIT_STACK 3 > +#define TARGET_RLIMIT_CORE 4 > +#define TARGET_RLIMIT_RSS 5 > +#define TARGET_RLIMIT_NPROC 6 > +#define TARGET_RLIMIT_NOFILE 7 > +#define TARGET_RLIMIT_MEMLOCK 8 > +#define TARGET_RLIMIT_AS 9 > +#define TARGET_RLIMIT_LOCKS 10 > +#define TARGET_RLIMIT_SIGPENDING 11 > +#define TARGET_RLIMIT_MSGQUEUE 12 > +#define TARGET_RLIMIT_NICE 13 > +#define TARGET_RLIMIT_RTPRIO 14 > + > +#endif > diff --git a/linux-user/hexagon/target_resource.h b/linux-user/hexagon/target_resource.h > new file mode 100644 > index 0000000000..227259594c > --- /dev/null > +++ b/linux-user/hexagon/target_resource.h > @@ -0,0 +1 @@ > +#include "../generic/target_resource.h" > diff --git a/linux-user/hppa/target_resource.h b/linux-user/hppa/target_resource.h > new file mode 100644 > index 0000000000..227259594c > --- /dev/null > +++ b/linux-user/hppa/target_resource.h > @@ -0,0 +1 @@ > +#include "../generic/target_resource.h" > diff --git a/linux-user/i386/target_resource.h b/linux-user/i386/target_resource.h > new file mode 100644 > index 0000000000..227259594c > --- /dev/null > +++ b/linux-user/i386/target_resource.h > @@ -0,0 +1 @@ > +#include "../generic/target_resource.h" > diff --git a/linux-user/m68k/target_resource.h b/linux-user/m68k/target_resource.h > new file mode 100644 > index 0000000000..227259594c > --- /dev/null > +++ b/linux-user/m68k/target_resource.h > @@ -0,0 +1 @@ > +#include "../generic/target_resource.h" > diff --git a/linux-user/microblaze/target_resource.h b/linux-user/microblaze/target_resource.h > new file mode 100644 > index 0000000000..227259594c > --- /dev/null > +++ b/linux-user/microblaze/target_resource.h > @@ -0,0 +1 @@ > +#include "../generic/target_resource.h" > diff --git a/linux-user/mips/target_resource.h b/linux-user/mips/target_resource.h > new file mode 100644 > index 0000000000..6d131b041d > --- /dev/null > +++ b/linux-user/mips/target_resource.h > @@ -0,0 +1,24 @@ > +#ifndef MIPS_TARGET_RESOURCE_H > +#define MIPS_TARGET_RESOURCE_H > + > +#include "../generic/target_resource.h" > + > +#undef TARGET_RLIM_INFINITY > +#define TARGET_RLIM_INFINITY 0x7fffffffUL > + > +#undef TARGET_RLIMIT_NOFILE > +#define TARGET_RLIMIT_NOFILE 5 > + > +#undef TARGET_RLIMIT_AS > +#define TARGET_RLIMIT_AS 6 > + > +#undef TARGET_RLIMIT_RSS > +#define TARGET_RLIMIT_RSS 7 > + > +#undef TARGET_RLIMIT_NPROC > +#define TARGET_RLIMIT_NPROC 8 > + > +#undef TARGET_RLIMIT_MEMLOCK > +#define TARGET_RLIMIT_MEMLOCK 9 > + > +#endif > diff --git a/linux-user/mips64/target_resource.h b/linux-user/mips64/target_resource.h > new file mode 100644 > index 0000000000..fe29002a12 > --- /dev/null > +++ b/linux-user/mips64/target_resource.h > @@ -0,0 +1 @@ > +#include "../mips/target_resource.h" > diff --git a/linux-user/nios2/target_resource.h b/linux-user/nios2/target_resource.h > new file mode 100644 > index 0000000000..227259594c > --- /dev/null > +++ b/linux-user/nios2/target_resource.h > @@ -0,0 +1 @@ > +#include "../generic/target_resource.h" > diff --git a/linux-user/openrisc/target_resource.h b/linux-user/openrisc/target_resource.h > new file mode 100644 > index 0000000000..227259594c > --- /dev/null > +++ b/linux-user/openrisc/target_resource.h > @@ -0,0 +1 @@ > +#include "../generic/target_resource.h" > diff --git a/linux-user/ppc/target_resource.h b/linux-user/ppc/target_resource.h > new file mode 100644 > index 0000000000..227259594c > --- /dev/null > +++ b/linux-user/ppc/target_resource.h > @@ -0,0 +1 @@ > +#include "../generic/target_resource.h" > diff --git a/linux-user/riscv/target_resource.h b/linux-user/riscv/target_resource.h > new file mode 100644 > index 0000000000..227259594c > --- /dev/null > +++ b/linux-user/riscv/target_resource.h > @@ -0,0 +1 @@ > +#include "../generic/target_resource.h" > diff --git a/linux-user/s390x/target_resource.h b/linux-user/s390x/target_resource.h > new file mode 100644 > index 0000000000..227259594c > --- /dev/null > +++ b/linux-user/s390x/target_resource.h > @@ -0,0 +1 @@ > +#include "../generic/target_resource.h" > diff --git a/linux-user/sh4/target_resource.h b/linux-user/sh4/target_resource.h > new file mode 100644 > index 0000000000..227259594c > --- /dev/null > +++ b/linux-user/sh4/target_resource.h > @@ -0,0 +1 @@ > +#include "../generic/target_resource.h" > diff --git a/linux-user/sparc/target_resource.h b/linux-user/sparc/target_resource.h > new file mode 100644 > index 0000000000..d9a2fb814a > --- /dev/null > +++ b/linux-user/sparc/target_resource.h > @@ -0,0 +1,17 @@ > +#ifndef SPARC_TARGET_RESOURCE_H > +#define SPARC_TARGET_RESOURCE_H > + > +#include "../generic/target_resource.h" > + > +#if TARGET_ABI_BITS == 32 > +#undef TARGET_RLIM_INFINITY > +#define TARGET_RLIM_INFINITY 0x7fffffffUL > +#endif > + > +#undef TARGET_RLIMIT_NOFILE > +#define TARGET_RLIMIT_NOFILE 6 > + > +#undef TARGET_RLIMIT_NPROC > +#define TARGET_RLIMIT_NPROC 7 > + > +#endif > diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h > index 3fcabaeae3..78607effe8 100644 > --- a/linux-user/syscall_defs.h > +++ b/linux-user/syscall_defs.h > @@ -717,54 +717,7 @@ typedef struct target_siginfo { > #define TARGET_TRAP_HWBKPT (4) /* hardware breakpoint/watchpoint */ > #define TARGET_TRAP_UNK (5) /* undiagnosed trap */ > > -struct target_rlimit { > - abi_ulong rlim_cur; > - abi_ulong rlim_max; > -}; > - > -#if defined(TARGET_ALPHA) > -#define TARGET_RLIM_INFINITY 0x7fffffffffffffffull > -#elif defined(TARGET_MIPS) || (defined(TARGET_SPARC) && TARGET_ABI_BITS == 32) > -#define TARGET_RLIM_INFINITY 0x7fffffffUL > -#else > -#define TARGET_RLIM_INFINITY ((abi_ulong)-1) > -#endif > - > -#define TARGET_RLIMIT_CPU 0 > -#define TARGET_RLIMIT_FSIZE 1 > -#define TARGET_RLIMIT_DATA 2 > -#define TARGET_RLIMIT_STACK 3 > -#define TARGET_RLIMIT_CORE 4 > -#if defined(TARGET_MIPS) > -#define TARGET_RLIMIT_NOFILE 5 > -#define TARGET_RLIMIT_AS 6 > -#define TARGET_RLIMIT_RSS 7 > -#define TARGET_RLIMIT_NPROC 8 > -#define TARGET_RLIMIT_MEMLOCK 9 > -#elif defined(TARGET_ALPHA) > -#define TARGET_RLIMIT_RSS 5 > -#define TARGET_RLIMIT_NOFILE 6 > -#define TARGET_RLIMIT_AS 7 > -#define TARGET_RLIMIT_NPROC 8 > -#define TARGET_RLIMIT_MEMLOCK 9 > -#elif defined(TARGET_SPARC) > -#define TARGET_RLIMIT_RSS 5 > -#define TARGET_RLIMIT_NOFILE 6 > -#define TARGET_RLIMIT_NPROC 7 > -#define TARGET_RLIMIT_MEMLOCK 8 > -#define TARGET_RLIMIT_AS 9 > -#else > -#define TARGET_RLIMIT_RSS 5 > -#define TARGET_RLIMIT_NPROC 6 > -#define TARGET_RLIMIT_NOFILE 7 > -#define TARGET_RLIMIT_MEMLOCK 8 > -#define TARGET_RLIMIT_AS 9 > -#endif > -#define TARGET_RLIMIT_LOCKS 10 > -#define TARGET_RLIMIT_SIGPENDING 11 > -#define TARGET_RLIMIT_MSGQUEUE 12 > -#define TARGET_RLIMIT_NICE 13 > -#define TARGET_RLIMIT_RTPRIO 14 > +#include "target_resource.h" > > struct target_pollfd { > int fd; /* file descriptor */ > @@ -2769,10 +2722,6 @@ struct target_epoll_event { > #define TARGET_EP_MAX_EVENTS (INT_MAX / sizeof(struct target_epoll_event)) > > #endif > -struct target_rlimit64 { > - uint64_t rlim_cur; > - uint64_t rlim_max; > -}; > > struct target_ucred { > uint32_t pid; > diff --git a/linux-user/x86_64/target_resource.h b/linux-user/x86_64/target_resource.h > new file mode 100644 > index 0000000000..227259594c > --- /dev/null > +++ b/linux-user/x86_64/target_resource.h > @@ -0,0 +1 @@ > +#include "../generic/target_resource.h" > diff --git a/linux-user/xtensa/target_resource.h b/linux-user/xtensa/target_resource.h > new file mode 100644 > index 0000000000..227259594c > --- /dev/null > +++ b/linux-user/xtensa/target_resource.h > @@ -0,0 +1 @@ > +#include "../generic/target_resource.h" Applied to my linux-user-for-7.0 branch. Thanks, Laurent ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH] linux-user/alpha: Fix target rlimits for alpha and rearrange for clarity 2022-01-15 11:32 [PATCH] linux-user/alpha: Fix target rlimits for alpha and rearrange for clarity Serge Belyshev 2022-01-27 13:49 ` Laurent Vivier @ 2022-01-27 14:09 ` Laurent Vivier 1 sibling, 0 replies; 10+ messages in thread From: Laurent Vivier @ 2022-01-27 14:09 UTC (permalink / raw) To: Serge Belyshev, qemu-devel; +Cc: qemu-trivial Le 15/01/2022 à 12:32, Serge Belyshev a écrit : > Alpha uses different values of some TARGET_RLIMIT_* constants, which were > missing and caused bugs like #577, fixed thus. Also rearranged all three > (alpha, mips and sparc) that differ from everyone else for clarity. > > Signed-off-by: Serge Belyshev <belyshev@depni.sinp.msu.ru> > Resolves: https://gitlab.com/qemu-project/qemu/-/issues/577 > --- > linux-user/syscall_defs.h | 31 ++++++++++++++----------------- > 1 file changed, 14 insertions(+), 17 deletions(-) > > diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h > index f23f0a2178..3fcabaeae3 100644 > --- a/linux-user/syscall_defs.h > +++ b/linux-user/syscall_defs.h > @@ -730,44 +730,41 @@ struct target_rlimit { > #define TARGET_RLIM_INFINITY ((abi_ulong)-1) > #endif > > -#if defined(TARGET_MIPS) > #define TARGET_RLIMIT_CPU 0 > #define TARGET_RLIMIT_FSIZE 1 > #define TARGET_RLIMIT_DATA 2 > #define TARGET_RLIMIT_STACK 3 > #define TARGET_RLIMIT_CORE 4 > +#if defined(TARGET_MIPS) > +#define TARGET_RLIMIT_NOFILE 5 > +#define TARGET_RLIMIT_AS 6 > #define TARGET_RLIMIT_RSS 7 > #define TARGET_RLIMIT_NPROC 8 > -#define TARGET_RLIMIT_NOFILE 5 > #define TARGET_RLIMIT_MEMLOCK 9 > -#define TARGET_RLIMIT_AS 6 > -#define TARGET_RLIMIT_LOCKS 10 > -#define TARGET_RLIMIT_SIGPENDING 11 > -#define TARGET_RLIMIT_MSGQUEUE 12 > -#define TARGET_RLIMIT_NICE 13 > -#define TARGET_RLIMIT_RTPRIO 14 > -#else > -#define TARGET_RLIMIT_CPU 0 > -#define TARGET_RLIMIT_FSIZE 1 > -#define TARGET_RLIMIT_DATA 2 > -#define TARGET_RLIMIT_STACK 3 > -#define TARGET_RLIMIT_CORE 4 > +#elif defined(TARGET_ALPHA) > +#define TARGET_RLIMIT_RSS 5 > +#define TARGET_RLIMIT_NOFILE 6 > +#define TARGET_RLIMIT_AS 7 > +#define TARGET_RLIMIT_NPROC 8 > +#define TARGET_RLIMIT_MEMLOCK 9 > +#elif defined(TARGET_SPARC) > #define TARGET_RLIMIT_RSS 5 > -#if defined(TARGET_SPARC) > #define TARGET_RLIMIT_NOFILE 6 > #define TARGET_RLIMIT_NPROC 7 > +#define TARGET_RLIMIT_MEMLOCK 8 > +#define TARGET_RLIMIT_AS 9 > #else > +#define TARGET_RLIMIT_RSS 5 > #define TARGET_RLIMIT_NPROC 6 > #define TARGET_RLIMIT_NOFILE 7 > -#endif > #define TARGET_RLIMIT_MEMLOCK 8 > #define TARGET_RLIMIT_AS 9 > +#endif > #define TARGET_RLIMIT_LOCKS 10 > #define TARGET_RLIMIT_SIGPENDING 11 > #define TARGET_RLIMIT_MSGQUEUE 12 > #define TARGET_RLIMIT_NICE 13 > #define TARGET_RLIMIT_RTPRIO 14 > -#endif > > struct target_pollfd { > int fd; /* file descriptor */ Applied to my linux-user-for-7.0 branch. Thanks, Laurent ^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2022-02-01 8:28 UTC | newest] Thread overview: 10+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2022-01-15 11:32 [PATCH] linux-user/alpha: Fix target rlimits for alpha and rearrange for clarity Serge Belyshev 2022-01-27 13:49 ` Laurent Vivier 2022-01-29 19:41 ` Serge Belyshev 2022-01-29 19:46 ` [PATCH] linux-user: Move generic TARGET_RLIMIT* definitions to generic/target_resource.h Serge Belyshev 2022-01-29 19:48 ` [PATCH] linux-user/syscall: Translate TARGET_RLIMIT_RTTIME Serge Belyshev 2022-01-31 9:26 ` Laurent Vivier 2022-01-31 9:39 ` Laurent Vivier 2022-02-01 7:02 ` Laurent Vivier 2022-02-01 7:02 ` [PATCH] linux-user: Move generic TARGET_RLIMIT* definitions to generic/target_resource.h Laurent Vivier 2022-01-27 14:09 ` [PATCH] linux-user/alpha: Fix target rlimits for alpha and rearrange for clarity Laurent Vivier
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).