diff options
Diffstat (limited to 'fs/hpfs/inode.c')
-rw-r--r-- | fs/hpfs/inode.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/fs/hpfs/inode.c b/fs/hpfs/inode.c index e3d17e9ea6c1..56f2c338c4d9 100644 --- a/fs/hpfs/inode.c +++ b/fs/hpfs/inode.c | |||
@@ -186,9 +186,9 @@ void hpfs_write_inode(struct inode *i) | |||
186 | kfree(hpfs_inode->i_rddir_off); | 186 | kfree(hpfs_inode->i_rddir_off); |
187 | hpfs_inode->i_rddir_off = NULL; | 187 | hpfs_inode->i_rddir_off = NULL; |
188 | } | 188 | } |
189 | down(&hpfs_inode->i_parent); | 189 | mutex_lock(&hpfs_inode->i_parent_mutex); |
190 | if (!i->i_nlink) { | 190 | if (!i->i_nlink) { |
191 | up(&hpfs_inode->i_parent); | 191 | mutex_unlock(&hpfs_inode->i_parent_mutex); |
192 | return; | 192 | return; |
193 | } | 193 | } |
194 | parent = iget_locked(i->i_sb, hpfs_inode->i_parent_dir); | 194 | parent = iget_locked(i->i_sb, hpfs_inode->i_parent_dir); |
@@ -199,14 +199,14 @@ void hpfs_write_inode(struct inode *i) | |||
199 | hpfs_read_inode(parent); | 199 | hpfs_read_inode(parent); |
200 | unlock_new_inode(parent); | 200 | unlock_new_inode(parent); |
201 | } | 201 | } |
202 | down(&hpfs_inode->i_sem); | 202 | mutex_lock(&hpfs_inode->i_mutex); |
203 | hpfs_write_inode_nolock(i); | 203 | hpfs_write_inode_nolock(i); |
204 | up(&hpfs_inode->i_sem); | 204 | mutex_unlock(&hpfs_inode->i_mutex); |
205 | iput(parent); | 205 | iput(parent); |
206 | } else { | 206 | } else { |
207 | mark_inode_dirty(i); | 207 | mark_inode_dirty(i); |
208 | } | 208 | } |
209 | up(&hpfs_inode->i_parent); | 209 | mutex_unlock(&hpfs_inode->i_parent_mutex); |
210 | } | 210 | } |
211 | 211 | ||
212 | void hpfs_write_inode_nolock(struct inode *i) | 212 | void hpfs_write_inode_nolock(struct inode *i) |