aboutsummaryrefslogtreecommitdiffstats
path: root/config
diff options
context:
space:
mode:
authorRob Norris <[email protected]>2023-12-16 18:01:45 +1100
committerBrian Behlendorf <[email protected]>2023-12-20 11:47:18 -0800
commit00f40961e0eb7d8bcdb016020f1f2dbe372d3e96 (patch)
tree4ace093c07c2107fe567b3dcfebbb7ed2a23ebc5 /config
parentdbda45160ffa43e5ecf0498a609230f1afee7b3f (diff)
Linux 6.7 compat: simplify current_time() check
6.7 changed the names of the time members in struct inode, so we can't assign back to it because we don't know its name. In practice this doesn't matter though - if we're missing current_time(), then we must be on <4.9, and we know our fallback will need to return timespec. Reviewed-by: Tony Hutter <[email protected]> Reviewed-by: Brian Behlendorf <[email protected]> Signed-off-by: Rob Norris <[email protected]> Sponsored-by: https://github.com/sponsors/robn Closes #15681
Diffstat (limited to 'config')
-rw-r--r--config/kernel-current-time.m45
1 files changed, 4 insertions, 1 deletions
diff --git a/config/kernel-current-time.m4 b/config/kernel-current-time.m4
index 3ceb5f63e..ab7d9c5ce 100644
--- a/config/kernel-current-time.m4
+++ b/config/kernel-current-time.m4
@@ -2,12 +2,15 @@ dnl #
dnl # 4.9, current_time() added
dnl # 4.18, return type changed from timespec to timespec64
dnl #
+dnl # Note that we don't care about the return type in this check. If we have
+dnl # to implement a fallback, we'll know we're <4.9, which was timespec.
+dnl #
AC_DEFUN([ZFS_AC_KERNEL_SRC_CURRENT_TIME], [
ZFS_LINUX_TEST_SRC([current_time], [
#include <linux/fs.h>
], [
struct inode ip __attribute__ ((unused));
- ip.i_atime = current_time(&ip);
+ (void) current_time(&ip);
])
])