I mentioned rmdir as an example.
However, this problem is not only with rmdirs.
VOL_DIRTY remains when some functions abort with an error.
In original, VOL_DIRTY is not cleared even if performe 'sync'.
With this patch, it ensures that VOL_DIRTY will be cleared by 'sync'.
Is my description insufficient?
I understood what you said. However, it is a natural result
when deleting the related code with EXFAT_SB_DIRTY flag.
So I thought it would be better to separate it into new problems
related to VOL_DIRTY-set under not real errors.
I see.
It seems that it is better to consider separately when consistency is corrupted and when it is kept.
BTW
Even with this patch applied, VOL_DIRTY remains until synced in the above
case.
It's not easy to reproduce as rmdir, but I'll try to fix it in the future.
I think it's not a problem not to clear VOL_DIRTY under real errors,
because VOL_DIRTY is just like a hint to note that write was not finished clearly.
If you mean there are more situation like ENOTEMPTY you mentioned,
please make new patch to fix them.
Hmm.
VOL_DIRTY is easily cleared by another write operation.
For that purpose, I think MediaFailure is more appropriate.
BR
---
Tetsuhiro Kohada <kohada.t2@xxxxxxxxx>