From: Jeff Layton <jlayton-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
To: linux-fsdevel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Cc: linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
viro-RmSDqhL/yNMiFSDQTTA3OLVCufUGDwFn@public.gmane.org,
linux-nfs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
bfields-uC3wQj2KruNg9hUCZPvPmw@public.gmane.org,
neilb-l3A5Bk7waGM@public.gmane.org,
jack-l3A5Bk7waGM@public.gmane.org,
linux-ext4-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
tytso-3s7WtUTddSA@public.gmane.org,
adilger.kernel-m1MBpc4rdrD3fQ9qLvQP4Q@public.gmane.org,
linux-xfs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
darrick.wong-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org,
david-FqsqvQoI3Ljby3iVrkZq2A@public.gmane.org,
linux-btrfs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
clm-b10kYP2dOMg@public.gmane.org,
jbacik-b10kYP2dOMg@public.gmane.org,
dsterba-IBi9RG/b67k@public.gmane.org,
linux-integrity-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
zohar-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org,
dmitry.kasatkin-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org,
linux-afs-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org,
dhowells-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org
Subject: Re: [PATCH v2 05/19] afs: convert to new i_version API
Date: Sat, 16 Dec 2017 08:49:46 -0500 [thread overview]
Message-ID: <1513432186.3428.6.camel@kernel.org> (raw)
In-Reply-To: <20171216134656.15561-6-jlayton-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
On Sat, 2017-12-16 at 08:46 -0500, Jeff Layton wrote:
> From: Jeff Layton <jlayton-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
>
> For AFS, it's generally treated as an opaque value, so we use the
> *_raw variants of the API here.
>
> Note that AFS has quite a different definition for this counter. AFS
> only increments it on changes to the data, not for the metadata. We'll
> need to reconcile that somehow if we ever want to present this to
> userspace via statx.
>
> Signed-off-by: Jeff Layton <jlayton-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
> ---
> fs/afs/fsclient.c | 2 +-
> fs/afs/inode.c | 4 ++--
> 2 files changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/fs/afs/fsclient.c b/fs/afs/fsclient.c
> index b90ef39ae914..67ed9bb5fe31 100644
> --- a/fs/afs/fsclient.c
> +++ b/fs/afs/fsclient.c
> @@ -124,7 +124,7 @@ static void xdr_decode_AFSFetchStatus(const __be32 **_bp,
> vnode->vfs_inode.i_ctime.tv_sec = status->mtime_client;
> vnode->vfs_inode.i_mtime = vnode->vfs_inode.i_ctime;
> vnode->vfs_inode.i_atime = vnode->vfs_inode.i_ctime;
> - vnode->vfs_inode.i_version = data_version;
> + inode_set_iversion_raw(&vnode->vfs_inode, data_version);
> }
>
> expected_version = status->data_version;
> diff --git a/fs/afs/inode.c b/fs/afs/inode.c
> index 3415eb7484f6..af9577210a46 100644
> --- a/fs/afs/inode.c
> +++ b/fs/afs/inode.c
> @@ -89,7 +89,7 @@ static int afs_inode_map_status(struct afs_vnode *vnode, struct key *key)
> inode->i_atime = inode->i_mtime = inode->i_ctime;
> inode->i_blocks = 0;
> inode->i_generation = vnode->fid.unique;
> - inode->i_version = vnode->status.data_version;
> + inode_set_iversion_raw(inode, vnode->status.data_version);
> inode->i_mapping->a_ops = &afs_fs_aops;
>
> read_sequnlock_excl(&vnode->cb_lock);
> @@ -218,7 +218,7 @@ struct inode *afs_iget_autocell(struct inode *dir, const char *dev_name,
> inode->i_ctime.tv_nsec = 0;
> inode->i_atime = inode->i_mtime = inode->i_ctime;
> inode->i_blocks = 0;
> - inode->i_version = 0;
> + inode_set_iversion_raw(inode, 0);
> inode->i_generation = 0;
>
> set_bit(AFS_VNODE_PSEUDODIR, &vnode->flags);
TBH, we could just remove the i_version handling here. Nothing ever
looks at the i_version field in AFS inodes.
--
Jeff Layton <jlayton-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2017-12-16 13:49 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-12-16 13:46 [PATCH v2 00/19] fs: rework and optimize i_version handling in filesystems Jeff Layton
2017-12-16 13:46 ` [PATCH v2 01/19] fs: new API for handling inode->i_version Jeff Layton
2017-12-16 22:37 ` Dave Chinner
2017-12-17 1:05 ` Jeff Layton
2017-12-16 13:46 ` [PATCH v2 02/19] fs: don't take the i_lock in inode_inc_iversion Jeff Layton
2017-12-16 13:46 ` [PATCH v2 03/19] fat: convert to new i_version API Jeff Layton
2017-12-16 13:46 ` [PATCH v2 04/19] affs: " Jeff Layton
2017-12-16 13:46 ` [PATCH v2 05/19] afs: " Jeff Layton
[not found] ` <20171216134656.15561-6-jlayton-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
2017-12-16 13:49 ` Jeff Layton [this message]
2017-12-16 16:18 ` Jeffrey Altman
2017-12-16 16:40 ` Jeff Layton
2017-12-16 13:46 ` [PATCH v2 06/19] btrfs: " Jeff Layton
2017-12-16 13:46 ` [PATCH v2 07/19] exofs: switch " Jeff Layton
2017-12-16 13:46 ` [PATCH v2 08/19] ext2: convert " Jeff Layton
2017-12-16 13:46 ` [PATCH v2 09/19] ext4: " Jeff Layton
2017-12-16 13:46 ` [PATCH v2 10/19] nfs: " Jeff Layton
2017-12-16 13:46 ` [PATCH v2 11/19] nfsd: " Jeff Layton
2017-12-16 13:46 ` [PATCH v2 12/19] ocfs2: " Jeff Layton
2017-12-16 13:46 ` [PATCH v2 13/19] ufs: use " Jeff Layton
2017-12-16 13:46 ` [PATCH v2 14/19] xfs: convert to " Jeff Layton
2017-12-16 13:46 ` [PATCH v2 15/19] IMA: switch IMA over " Jeff Layton
2017-12-16 13:46 ` [PATCH v2 16/19] fs: only set S_VERSION when updating times if necessary Jeff Layton
2017-12-16 13:46 ` [PATCH v2 17/19] xfs: avoid setting XFS_ILOG_CORE if i_version doesn't need incrementing Jeff Layton
2017-12-16 13:46 ` [PATCH v2 18/19] btrfs: only dirty the inode in btrfs_update_time if something was changed Jeff Layton
2017-12-16 13:46 ` [PATCH v2 19/19] fs: handle inode->i_version more efficiently Jeff Layton
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1513432186.3428.6.camel@kernel.org \
--to=jlayton-dgejt+ai2ygdnm+yrofe0a@public.gmane.org \
--cc=adilger.kernel-m1MBpc4rdrD3fQ9qLvQP4Q@public.gmane.org \
--cc=bfields-uC3wQj2KruNg9hUCZPvPmw@public.gmane.org \
--cc=clm-b10kYP2dOMg@public.gmane.org \
--cc=darrick.wong-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org \
--cc=david-FqsqvQoI3Ljby3iVrkZq2A@public.gmane.org \
--cc=dhowells-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
--cc=dmitry.kasatkin-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
--cc=dsterba-IBi9RG/b67k@public.gmane.org \
--cc=jack-l3A5Bk7waGM@public.gmane.org \
--cc=jbacik-b10kYP2dOMg@public.gmane.org \
--cc=linux-afs-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \
--cc=linux-btrfs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-ext4-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-fsdevel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-integrity-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-nfs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-xfs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=neilb-l3A5Bk7waGM@public.gmane.org \
--cc=tytso-3s7WtUTddSA@public.gmane.org \
--cc=viro-RmSDqhL/yNMiFSDQTTA3OLVCufUGDwFn@public.gmane.org \
--cc=zohar-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).