[prev in list] [next in list] [prev in thread] [next in thread] 

List:       busybox
Subject:    Re: [PATCH v3 3/3] runsv: Use 64 prefix syscall if we have to
From:       Denys Vlasenko <vda.linux () googlemail ! com>
Date:       2019-10-08 14:33:27
Message-ID: CAK1hOcO17eku46OdUpzxtgMOzmd-4BPo3uRMH99H8m=Cnk0JZQ () mail ! gmail ! com
[Download RAW message or body]

Applied all 3 patches, thanks

On Wed, Sep 18, 2019 at 6:43 PM Alistair Francis
<alistair.francis@wdc.com> wrote:
>
> Some 32-bit architectures no longer have the 32-bit time_t syscalls.
> Instead they have suffixed syscalls that returns a 64-bit time_t. If
> the architecture doesn't have the non-suffixed syscall and is using a
> 64-bit time_t let's use the suffixed syscall instead.
>
> This fixes build issues when building for RISC-V 32-bit with 5.1+ kernel
> headers.
>
> If an architecture only supports the suffixed syscalls, but is still
> using a 32-bit time_t report a compilation error. This avoids us have to
> deal with converting between 64-bit and 32-bit values. There are
> currently no architectures where this is the case.
>
> Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
> ---
>  runit/runsv.c | 7 +++++++
>  1 file changed, 7 insertions(+)
>
> diff --git a/runit/runsv.c b/runit/runsv.c
> index ccc762d78..737909b0e 100644
> --- a/runit/runsv.c
> +++ b/runit/runsv.c
> @@ -55,7 +55,14 @@ ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
>   * typically requiring -lrt. We just skip all this mess */
>  static void gettimeofday_ns(struct timespec *ts)
>  {
> +#if defined(__NR_clock_gettime)
>         syscall(__NR_clock_gettime, CLOCK_REALTIME, ts);
> +#elif __TIMESIZE == 64
> +       syscall(__NR_clock_gettime64, CLOCK_REALTIME, ts);
> +#else
> +# error "We currently don't support architectures without " \
> +       "the __NR_clock_gettime syscall and 32-bit time_t"
> +#endif
>  }
>  #else
>  static void gettimeofday_ns(struct timespec *ts)
> --
> 2.23.0
>
> _______________________________________________
> busybox mailing list
> busybox@busybox.net
> http://lists.busybox.net/mailman/listinfo/busybox
_______________________________________________
busybox mailing list
busybox@busybox.net
http://lists.busybox.net/mailman/listinfo/busybox
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic