diff options
Diffstat (limited to 'fs/udf/ialloc.c')
| -rw-r--r-- | fs/udf/ialloc.c | 21 |
1 files changed, 1 insertions, 20 deletions
diff --git a/fs/udf/ialloc.c b/fs/udf/ialloc.c index 2b5586c7f02a..18cd7111185d 100644 --- a/fs/udf/ialloc.c +++ b/fs/udf/ialloc.c | |||
| @@ -20,7 +20,6 @@ | |||
| 20 | 20 | ||
| 21 | #include "udfdecl.h" | 21 | #include "udfdecl.h" |
| 22 | #include <linux/fs.h> | 22 | #include <linux/fs.h> |
| 23 | #include <linux/quotaops.h> | ||
| 24 | #include <linux/sched.h> | 23 | #include <linux/sched.h> |
| 25 | #include <linux/slab.h> | 24 | #include <linux/slab.h> |
| 26 | 25 | ||
| @@ -32,13 +31,6 @@ void udf_free_inode(struct inode *inode) | |||
| 32 | struct super_block *sb = inode->i_sb; | 31 | struct super_block *sb = inode->i_sb; |
| 33 | struct udf_sb_info *sbi = UDF_SB(sb); | 32 | struct udf_sb_info *sbi = UDF_SB(sb); |
| 34 | 33 | ||
| 35 | /* | ||
| 36 | * Note: we must free any quota before locking the superblock, | ||
| 37 | * as writing the quota to disk may need the lock as well. | ||
| 38 | */ | ||
| 39 | dquot_free_inode(inode); | ||
| 40 | dquot_drop(inode); | ||
| 41 | |||
| 42 | clear_inode(inode); | 34 | clear_inode(inode); |
| 43 | 35 | ||
| 44 | mutex_lock(&sbi->s_alloc_mutex); | 36 | mutex_lock(&sbi->s_alloc_mutex); |
| @@ -61,7 +53,7 @@ struct inode *udf_new_inode(struct inode *dir, int mode, int *err) | |||
| 61 | struct super_block *sb = dir->i_sb; | 53 | struct super_block *sb = dir->i_sb; |
| 62 | struct udf_sb_info *sbi = UDF_SB(sb); | 54 | struct udf_sb_info *sbi = UDF_SB(sb); |
| 63 | struct inode *inode; | 55 | struct inode *inode; |
| 64 | int block, ret; | 56 | int block; |
| 65 | uint32_t start = UDF_I(dir)->i_location.logicalBlockNum; | 57 | uint32_t start = UDF_I(dir)->i_location.logicalBlockNum; |
| 66 | struct udf_inode_info *iinfo; | 58 | struct udf_inode_info *iinfo; |
| 67 | struct udf_inode_info *dinfo = UDF_I(dir); | 59 | struct udf_inode_info *dinfo = UDF_I(dir); |
| @@ -146,17 +138,6 @@ struct inode *udf_new_inode(struct inode *dir, int mode, int *err) | |||
| 146 | insert_inode_hash(inode); | 138 | insert_inode_hash(inode); |
| 147 | mark_inode_dirty(inode); | 139 | mark_inode_dirty(inode); |
| 148 | 140 | ||
| 149 | dquot_initialize(inode); | ||
| 150 | ret = dquot_alloc_inode(inode); | ||
| 151 | if (ret) { | ||
| 152 | dquot_drop(inode); | ||
| 153 | inode->i_flags |= S_NOQUOTA; | ||
| 154 | inode->i_nlink = 0; | ||
| 155 | iput(inode); | ||
| 156 | *err = ret; | ||
| 157 | return NULL; | ||
| 158 | } | ||
| 159 | |||
| 160 | *err = 0; | 141 | *err = 0; |
| 161 | return inode; | 142 | return inode; |
| 162 | } | 143 | } |
