diff options
author | Arnd Bergmann <arnd@arndb.de> | 2019-10-31 15:53:13 +0100 |
---|---|---|
committer | J. Bruce Fields <bfields@redhat.com> | 2019-12-19 17:46:08 -0500 |
commit | 9cc7680149b238223bbb8bcf3272f6bd47f1fbfb (patch) | |
tree | ef10cbb50010ca6cf0ab07332b95fe88391c07e3 /fs/nfsd/netns.h | |
parent | e4598e38ee7e708d751081799f27d3f11a3e687d (diff) | |
download | linux-rpi-9cc7680149b238223bbb8bcf3272f6bd47f1fbfb.tar.gz linux-rpi-9cc7680149b238223bbb8bcf3272f6bd47f1fbfb.tar.bz2 linux-rpi-9cc7680149b238223bbb8bcf3272f6bd47f1fbfb.zip |
nfsd: make 'boot_time' 64-bit wide
The local boot time variable gets truncated to time_t at the moment,
which can lead to slightly odd behavior on 32-bit architectures.
Use ktime_get_real_seconds() instead of get_seconds() to always
get a 64-bit result, and keep it that way wherever possible.
It still gets truncated in a few places:
- When assigning to cl_clientid.cl_boot, this is already documented
and is only used as a unique identifier.
- In clients_still_reclaiming(), the truncation is to 'unsigned long'
in order to use the 'time_before() helper.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
Diffstat (limited to 'fs/nfsd/netns.h')
-rw-r--r-- | fs/nfsd/netns.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/nfsd/netns.h b/fs/nfsd/netns.h index 9a4ef815fb8c..29bbe28eda53 100644 --- a/fs/nfsd/netns.h +++ b/fs/nfsd/netns.h @@ -40,7 +40,7 @@ struct nfsd_net { struct lock_manager nfsd4_manager; bool grace_ended; - time_t boot_time; + time64_t boot_time; /* internal mount of the "nfsd" pseudofilesystem: */ struct vfsmount *nfsd_mnt; |