+diff --git a/fs/ext4/super.c b/fs/ext4/super.c
+index 1ed737f..77e2fb3 100644
+--- a/fs/ext4/super.c
++++ b/fs/ext4/super.c
+@@ -4672,7 +4672,9 @@ static int ext4_release_dquot(struct dquot *dquot)
+ static int ext4_mark_dquot_dirty(struct dquot *dquot)
+ {
+ /* Are we journaling quotas? */
+- if (EXT4_SB(dquot->dq_sb)->s_qf_names[USRQUOTA] ||
++ if (EXT4_HAS_RO_COMPAT_FEATURE(dquot->dq_sb,
++ EXT4_FEATURE_RO_COMPAT_QUOTA) ||
++ EXT4_SB(dquot->dq_sb)->s_qf_names[USRQUOTA] ||
+ EXT4_SB(dquot->dq_sb)->s_qf_names[GRPQUOTA]) {
+ dquot_mark_dquot_dirty(dquot);
+ return ext4_write_dquot(dquot);