diff options
author | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2016-05-31 10:16:24 +0200 |
---|---|---|
committer | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2016-06-13 15:58:20 +0200 |
commit | 4027789192d149678262ad606b2d7e2a61bed0f2 (patch) | |
tree | cb58f29b1ddf8e1f06eee12c67fa2a846ee0e7ad /arch/s390/kernel/early.c | |
parent | 9dc06ccf4699db81b88a6ff45a8acefd6c278327 (diff) | |
download | op-kernel-dev-4027789192d149678262ad606b2d7e2a61bed0f2.zip op-kernel-dev-4027789192d149678262ad606b2d7e2a61bed0f2.tar.gz |
s390/time: LPAR offset handling
It is possible to specify a user offset for the TOD clock, e.g. +2 hours.
The TOD clock will carry this offset even if the clock is synchronized
with STP. This makes the time stamps acquired with get_sync_clock()
useless as another LPAR migth use a different TOD offset.
Use the PTFF instrution to get the TOD epoch difference and subtract
it from the TOD clock value to get a physical timestamp. As the epoch
difference contains the sync check delta as well the LPAR offset value
to the physical clock needs to be refreshed after each clock
synchronization.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390/kernel/early.c')
-rw-r--r-- | arch/s390/kernel/early.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/s390/kernel/early.c b/arch/s390/kernel/early.c index 4067dbe..717b03a 100644 --- a/arch/s390/kernel/early.c +++ b/arch/s390/kernel/early.c @@ -467,6 +467,7 @@ void __init startup_init(void) ipl_save_parameters(); rescue_initrd(); clear_bss_section(); + ptff_init(); init_kernel_storage_key(); lockdep_off(); setup_lowcore_early(); |