summaryrefslogtreecommitdiffstats
path: root/fs/sysv/inode.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/sysv/inode.c')
-rw-r--r--fs/sysv/inode.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/fs/sysv/inode.c b/fs/sysv/inode.c
index 9ac81643b..e1d594f0b 100644
--- a/fs/sysv/inode.c
+++ b/fs/sysv/inode.c
@@ -61,9 +61,11 @@ void sysv_print_inode(struct inode * inode)
static void sysv_delete_inode(struct inode *inode)
{
+ lock_kernel();
inode->i_size = 0;
sysv_truncate(inode);
sysv_free_inode(inode);
+ unlock_kernel();
}
static void sysv_put_super(struct super_block *);
@@ -1156,8 +1158,10 @@ static struct buffer_head * sysv_update_inode(struct inode * inode)
void sysv_write_inode(struct inode * inode, int wait)
{
struct buffer_head *bh;
+ lock_kernel();
bh = sysv_update_inode(inode);
brelse(bh);
+ unlock_kernel();
}
int sysv_sync_inode(struct inode * inode)