> > remove EXFAT_SB_DIRTY flag and related codes. > > > > This flag is set/reset in exfat_put_super()/exfat_sync_fs() to avoid > > sync_blockdev(). > > However ... > > - exfat_put_super(): > > Before calling this, the VFS has already called sync_filesystem(), so > > sync is never performed here. > > - exfat_sync_fs(): > > After calling this, the VFS calls sync_blockdev(), so, it is > > meaningless to check EXFAT_SB_DIRTY or to bypass sync_blockdev() here. > > Not only that, but in some cases can't clear VOL_DIRTY. > > ex: > > VOL_DIRTY is set when rmdir starts, but when non-empty-dir is > > detected, return error without setting EXFAT_SB_DIRTY. > > If performe 'sync' in this state, VOL_DIRTY will not be cleared. > > > > Since this patch does not resolve 'VOL_DIRTY in ENOTEMPTY' problem you mentioned, it would be better > to remove the description above for that and to make new patch. > > > Remove the EXFAT_SB_DIRTY check to ensure synchronization. > > And, remove the code related to the flag. > > > > Signed-off-by: Tetsuhiro Kohada <kohada.t2@xxxxxxxxx> > > Reviewed-by: Sungjong Seo <sj1557.seo@xxxxxxxxxxx> Applied. Thanks!