y2038: convert more syscalls

Here is another set of system call changes to prepare the change over to
64-bit time_t. As before, the strategy is to change system calls that
take a 'struct timespec' argument over to 'struct __kernel_timespec',
which for now is defined to be the same but will get redefined to use a
64-bit time_t argument once we are ready to modify the system call tables.

The major change from previous patches is that the plan is no longer
to directly use the 'compat' system calls for providing compatibility
with the existing 32-bit time_t based entry points. Instead, we rename
the compat code to something that makes more sense on 32-bit architectures,
e.g. compat_timespec becomes old_timespec32.

With the renamed types in place, we change over the 'stat' and 'utimes'
families of system calls, sched_rr_get_interval, recvmmsg and
rt_sigtimedwait. Another series for poll, select and io_pgetevents is
currently being tested.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1

iQIcBAABAgAGBQJbnShbAAoJEGCrR//JCVInmWIQAN1l/3DOw0hjln3VYM2xpO6P
q0RSQXpB7JxIY6h4eRtJWPhLftjpklmZVAoQ8iThEAeR0gBXa1/sQ3AoK0Y+Ca1Z
tOpXE8O73igbbZ9qSCzw1KCcxU4wBIpJJI7y1mGbmJarHL7SgS3vxsxnlGXtepcY
2qViAqalnX0XW5/4wFfwco/8mVJzBloSz6PMDRXuIenP48noI24up9Ho/Kk6ZKbw
7MeLlM982HxnfwbyjENVCOcurYGJOujIQj1g+LbMuPa7P7/PiYqIdqzAUSo50P0+
Yil/k12R8+rsoE4kqtxjLESYrWOdt5guVO4Y2XgPAQEGYsB++93sLKzSMXUTlD2s
khuYotYUSL3GMT2MvSO1ZYQOLuYGlyAXKFEqYenUsU/3NxsYSVzkQngI89ZXHmxr
vHZINY4k4kGjUneiR6Mvyoo36i5qQSeXKZ+Qb0Njh2lTD2D5H0PaZT3guc9OUnLN
SS1LTePzz/QrnKxQCvprnFBPQ1WKXrkk5Sg9MzU0h90tgwz896VqbCgH0qOFdNBd
1iApSoIzyS46wrkn9rOomwOC/ZZQLYMDwCCXxTljtT1xupezlxB60CkWVtNa+Ekh
bY7zsUXHiXJ1yLB+f3jZBEnMqxubtsiIfZMwcjMvo948XPE1WgzUU8alUZrpDBiM
vayg38FaXyZ24vEPfPce
=XuMh
-----END PGP SIGNATURE-----
RISC-V: Request newstat syscalls

Since commit 82b355d161c9 ("y2038: Remove newstat family from default
syscall set"), riscv images fail to boot with the following error.

/sbin/init: error while loading shared libraries: libc.so.6:
	cannot stat shared object: Error 38
Kernel panic - not syncing: Attempted to kill init! exitcode=0x00007f00

Explicitly request newstat syscalls to fix the problem.

Fixes: 82b355d161c9 ("y2038: Remove newstat family from default syscall set")
Cc: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
1 file changed