Re: ctime set by truncate even if NOCMTIME requested

From: Miklos Szeredi
Date: Tue Sep 20 2005 - 07:22:28 EST


> > ATTR_MTIME is _only_ set in utime[s], which all filesystems want to
> > honor.
>
> ATTR_MTIME is set in both utimes and truncate.

Not in truncate:

int do_truncate(struct dentry *dentry, loff_t length)
{
/* ... */

newattrs.ia_size = length;
newattrs.ia_valid = ATTR_SIZE | ATTR_CTIME;

down(&dentry->d_inode->i_sem);
err = notify_change(dentry, &newattrs);
up(&dentry->d_inode->i_sem);
return err;
}

> As for ATTR_CTIME, that is also set in chown(), chmod(). It too can be
> optimised away for those operations, assuming that CIFS servers
> automatically update ctime.

Yes, I realized this shortly after posting.

Miklos
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/