um: time: fix initialization in time-travel mode
authorJohannes Berg <johannes.berg@intel.com>
Fri, 15 Jan 2021 11:49:45 +0000 (12:49 +0100)
committerRichard Weinberger <richard@nod.at>
Tue, 26 Jan 2021 21:11:38 +0000 (22:11 +0100)
commit7f3414226b58b0df0426104c8ab5e8d50ae71d11
treeb98f6a25b6157c873cb66a71729bd82f223d7daf
parent9868c2081d071f7c309796c8dffc94364fc07582
um: time: fix initialization in time-travel mode

In time-travel mode, since my previous patch, the start time was
initialized too late, so that the system would read it before we
set it, thus always starting system time at 0 (1970-01-01). This
happens because timekeeping_init() reads the time and is called
before time_init().

Unfortunately, I didn't see this before because I was testing it
only with the RTC patch applied (and enabled), and then the time
is read again by the RTC a little - after time_init() this time.

Fix this by just doing the initialization whenever necessary.

Fixes: 2701c1bd91dd ("um: time: Fix read_persistent_clock64() in time-travel")
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Richard Weinberger <richard@nod.at>
arch/um/kernel/time.c