On Wednesday 15 January 2020 17:24:36 Namjae Jeon wrote: > This adds the implementation of inode operations for exfat. > > Signed-off-by: Namjae Jeon <namjae.jeon@xxxxxxxxxxx> > Signed-off-by: Sungjong Seo <sj1557.seo@xxxxxxxxxxx> > --- > fs/exfat/inode.c | 667 +++++++++++++++++++++ > fs/exfat/namei.c | 1442 ++++++++++++++++++++++++++++++++++++++++++++++ > 2 files changed, 2109 insertions(+) > create mode 100644 fs/exfat/inode.c > create mode 100644 fs/exfat/namei.c > ... > diff --git a/fs/exfat/namei.c b/fs/exfat/namei.c > new file mode 100644 > index 000000000000..7298de74e9b8 > --- /dev/null > +++ b/fs/exfat/namei.c ... > +/* lookup a file */ > +static int exfat_find(struct inode *dir, struct qstr *qname, > + struct exfat_dir_entry *info) > +{ ... > + > + exfat_get_entry_time(sbi, &info->ctime, > + ep->dentry.file.create_time, > + ep->dentry.file.create_date, > + ep->dentry.file.create_tz); Here is missing processing of create_time_ms. > + exfat_get_entry_time(sbi, &info->mtime, > + ep->dentry.file.modify_time, > + ep->dentry.file.modify_date, > + ep->dentry.file.modify_tz); And here modify_time_ms. > + exfat_get_entry_time(sbi, &info->atime, > + ep->dentry.file.access_time, > + ep->dentry.file.access_date, > + ep->dentry.file.access_tz); > + kfree(es); > + > + if (info->type == TYPE_DIR) { > + exfat_chain_set(&cdir, info->start_clu, > + EXFAT_B_TO_CLU(info->size, sbi), info->flags); > + count = exfat_count_dir_entries(sb, &cdir); > + if (count < 0) > + return -EIO; > + > + info->num_subdirs = count + EXFAT_MIN_SUBDIR; > + } > + } > + return 0; > +} -- Pali Rohár pali.rohar@xxxxxxxxx