> > … > > +++ b/fs/exfat/dir.c > … > > +static int exfat_readdir(struct inode *inode, struct exfat_dir_entry > *dir_entry) > > +{ > … > > + if (!ep) { > > + ret = -EIO; > > + goto free_clu; > > + } > > How do you think about to move a bit of common exception handling code > (at similar places)? Not sure it is good. Other review comments are okay. Will fix them on v5. > > + if (!ep) > + goto e_io; > > > … > > +free_clu: > > + kfree(clu); > > + return ret; > > + > +e_io: > + ret = -EIO; > + goto free_clu; > > > +}