Re: [PATCH 7/9] gfs2: update ctime when quota is updated

From: Jeff Layton
Date: Wed Jul 05 2023 - 17:49:37 EST


On Wed, 2023-07-05 at 22:25 +0200, Andreas Gruenbacher wrote:
> On Mon, Jun 12, 2023 at 12:36 PM Jeff Layton <jlayton@xxxxxxxxxx> wrote:
> > On Fri, 2023-06-09 at 18:44 +0200, Andreas Gruenbacher wrote:
> > > Jeff,
> > >
> > > On Fri, Jun 9, 2023 at 2:50 PM Jeff Layton <jlayton@xxxxxxxxxx> wrote:
> > > > Signed-off-by: Jeff Layton <jlayton@xxxxxxxxxx>
> > > > ---
> > > > fs/gfs2/quota.c | 2 +-
> > > > 1 file changed, 1 insertion(+), 1 deletion(-)
> > > >
> > > > diff --git a/fs/gfs2/quota.c b/fs/gfs2/quota.c
> > > > index 1ed17226d9ed..6d283e071b90 100644
> > > > --- a/fs/gfs2/quota.c
> > > > +++ b/fs/gfs2/quota.c
> > > > @@ -869,7 +869,7 @@ static int gfs2_adjust_quota(struct gfs2_inode *ip, loff_t loc,
> > > > size = loc + sizeof(struct gfs2_quota);
> > > > if (size > inode->i_size)
> > > > i_size_write(inode, size);
> > > > - inode->i_mtime = inode->i_atime = current_time(inode);
> > > > + inode->i_mtime = inode->i_atime = inode->i_ctime = current_time(inode);
> > >
> > > I don't think we need to worry about the ctime of the quota inode as
> > > that inode is internal to the filesystem only.
> > >
> >
> > Thanks Andreas. I'll plan to drop this patch from the series for now.
> >
> > Does updating the mtime and atime here serve any purpose, or should
> > those also be removed? If you plan to keep the a/mtime updates then I'd
> > still suggest updating the ctime for consistency's sake. It shouldn't
> > cost anything extra to do so since you're dirtying the inode below
> > anyway.
>
> Yes, good point actually, we should keep things consistent for simplicity.
>
> Would you add this back in if you do another posting?
>

I just re-posted the other patches in this as part of the ctime accessor
conversion. If I post again though, I can resurrect the gfs2 patch. If
not, we can do a follow-on fix later.

Since we're discussing it, it may be more correct to remove the atime
update there. gfs2_adjust_quota sounds like a "modify" operation, not a
"read", so I don't see a reason to update the atime.

In general, the only time you only want to set the atime, ctime and
mtime in lockstep is when the inode is brand new.
--
Jeff Layton <jlayton@xxxxxxxxxx>