]> git.proxmox.com Git - mirror_zfs.git/commitdiff
Linux 6.7 compat: simplify current_time() check
authorRob Norris <robn@despairlabs.com>
Sat, 16 Dec 2023 07:01:45 +0000 (18:01 +1100)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Wed, 20 Dec 2023 19:47:18 +0000 (11:47 -0800)
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 <hutter2@llnl.gov>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Rob Norris <robn@despairlabs.com>
Sponsored-by: https://github.com/sponsors/robn
Closes #15681

config/kernel-current-time.m4

index 3ceb5f63efa9d5c0d7b56fdd3614c40839d50b54..ab7d9c5cedbad2e626e11f4de7b8059d16590ce7 100644 (file)
@@ -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);
        ])
 ])