linux/arch/alpha/kernel
Arnd Bergmann bdd565f817 y2038: rusage: use __kernel_old_timeval
There are two 'struct timeval' fields in 'struct rusage'.

Unfortunately the definition of timeval is now ambiguous when used in
user space with a libc that has a 64-bit time_t, and this also changes
the 'rusage' definition in user space in a way that is incompatible with
the system call interface.

While there is no good solution to avoid all ambiguity here, change
the definition in the kernel headers to be compatible with the kernel
ABI, using __kernel_old_timeval as an unambiguous base type.

In previous discussions, there was also a plan to add a replacement
for rusage based on 64-bit timestamps and nanosecond resolution,
i.e. 'struct __kernel_timespec'. I have patches for that as well,
if anyone thinks we should do that.

Reviewed-by: Cyrill Gorcunov <gorcunov@gmail.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2019-11-15 14:38:29 +01:00
..
syscalls arch: mark syscall number 435 reserved for clone3 2019-07-15 00:39:33 +02:00
.gitignore
asm-offsets.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
audit.c alpha: Enable system-call auditing support. 2014-01-31 09:21:55 -08:00
binfmt_loader.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
bugs.c alpha: Implement CPU vulnerabilities sysfs functions. 2018-04-07 15:04:04 -07:00
console.c vgacon: Set VGA struct resource types 2017-12-18 23:07:43 -06:00
core_apecs.c memblock: stop using implicit alignment to SMP_CACHE_BYTES 2018-10-31 08:54:16 -07:00
core_cia.c treewide: add checks for the return value of memblock_alloc*() 2019-03-12 10:04:02 -07:00
core_irongate.c mm: remove include/linux/bootmem.h 2018-10-31 08:54:16 -07:00
core_lca.c memblock: stop using implicit alignment to SMP_CACHE_BYTES 2018-10-31 08:54:16 -07:00
core_marvel.c treewide: add checks for the return value of memblock_alloc*() 2019-03-12 10:04:02 -07:00
core_mcpcia.c memblock: stop using implicit alignment to SMP_CACHE_BYTES 2018-10-31 08:54:16 -07:00
core_polaris.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
core_t2.c memblock: stop using implicit alignment to SMP_CACHE_BYTES 2018-10-31 08:54:16 -07:00
core_titan.c memblock: stop using implicit alignment to SMP_CACHE_BYTES 2018-10-31 08:54:16 -07:00
core_tsunami.c memblock: stop using implicit alignment to SMP_CACHE_BYTES 2018-10-31 08:54:16 -07:00
core_wildfire.c alpha: fix spelling mistake QSD_PORT_ACTUVE -> QSD_PORT_ACTIVE 2018-12-21 11:57:57 -05:00
entry.S alpha: unify the glue for sigreturn-like syscalls 2018-08-16 21:03:35 -04:00
err_common.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
err_ev6.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
err_ev7.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
err_impl.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
err_marvel.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
err_titan.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
es1888.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
gct.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
head.S License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
io.c alpha: io: reorder barriers to guarantee writeX() and iowriteX() ordering #2 2018-05-22 18:10:36 -07:00
irq_alpha.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
irq_i8259.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
irq_impl.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
irq_pyxis.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
irq_srm.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
irq.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
machvec_impl.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
Makefile alpha: Implement CPU vulnerabilities sysfs functions. 2018-04-07 15:04:04 -07:00
module.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
osf_sys.c y2038: rusage: use __kernel_old_timeval 2019-11-15 14:38:29 +01:00
pc873xx.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
pc873xx.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
pci_impl.h alpha: fix reboot on Avanti platform 2018-01-20 17:01:10 -08:00
pci_iommu.c dma-mapping: explicitly wire up ->mmap and ->get_sgtable 2019-09-04 11:13:18 +02:00
pci-noop.c treewide: add checks for the return value of memblock_alloc*() 2019-03-12 10:04:02 -07:00
pci-sysfs.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
pci.c treewide: add checks for the return value of memblock_alloc*() 2019-03-12 10:04:02 -07:00
perf_event.c perf/core, arch/alpha: Strengthen exclusion checks with PERF_PMU_CAP_NO_EXCLUDE 2019-01-21 11:01:21 +01:00
process.c alpha: fix crash if pthread_create races with signal delivery 2018-01-20 17:01:16 -08:00
proto.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
ptrace.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
rtc.c alpha: rtc: simplify alpha_rtc_init 2018-12-21 11:57:57 -05:00
setup.c arch: use memblock_alloc() instead of memblock_alloc_from(size, align, 0) 2019-03-12 10:04:01 -07:00
signal.c signal: Remove task parameter from force_sig 2019-05-27 09:36:28 -05:00
smc37c93x.c arch: mostly remove <asm/segment.h> 2019-04-23 21:51:40 +02:00
smc37c669.c arch: mostly remove <asm/segment.h> 2019-04-23 21:51:40 +02:00
smp.c smp: Remove smp_call_function() and on_each_cpu() return values 2019-06-23 14:26:26 +02:00
srm_env.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 333 2019-06-05 17:37:06 +02:00
srmcons.c treewide: setup_timer() -> timer_setup() 2017-11-21 15:57:07 -08:00
sys_alcor.c License cleanup: add SPDX license identifiers to some files 2017-11-02 10:04:46 -07:00
sys_cabriolet.c License cleanup: add SPDX license identifiers to some files 2017-11-02 10:04:46 -07:00
sys_dp264.c License cleanup: add SPDX license identifiers to some files 2017-11-02 10:04:46 -07:00
sys_eb64p.c License cleanup: add SPDX license identifiers to some files 2017-11-02 10:04:46 -07:00
sys_eiger.c License cleanup: add SPDX license identifiers to some files 2017-11-02 10:04:46 -07:00
sys_jensen.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
sys_marvel.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
sys_miata.c License cleanup: add SPDX license identifiers to some files 2017-11-02 10:04:46 -07:00
sys_mikasa.c License cleanup: add SPDX license identifiers to some files 2017-11-02 10:04:46 -07:00
sys_nautilus.c mm: remove include/linux/bootmem.h 2018-10-31 08:54:16 -07:00
sys_noritake.c License cleanup: add SPDX license identifiers to some files 2017-11-02 10:04:46 -07:00
sys_rawhide.c License cleanup: add SPDX license identifiers to some files 2017-11-02 10:04:46 -07:00
sys_ruffian.c License cleanup: add SPDX license identifiers to some files 2017-11-02 10:04:46 -07:00
sys_rx164.c License cleanup: add SPDX license identifiers to some files 2017-11-02 10:04:46 -07:00
sys_sable.c License cleanup: add SPDX license identifiers to some files 2017-11-02 10:04:46 -07:00
sys_sio.c alpha/PCI: Fix noname IRQ level detection 2018-01-20 16:22:36 -08:00
sys_sx164.c License cleanup: add SPDX license identifiers to some files 2017-11-02 10:04:46 -07:00
sys_takara.c License cleanup: add SPDX license identifiers to some files 2017-11-02 10:04:46 -07:00
sys_titan.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
sys_wildfire.c License cleanup: add SPDX license identifiers to some files 2017-11-02 10:04:46 -07:00
systbls.S alpha: generate uapi header and syscall table header files 2018-12-21 11:57:56 -05:00
time.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
traps.c signal: Remove the task parameter from force_sig_fault 2019-05-29 09:31:43 -05:00
vmlinux.lds.S License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00