diff --git a/fs/ext3/ialloc.c b/fs/ext3/ialloc.c index 1e6f3ea2871341f8a3fe64ae108f40dd0830bd13..6981bd014ede9f2dd6f7d902e1f2e890b1cee01f 100644 --- a/fs/ext3/ialloc.c +++ b/fs/ext3/ialloc.c @@ -604,12 +604,14 @@ struct inode *ext3_new_inode(handle_t *handle, struct inode * dir, int mode) err = ext3_init_acl(handle, inode, dir); if (err) { DQUOT_FREE_INODE(inode); + DQUOT_DROP(inode); goto fail2; } err = ext3_mark_inode_dirty(handle, inode); if (err) { ext3_std_error(sb, err); DQUOT_FREE_INODE(inode); + DQUOT_DROP(inode); goto fail2; }