aboutsummaryrefslogtreecommitdiffstats
path: root/module
diff options
context:
space:
mode:
authorBrian Behlendorf <[email protected]>2017-05-10 09:30:48 -0700
committerGitHub <[email protected]>2017-05-10 09:30:48 -0700
commit2946a1a15aab874107b4425513c1bf805e730803 (patch)
tree21b3f8b56ed293b626eefc6549aeb74342ae3eb5 /module
parenta3eeab2de68670a4481eab3d086982aff23b6906 (diff)
Linux 4.12 compat: CURRENT_TIME removed
Linux 4.9 added current_time() as the preferred interface to get the filesystem time. CURRENT_TIME was retired in Linux 4.12. Reviewed-by: Chunwei Chen <[email protected]> Signed-off-by: Brian Behlendorf <[email protected]> Closes #6114
Diffstat (limited to 'module')
-rw-r--r--module/zfs/zfs_ctldir.c3
-rw-r--r--module/zfs/zpl_ctldir.c15
-rw-r--r--module/zfs/zpl_inode.c2
-rw-r--r--module/zfs/zpl_xattr.c5
4 files changed, 14 insertions, 11 deletions
diff --git a/module/zfs/zfs_ctldir.c b/module/zfs/zfs_ctldir.c
index eea1bb2e8..0c90532c1 100644
--- a/module/zfs/zfs_ctldir.c
+++ b/module/zfs/zfs_ctldir.c
@@ -451,7 +451,7 @@ static struct inode *
zfsctl_inode_alloc(zfsvfs_t *zfsvfs, uint64_t id,
const struct file_operations *fops, const struct inode_operations *ops)
{
- struct timespec now = current_fs_time(zfsvfs->z_sb);
+ struct timespec now;
struct inode *ip;
znode_t *zp;
@@ -459,6 +459,7 @@ zfsctl_inode_alloc(zfsvfs_t *zfsvfs, uint64_t id,
if (ip == NULL)
return (NULL);
+ now = current_time(ip);
zp = ITOZ(ip);
ASSERT3P(zp->z_dirlocks, ==, NULL);
ASSERT3P(zp->z_acl_cached, ==, NULL);
diff --git a/module/zfs/zpl_ctldir.c b/module/zfs/zpl_ctldir.c
index bd8af3928..1c5fb34e6 100644
--- a/module/zfs/zpl_ctldir.c
+++ b/module/zfs/zpl_ctldir.c
@@ -103,8 +103,10 @@ static int
zpl_root_getattr_impl(const struct path *path, struct kstat *stat,
u32 request_mask, unsigned int query_flags)
{
- generic_fillattr(path->dentry->d_inode, stat);
- stat->atime = CURRENT_TIME;
+ struct inode *ip = path->dentry->d_inode;
+
+ generic_fillattr(ip, stat);
+ stat->atime = current_time(ip);
return (0);
}
@@ -377,14 +379,15 @@ static int
zpl_snapdir_getattr_impl(const struct path *path, struct kstat *stat,
u32 request_mask, unsigned int query_flags)
{
- zfsvfs_t *zfsvfs = ITOZSB(path->dentry->d_inode);
+ struct inode *ip = path->dentry->d_inode;
+ zfsvfs_t *zfsvfs = ITOZSB(ip);
ZFS_ENTER(zfsvfs);
- generic_fillattr(path->dentry->d_inode, stat);
+ generic_fillattr(ip, stat);
stat->nlink = stat->size = 2;
stat->ctime = stat->mtime = dmu_objset_snap_cmtime(zfsvfs->z_os);
- stat->atime = CURRENT_TIME;
+ stat->atime = current_time(ip);
ZFS_EXIT(zfsvfs);
return (0);
@@ -522,7 +525,7 @@ zpl_shares_getattr_impl(const struct path *path, struct kstat *stat,
if (zfsvfs->z_shares_dir == 0) {
generic_fillattr(path->dentry->d_inode, stat);
stat->nlink = stat->size = 2;
- stat->atime = CURRENT_TIME;
+ stat->atime = current_time(ip);
ZFS_EXIT(zfsvfs);
return (0);
}
diff --git a/module/zfs/zpl_inode.c b/module/zfs/zpl_inode.c
index 8351ab5a0..3b5643d09 100644
--- a/module/zfs/zpl_inode.c
+++ b/module/zfs/zpl_inode.c
@@ -596,7 +596,7 @@ zpl_link(struct dentry *old_dentry, struct inode *dir, struct dentry *dentry)
return (-EMLINK);
crhold(cr);
- ip->i_ctime = CURRENT_TIME_SEC;
+ ip->i_ctime = current_time(ip);
igrab(ip); /* Use ihold() if available */
cookie = spl_fstrans_mark();
diff --git a/module/zfs/zpl_xattr.c b/module/zfs/zpl_xattr.c
index 5edabedd3..d3bb4bbf8 100644
--- a/module/zfs/zpl_xattr.c
+++ b/module/zfs/zpl_xattr.c
@@ -938,7 +938,6 @@ xattr_handler_t zpl_xattr_security_handler = {
int
zpl_set_acl(struct inode *ip, struct posix_acl *acl, int type)
{
- struct super_block *sb = ITOZSB(ip)->z_sb;
char *name, *value = NULL;
int error = 0;
size_t size = 0;
@@ -964,7 +963,7 @@ zpl_set_acl(struct inode *ip, struct posix_acl *acl, int type)
*/
if (ip->i_mode != mode) {
ip->i_mode = mode;
- ip->i_ctime = current_fs_time(sb);
+ ip->i_ctime = current_time(ip);
zfs_mark_inode_dirty(ip);
}
@@ -1130,7 +1129,7 @@ zpl_init_acl(struct inode *ip, struct inode *dir)
if (!acl) {
ip->i_mode &= ~current_umask();
- ip->i_ctime = current_fs_time(ITOZSB(ip)->z_sb);
+ ip->i_ctime = current_time(ip);
zfs_mark_inode_dirty(ip);
return (0);
}