affs: convert to new i_version API

Signed-off-by: Jeff Layton <jlayton@redhat.com>
This commit is contained in:
Jeff Layton
2017-12-11 06:35:10 -05:00
parent 2489dbabea
commit 9dffe569d9
3 changed files with 8 additions and 5 deletions

View File

@@ -10,6 +10,7 @@
*/ */
#include <linux/math64.h> #include <linux/math64.h>
#include <linux/iversion.h>
#include "affs.h" #include "affs.h"
/* /*
@@ -60,7 +61,7 @@ affs_insert_hash(struct inode *dir, struct buffer_head *bh)
affs_brelse(dir_bh); affs_brelse(dir_bh);
dir->i_mtime = dir->i_ctime = current_time(dir); dir->i_mtime = dir->i_ctime = current_time(dir);
dir->i_version++; inode_inc_iversion(dir);
mark_inode_dirty(dir); mark_inode_dirty(dir);
return 0; return 0;
@@ -114,7 +115,7 @@ affs_remove_hash(struct inode *dir, struct buffer_head *rem_bh)
affs_brelse(bh); affs_brelse(bh);
dir->i_mtime = dir->i_ctime = current_time(dir); dir->i_mtime = dir->i_ctime = current_time(dir);
dir->i_version++; inode_inc_iversion(dir);
mark_inode_dirty(dir); mark_inode_dirty(dir);
return retval; return retval;

View File

@@ -14,6 +14,7 @@
* *
*/ */
#include <linux/iversion.h>
#include "affs.h" #include "affs.h"
static int affs_readdir(struct file *, struct dir_context *); static int affs_readdir(struct file *, struct dir_context *);
@@ -80,7 +81,7 @@ affs_readdir(struct file *file, struct dir_context *ctx)
* we can jump directly to where we left off. * we can jump directly to where we left off.
*/ */
ino = (u32)(long)file->private_data; ino = (u32)(long)file->private_data;
if (ino && file->f_version == inode->i_version) { if (ino && inode_cmp_iversion(inode, file->f_version) == 0) {
pr_debug("readdir() left off=%d\n", ino); pr_debug("readdir() left off=%d\n", ino);
goto inside; goto inside;
} }
@@ -130,7 +131,7 @@ inside:
} while (ino); } while (ino);
} }
done: done:
file->f_version = inode->i_version; file->f_version = inode_query_iversion(inode);
file->private_data = (void *)(long)ino; file->private_data = (void *)(long)ino;
affs_brelse(fh_bh); affs_brelse(fh_bh);

View File

@@ -21,6 +21,7 @@
#include <linux/writeback.h> #include <linux/writeback.h>
#include <linux/blkdev.h> #include <linux/blkdev.h>
#include <linux/seq_file.h> #include <linux/seq_file.h>
#include <linux/iversion.h>
#include "affs.h" #include "affs.h"
static int affs_statfs(struct dentry *dentry, struct kstatfs *buf); static int affs_statfs(struct dentry *dentry, struct kstatfs *buf);
@@ -102,7 +103,7 @@ static struct inode *affs_alloc_inode(struct super_block *sb)
if (!i) if (!i)
return NULL; return NULL;
i->vfs_inode.i_version = 1; inode_set_iversion(&i->vfs_inode, 1);
i->i_lc = NULL; i->i_lc = NULL;
i->i_ext_bh = NULL; i->i_ext_bh = NULL;
i->i_pa_cnt = 0; i->i_pa_cnt = 0;