Re: [RFC v6 07/23] RISC-V: Use 64-bit time_t and off_t for RV32 and RV64

Joseph Myers
2020-02-20T14:14:30Z

On Thu, 20 Feb 2020, Arnd Bergmann wrote:

> But surely that structure layout would be the same on ARM and ARC
> as well as all other 32-bit architectures with _TIME_BITS=64, right?

Yes.

> What's wrong with having a single implementation for the most
> recent set of stat syscalls, with the older variants being only compiled
> for architectures that need them to support _TIME_BITS=32 and/or
> _FILE_OFFSET_BITS=32?

The ARC case should be a very simple patch, just changing a few
conditionals so the statx path can be used on an architecture that also
has the old syscalls. No conditionals for whether to build a particular
stat function, or for what that function is called, will be needed. No
conditionals for whether a syscall is available at runtime will be needed,
because at least initially the port will be assuming Linux 5.1 or later.

In the Arm case, the code will need to allow for runtime fallback to old
stat syscalls on kernels without statx, and will need to build the
function using the new layout under a new name. That's a much more
complicated change that can build on top of the ARC change.

--
Joseph S. Myers
joseph@codesourcery.com