]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - fs/inode.c
[PATCH] fix wrong error code on interrupted close syscalls
[mv-sheeva.git] / fs / inode.c
index 41b462232f7f39638f033b52ce2f23f385f607db..abf77471e6c4a68701421dc6df6994de6e7000eb 100644 (file)
@@ -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)
@@ -256,7 +255,7 @@ void clear_inode(struct inode *inode)
                inode->i_sb->s_op->clear_inode(inode);
        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;
 }