diff options
| author | Arnd Bergmann <arnd@arndb.de> | 2015-09-27 23:45:30 +0300 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2015-09-29 05:06:16 +0300 |
| commit | 219e6de627243c8dbc701eaafe1c30c481d1f82c (patch) | |
| tree | b010d1bca79570b8b32f1b64cac640700516e7e6 /include/linux/timerqueue.h | |
| parent | 8cc980713ec9e6847896891c54562ad815c33424 (diff) | |
| download | linux-219e6de627243c8dbc701eaafe1c30c481d1f82c.tar.xz | |
staging/lustre: use 64-bit times for request times
All request timestamps and deadlines in lustre are recorded in time_t
and timeval units, which overflow in 2038 on 32-bit systems.
In this patch, I'm converting them to time64_t and timespec64,
respectively. Unfortunately, this makes a relatively large patch,
but I could not find an obvious way to split it up some more without
breaking atomicity of the change.
Also unfortunately, this introduces two instances of div_u64_rem()
in the request path, which can be slow on 32-bit architectures. This
can probably be avoided by a larger restructuring of the code, but
it is unlikely that lustre is used in performance critical setups
on 32-bit architectures, so it seems better to optimize for correctness
rather than speed here.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Oleg Drokin <green@linuxhacker.ru>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'include/linux/timerqueue.h')
0 files changed, 0 insertions, 0 deletions
