On Mon 15-07-24 08:48:56, Jeff Layton wrote: > Add a high-level document that describes how multigrain timestamps work, > rationale for them, and some info about implementation and tradeoffs. > > Reviewed-by: Josef Bacik <josef@xxxxxxxxxxxxxx> > Signed-off-by: Jeff Layton <jlayton@xxxxxxxxxx> One comment below. With that fixed feel free to add: Reviewed-by: Jan Kara <jack@xxxxxxx> > +Implementation Notes > +==================== > +Multigrain timestamps are intended for use by local filesystems that get > +ctime values from the local clock. This is in contrast to network filesystems > +and the like that just mirror timestamp values from a server. > + > +For most filesystems, it's sufficient to just set the FS_MGTIME flag in the > +fstype->fs_flags in order to opt-in, providing the ctime is only ever set via > +inode_set_ctime_current(). If the filesystem has a ->getattr routine that > +doesn't call generic_fillattr, then you should have it call fill_mg_cmtime to > +fill those values. I think you should explicitely mention that ->setattr() implementation needs to use setattr_copy() or otherwise mimic its behavior... Honza -- Jan Kara <jack@xxxxxxxx> SUSE Labs, CR