FAQ Search Today's Posts Mark Forums Read
» Video Reviews

» Linux Archive

Linux-archive is a website aiming to archive linux email lists and to make them easily accessible for linux users/developers.


» Sponsor

» Partners

» Sponsor

Go Back   Linux Archive > Redhat > Cluster Development

 
 
LinkBack Thread Tools
 
Old 03-13-2012, 04:55 PM
Bob Peterson
 
Default GFS2: attempt to access beyond end of device creating file

Hi,

This patch initializes the hash table cache when inodes are
created in order to prevent using a hash table pointer left over
from a previous inode. It also adds boundary checking on the
hash table.

Regards,

Bob Peterson
Red Hat File Systems

Signed-off-by: Bob Peterson <rpeterso@redhat.com>
--
diff --git a/fs/gfs2/dir.c b/fs/gfs2/dir.c
index c35573a..c2eb20f 100644
--- a/fs/gfs2/dir.c
+++ b/fs/gfs2/dir.c
@@ -740,6 +740,7 @@ static int get_leaf_nr(struct gfs2_inode *dip, u32 index,
hash = gfs2_dir_get_hash_table(dip);
if (IS_ERR(hash))
return PTR_ERR(hash);
+ BUG_ON(index >= (1 << dip->i_depth));
*leaf_out = be64_to_cpu(*(hash + index));
return 0;
}
diff --git a/fs/gfs2/super.c b/fs/gfs2/super.c
index 6172fa7..bd2abe3 100644
--- a/fs/gfs2/super.c
+++ b/fs/gfs2/super.c
@@ -1576,6 +1576,7 @@ static struct inode *gfs2_alloc_inode(struct super_block *sb)
ip->i_flags = 0;
ip->i_gl = NULL;
ip->i_rgd = NULL;
+ ip->i_hash_cache = NULL;
}
return &ip->i_inode;
}
 

Thread Tools




All times are GMT. The time now is 12:24 PM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.
Copyright 2007 - 2008, www.linux-archive.org