Re: [patch] handle fs types with coarser granularity
Jeff Layton <[email protected]>
| Newsgroups | gmane.linux.file-systems.cifs |
|---|---|
| Message-ID | <[email protected]> |
On Wed, 13 Jan 2010 15:18:45 -0600 Shirish Pargaonkar <[email protected]> wrote: > force revalidate of the file when any of the timestamps are set for > filesytem type does not have finer granularity timestamps. > samba bugzilla 3775 > > > From 77d285ad59ebf163c2c3be2d0b4f6df1e4d19917 Mon Sep 17 00:00:00 2001 > From: Shirish Pargaonkar <[email protected]> > Date: Wed, 13 Jan 2010 15:06:34 -0600 > Subject: [PATCH] force revalidate to accomodate coarser granularity timestamps > > Signed-off-by: Shirish Pargaonkar <[email protected]> > --- > fs/cifs/inode.c | 14 ++++++++++++-- > 1 files changed, 12 insertions(+), 2 deletions(-) > > diff --git a/fs/cifs/inode.c b/fs/cifs/inode.c > index cf18ee7..7db26a5 100644 > --- a/fs/cifs/inode.c > +++ b/fs/cifs/inode.c > @@ -1762,8 +1762,18 @@ cifs_setattr_unix(struct dentry *direntry, > struct iattr *attrs) > CIFS_MOUNT_MAP_SPECIAL_CHR); > } > > - if (!rc) > - rc = inode_setattr(inode, attrs); > + if (rc) > + goto out; > + > + rc = inode_setattr(inode, attrs); > + > + /* > + * force revalidate when any of the times are set since some > + * of the fs types do not have finer granularity timestamps > + */ > + if ((!rc) && (attrs->ia_valid & (ATTR_ATIME | ATTR_MTIME | ATTR_CTIME))) ^^^^^ The extra parens around !rc aren't needed here. It'll be more readable without them. > + cifsInode->time = 0; > + > out: > kfree(args); > kfree(full_path); Other than the minor nit above... Acked-by: Jeff Layton <[email protected]>