mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-10-30 08:02:30 +00:00
dbb381b619
Core: - Consolidation of the vDSO build infrastructure to address the difficulties of cross-builds for ARM64 compat vDSO libraries by restricting the exposure of header content to the vDSO build. This is achieved by splitting out header content into separate headers. which contain only the minimaly required information which is necessary to build the vDSO. These new headers are included from the kernel headers and the vDSO specific files. - Enhancements to the generic vDSO library allowing more fine grained control over the compiled in code, further reducing architecture specific storage and preparing for adopting the generic library by PPC. - Cleanup and consolidation of the exit related code in posix CPU timers. - Small cleanups and enhancements here and there Drivers: - The obligatory new drivers: Ingenic JZ47xx and X1000 TCU support - Correct the clock rate of PIT64b global clock - setup_irq() cleanup - Preparation for PWM and suspend support for the TI DM timer - Expand the fttmr010 driver to support ast2600 systems - The usual small fixes, enhancements and cleanups all over the place -----BEGIN PGP SIGNATURE----- iQJHBAABCgAxFiEEQp8+kY+LLUocC4bMphj1TA10mKEFAl6B+QETHHRnbHhAbGlu dXRyb25peC5kZQAKCRCmGPVMDXSYofJ5D/94s5fpaqiuNcaAsLq2D3DRIrTnqxx7 yEeAOPcbYV1bM1SgY/M83L5yGc2S8ny787e26abwRTCZhZV3eAmRTphIFFIZR0Xk xS+i67odscbdJTRtztKj3uQ9rFxefszRuphyaa89pwSY9nnyMWLcahGSQOGs0LJK hvmgwPjyM1drNfPxgPiaFg7vDr2XxNATpQr/FBt+BhelvVan8TlAfrkcNPiLr++Y Axz925FP7jMaRRbZ1acji34gLiIAZk0jLCUdbix7YkPrqDB4GfO+v8Vez+fGClbJ uDOYeR4r1+Be/BtSJtJ2tHqtsKCcAL6agtaE2+epZq5HbzaZFRvBFaxgFNF8WVcn 3FFibdEMdsRNfZTUVp5wwgOLN0UIqE/7LifE12oLEL2oFB5H2PiNEUw3E02XHO11 rL3zgHhB6Ke1sXKPCjSGdmIQLbxZmV5kOlQFy7XuSeo5fmRapVzKNffnKcftIliF 1HNtZbgdA+3tdxMFCqoo1QX+kotl9kgpslmdZ0qHAbaRb3xqLoSskbqEjFRMuSCC 8bjJrwboD9T5GPfwodSCgqs/58CaSDuqPFbIjCay+p90Fcg6wWAkZtyG04ZLdPRc GgNNdN4gjTD9bnrRi8cH47z1g8OO4vt4K4SEbmjo8IlDW+9jYMxuwgR88CMeDXd7 hu7aKsr2I2q/WQ== =5o9G -----END PGP SIGNATURE----- Merge tag 'timers-core-2020-03-30' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip Pull timekeeping and timer updates from Thomas Gleixner: "Core: - Consolidation of the vDSO build infrastructure to address the difficulties of cross-builds for ARM64 compat vDSO libraries by restricting the exposure of header content to the vDSO build. This is achieved by splitting out header content into separate headers. which contain only the minimaly required information which is necessary to build the vDSO. These new headers are included from the kernel headers and the vDSO specific files. - Enhancements to the generic vDSO library allowing more fine grained control over the compiled in code, further reducing architecture specific storage and preparing for adopting the generic library by PPC. - Cleanup and consolidation of the exit related code in posix CPU timers. - Small cleanups and enhancements here and there Drivers: - The obligatory new drivers: Ingenic JZ47xx and X1000 TCU support - Correct the clock rate of PIT64b global clock - setup_irq() cleanup - Preparation for PWM and suspend support for the TI DM timer - Expand the fttmr010 driver to support ast2600 systems - The usual small fixes, enhancements and cleanups all over the place" * tag 'timers-core-2020-03-30' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (80 commits) Revert "clocksource/drivers/timer-probe: Avoid creating dead devices" vdso: Fix clocksource.h macro detection um: Fix header inclusion arm64: vdso32: Enable Clang Compilation lib/vdso: Enable common headers arm: vdso: Enable arm to use common headers x86/vdso: Enable x86 to use common headers mips: vdso: Enable mips to use common headers arm64: vdso32: Include common headers in the vdso library arm64: vdso: Include common headers in the vdso library arm64: Introduce asm/vdso/processor.h arm64: vdso32: Code clean up linux/elfnote.h: Replace elf.h with UAPI equivalent scripts: Fix the inclusion order in modpost common: Introduce processor.h linux/ktime.h: Extract common header for vDSO linux/jiffies.h: Extract common header for vDSO linux/time64.h: Extract common header for vDSO linux/time32.h: Extract common header for vDSO linux/time.h: Extract common header for vDSO ...
72 lines
1.8 KiB
C
72 lines
1.8 KiB
C
#ifndef _LINUX_TIME32_H
|
|
#define _LINUX_TIME32_H
|
|
/*
|
|
* These are all interfaces based on the old time_t definition
|
|
* that overflows in 2038 on 32-bit architectures. New code
|
|
* should use the replacements based on time64_t and timespec64.
|
|
*
|
|
* Any interfaces in here that become unused as we migrate
|
|
* code to time64_t should get removed.
|
|
*/
|
|
|
|
#include <linux/time64.h>
|
|
#include <linux/timex.h>
|
|
|
|
#include <vdso/time32.h>
|
|
|
|
struct old_itimerspec32 {
|
|
struct old_timespec32 it_interval;
|
|
struct old_timespec32 it_value;
|
|
};
|
|
|
|
struct old_utimbuf32 {
|
|
old_time32_t actime;
|
|
old_time32_t modtime;
|
|
};
|
|
|
|
struct old_timex32 {
|
|
u32 modes;
|
|
s32 offset;
|
|
s32 freq;
|
|
s32 maxerror;
|
|
s32 esterror;
|
|
s32 status;
|
|
s32 constant;
|
|
s32 precision;
|
|
s32 tolerance;
|
|
struct old_timeval32 time;
|
|
s32 tick;
|
|
s32 ppsfreq;
|
|
s32 jitter;
|
|
s32 shift;
|
|
s32 stabil;
|
|
s32 jitcnt;
|
|
s32 calcnt;
|
|
s32 errcnt;
|
|
s32 stbcnt;
|
|
s32 tai;
|
|
|
|
s32:32; s32:32; s32:32; s32:32;
|
|
s32:32; s32:32; s32:32; s32:32;
|
|
s32:32; s32:32; s32:32;
|
|
};
|
|
|
|
extern int get_old_timespec32(struct timespec64 *, const void __user *);
|
|
extern int put_old_timespec32(const struct timespec64 *, void __user *);
|
|
extern int get_old_itimerspec32(struct itimerspec64 *its,
|
|
const struct old_itimerspec32 __user *uits);
|
|
extern int put_old_itimerspec32(const struct itimerspec64 *its,
|
|
struct old_itimerspec32 __user *uits);
|
|
struct __kernel_timex;
|
|
int get_old_timex32(struct __kernel_timex *, const struct old_timex32 __user *);
|
|
int put_old_timex32(struct old_timex32 __user *, const struct __kernel_timex *);
|
|
|
|
/**
|
|
* ns_to_kernel_old_timeval - Convert nanoseconds to timeval
|
|
* @nsec: the nanoseconds value to be converted
|
|
*
|
|
* Returns the timeval representation of the nsec parameter.
|
|
*/
|
|
extern struct __kernel_old_timeval ns_to_kernel_old_timeval(s64 nsec);
|
|
|
|
#endif
|