Yes. agree So we have two types of errors
1) expected errors: EDQUOT
2) fatal errors: (EIO/ENOSPC/ENOMEM)
So we need two types of flags:
1)FORCE (IMHO it is better name than you proposed) to allow exceed a
quota limit
2)NOFAIL to allow ignore fatal errors.
We still need NOFAIL, because for example if something is happens in
->write_page()
->dquot_claim()
update_quota() -> EIO /* update disk quota */
uptage_bytes() /* update i_bytes count */
It is obvious that write_page ...