|
From: | Richard Henderson |
Subject: | Re: [PATCH 08/32] bsd-user: Implement target_to_host_rlim and host_to_target_rlim conversion. |
Date: | Tue, 29 Aug 2023 12:36:28 -0700 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.13.0 |
On 8/27/23 08:57, Karim Taha wrote:
From: Stacey Son<sson@FreeBSD.org> Signed-off-by: Stacey Son<sson@FreeBSD.org> Signed-off-by: Karim Taha<kariem.taha2.7@gmail.com> --- bsd-user/bsd-proc.c | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+)
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
+rlim_t target_to_host_rlim(abi_llong target_rlim) +{ + abi_llong target_rlim_swap; + rlim_t result; + + target_rlim_swap = tswap64(target_rlim); + if (target_rlim_swap == TARGET_RLIM_INFINITY) { + return RLIM_INFINITY; + } + + result = target_rlim_swap; + if (target_rlim_swap != (rlim_t)result) { + return RLIM_INFINITY; + } + + return result; +} + +abi_llong host_to_target_rlim(rlim_t rlim) +{ + abi_llong target_rlim_swap; + abi_llong result; + + if (rlim == RLIM_INFINITY || rlim != (abi_llong)rlim) { + target_rlim_swap = TARGET_RLIM_INFINITY; + } else { + target_rlim_swap = rlim; + } + result = tswap64(target_rlim_swap); + + return result; +}
Though I think these are the identity function as well, since afaict we're always talking about 64-bit data.
r~
[Prev in Thread] | Current Thread | [Next in Thread] |