diff options
author | Ralf Baechle <ralf@linux-mips.org> | 2000-02-24 00:12:35 +0000 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2000-02-24 00:12:35 +0000 |
commit | 482368b1a8e45430672c58c9a42e7d2004367126 (patch) | |
tree | ce2a1a567d4d62dee7c2e71a46a99cf72cf1d606 /fs/ext2 | |
parent | e4d0251c6f56ab2e191afb70f80f382793e23f74 (diff) |
Merge with 2.3.47. Guys, this is buggy as shit. You've been warned.
Diffstat (limited to 'fs/ext2')
-rw-r--r-- | fs/ext2/inode.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/fs/ext2/inode.c b/fs/ext2/inode.c index ab7ac0a96..a520ab40f 100644 --- a/fs/ext2/inode.c +++ b/fs/ext2/inode.c @@ -35,7 +35,9 @@ static int ext2_update_inode(struct inode * inode, int do_sync); */ void ext2_put_inode (struct inode * inode) { + lock_kernel(); ext2_discard_prealloc (inode); + unlock_kernel(); } /* @@ -43,6 +45,8 @@ void ext2_put_inode (struct inode * inode) */ void ext2_delete_inode (struct inode * inode) { + lock_kernel(); + if (is_bad_inode(inode) || inode->i_ino == EXT2_ACL_IDX_INO || inode->i_ino == EXT2_ACL_DATA_INO) @@ -54,6 +58,8 @@ void ext2_delete_inode (struct inode * inode) if (inode->i_blocks) ext2_truncate (inode); ext2_free_inode (inode); + + unlock_kernel(); } #define inode_bmap(inode, nr) (le32_to_cpu((inode)->u.ext2_i.i_data[(nr)])) @@ -893,7 +899,9 @@ static int ext2_update_inode(struct inode * inode, int do_sync) void ext2_write_inode (struct inode * inode) { + lock_kernel(); ext2_update_inode (inode, 0); + unlock_kernel(); } int ext2_sync_inode (struct inode *inode) |