diff options
Diffstat (limited to 'fs')
-rw-r--r-- | fs/quota/dquot.c | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/fs/quota/dquot.c b/fs/quota/dquot.c index ed14beea8fe..1bc38f56fa7 100644 --- a/fs/quota/dquot.c +++ b/fs/quota/dquot.c | |||
@@ -1805,20 +1805,19 @@ int __dquot_transfer(struct inode *inode, struct dquot **transfer_to) | |||
1805 | 1805 | ||
1806 | mark_all_dquot_dirty(transfer_from); | 1806 | mark_all_dquot_dirty(transfer_from); |
1807 | mark_all_dquot_dirty(transfer_to); | 1807 | mark_all_dquot_dirty(transfer_to); |
1808 | flush_warnings(transfer_to, warntype_to); | ||
1809 | flush_warnings(transfer_from, warntype_from_inodes); | ||
1810 | flush_warnings(transfer_from, warntype_from_space); | ||
1808 | /* Pass back references to put */ | 1811 | /* Pass back references to put */ |
1809 | for (cnt = 0; cnt < MAXQUOTAS; cnt++) | 1812 | for (cnt = 0; cnt < MAXQUOTAS; cnt++) |
1810 | if (is_valid[cnt]) | 1813 | if (is_valid[cnt]) |
1811 | transfer_to[cnt] = transfer_from[cnt]; | 1814 | transfer_to[cnt] = transfer_from[cnt]; |
1812 | 1815 | return 0; | |
1813 | warn: | ||
1814 | flush_warnings(transfer_to, warntype_to); | ||
1815 | flush_warnings(transfer_from, warntype_from_inodes); | ||
1816 | flush_warnings(transfer_from, warntype_from_space); | ||
1817 | return ret; | ||
1818 | over_quota: | 1816 | over_quota: |
1819 | spin_unlock(&dq_data_lock); | 1817 | spin_unlock(&dq_data_lock); |
1820 | up_write(&sb_dqopt(inode->i_sb)->dqptr_sem); | 1818 | up_write(&sb_dqopt(inode->i_sb)->dqptr_sem); |
1821 | goto warn; | 1819 | flush_warnings(transfer_to, warntype_to); |
1820 | return ret; | ||
1822 | } | 1821 | } |
1823 | EXPORT_SYMBOL(__dquot_transfer); | 1822 | EXPORT_SYMBOL(__dquot_transfer); |
1824 | 1823 | ||