mirror of https://gitee.com/openkylin/linux.git
ext3: Remove unnecessary quota functions
ext3_dquot_initialize() and ext3_dquot_drop() is no longer needed because of modified quota locking. Signed-off-by: Jan Kara <jack@suse.cz>
This commit is contained in:
parent
08d0350ce9
commit
a219ce3748
|
@ -707,8 +707,6 @@ static int bdev_try_to_free_page(struct super_block *sb, struct page *page,
|
|||
#define QTYPE2NAME(t) ((t)==USRQUOTA?"user":"group")
|
||||
#define QTYPE2MOPT(on, t) ((t)==USRQUOTA?((on)##USRJQUOTA):((on)##GRPJQUOTA))
|
||||
|
||||
static int ext3_dquot_initialize(struct inode *inode, int type);
|
||||
static int ext3_dquot_drop(struct inode *inode);
|
||||
static int ext3_write_dquot(struct dquot *dquot);
|
||||
static int ext3_acquire_dquot(struct dquot *dquot);
|
||||
static int ext3_release_dquot(struct dquot *dquot);
|
||||
|
@ -723,8 +721,8 @@ static ssize_t ext3_quota_write(struct super_block *sb, int type,
|
|||
const char *data, size_t len, loff_t off);
|
||||
|
||||
static struct dquot_operations ext3_quota_operations = {
|
||||
.initialize = ext3_dquot_initialize,
|
||||
.drop = ext3_dquot_drop,
|
||||
.initialize = dquot_initialize,
|
||||
.drop = dquot_drop,
|
||||
.alloc_space = dquot_alloc_space,
|
||||
.alloc_inode = dquot_alloc_inode,
|
||||
.free_space = dquot_free_space,
|
||||
|
@ -2714,44 +2712,6 @@ static inline struct inode *dquot_to_inode(struct dquot *dquot)
|
|||
return sb_dqopt(dquot->dq_sb)->files[dquot->dq_type];
|
||||
}
|
||||
|
||||
static int ext3_dquot_initialize(struct inode *inode, int type)
|
||||
{
|
||||
handle_t *handle;
|
||||
int ret, err;
|
||||
|
||||
/* We may create quota structure so we need to reserve enough blocks */
|
||||
handle = ext3_journal_start(inode, 2*EXT3_QUOTA_INIT_BLOCKS(inode->i_sb));
|
||||
if (IS_ERR(handle))
|
||||
return PTR_ERR(handle);
|
||||
ret = dquot_initialize(inode, type);
|
||||
err = ext3_journal_stop(handle);
|
||||
if (!ret)
|
||||
ret = err;
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int ext3_dquot_drop(struct inode *inode)
|
||||
{
|
||||
handle_t *handle;
|
||||
int ret, err;
|
||||
|
||||
/* We may delete quota structure so we need to reserve enough blocks */
|
||||
handle = ext3_journal_start(inode, 2*EXT3_QUOTA_DEL_BLOCKS(inode->i_sb));
|
||||
if (IS_ERR(handle)) {
|
||||
/*
|
||||
* We call dquot_drop() anyway to at least release references
|
||||
* to quota structures so that umount does not hang.
|
||||
*/
|
||||
dquot_drop(inode);
|
||||
return PTR_ERR(handle);
|
||||
}
|
||||
ret = dquot_drop(inode);
|
||||
err = ext3_journal_stop(handle);
|
||||
if (!ret)
|
||||
ret = err;
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int ext3_write_dquot(struct dquot *dquot)
|
||||
{
|
||||
int ret, err;
|
||||
|
|
Loading…
Reference in New Issue