Move the i_bdev pointer in struct inode into a union.
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
        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)
                cd_forget(inode);
 
        struct list_head        i_devices;
        union {
                struct pipe_inode_info  *i_pipe;
+               struct block_device     *i_bdev;
        };
-       struct block_device     *i_bdev;
        struct cdev             *i_cdev;
        int                     i_cindex;