X-Git-Url: https://git.karo-electronics.de/?a=blobdiff_plain;f=fs%2Finode.c;h=abf77471e6c4a68701421dc6df6994de6e7000eb;hb=ee731f4f7880b09ca147008ab46ad4e5f72cb8bf;hp=0bf9f0444a964bb5398e50a533a5a942eb701eae;hpb=075395d228641646159dae3dd170fa3fc6ff477a;p=mv-sheeva.git diff --git a/fs/inode.c b/fs/inode.c index 0bf9f0444a9..abf77471e6c 100644 --- a/fs/inode.c +++ b/fs/inode.c @@ -133,7 +133,6 @@ static struct inode *alloc_inode(struct super_block *sb) inode->i_bdev = NULL; inode->i_cdev = NULL; inode->i_rdev = 0; - inode->i_security = NULL; inode->dirtied_when = 0; if (security_inode_alloc(inode)) { if (inode->i_sb->s_op->destroy_inode) @@ -163,7 +162,7 @@ static struct inode *alloc_inode(struct super_block *sb) bdi = sb->s_bdev->bd_inode->i_mapping->backing_dev_info; mapping->backing_dev_info = bdi; } - memset(&inode->u, 0, sizeof(inode->u)); + inode->i_private = 0; inode->i_mapping = mapping; } return inode; @@ -254,9 +253,9 @@ void clear_inode(struct inode *inode) DQUOT_DROP(inode); if (inode->i_sb && inode->i_sb->s_op->clear_inode) inode->i_sb->s_op->clear_inode(inode); - if (inode->i_bdev) + if (S_ISBLK(inode->i_mode) && inode->i_bdev) bd_forget(inode); - if (inode->i_cdev) + if (S_ISCHR(inode->i_mode) && inode->i_cdev) cd_forget(inode); inode->i_state = I_CLEAR; }