LINUX 5.6: define osi_timeval32_t for 32-bit Linux 16/14216/6
authorMark Vitale <mvitale@sinenomine.net>
Mon, 18 May 2020 21:20:26 +0000 (17:20 -0400)
committerBenjamin Kaduk <kaduk@mit.edu>
Thu, 28 May 2020 00:28:52 +0000 (20:28 -0400)
commit9a5790cfbb8e7b1a4a2e832911c71da49f604c20
tree6e371d71238698802b484f7952be7e8d4b602b4f
parent13e44b2b200cd99d0df4e03cf6413d3a6915783f
LINUX 5.6: define osi_timeval32_t for 32-bit Linux

For 32-bit Linux (e.g., arch i586), AFS_LINUX_64BIT_KERNEL is not
defined, so osi_timeval32_t is defined as a typedef of the native
'timeval'.  However, as of commit
c766d1472c70d25ad475cf56042af1652e792b23 "y2038: hide
timeval/timespec/itimerval/itimerspec types" (Linux 5.6), the native
timeval struct is no longer available.  On such a kernel, the OpenAFS
build will fail because osi_timeval32_t is not properly defined.

Instead, add new conditionals to properly define osi_timeval32_t for
this platform.

Change-Id: I1eddeeb3651dcd3c55920ab1d2ad2838f4729bdd
Reviewed-on: https://gerrit.openafs.org/14216
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
src/afs/LINUX/osi_machdep.h
src/afs/afs_osi.h