block: remove i_bdev
[linux-2.6-microblaze.git] / fs / inode.c
index 72c4c34..cb008ac 100644 (file)
@@ -155,7 +155,6 @@ int inode_init_always(struct super_block *sb, struct inode *inode)
        inode->i_bytes = 0;
        inode->i_generation = 0;
        inode->i_pipe = NULL;
-       inode->i_bdev = NULL;
        inode->i_cdev = NULL;
        inode->i_link = NULL;
        inode->i_dir_seq = 0;
@@ -181,6 +180,8 @@ int inode_init_always(struct super_block *sb, struct inode *inode)
        mapping->a_ops = &empty_aops;
        mapping->host = inode;
        mapping->flags = 0;
+       if (sb->s_type->fs_flags & FS_THP_SUPPORT)
+               __set_bit(AS_THP_SUPPORT, &mapping->flags);
        mapping->wb_err = 0;
        atomic_set(&mapping->i_mmap_writable, 0);
 #ifdef CONFIG_READ_ONLY_THP_FOR_FS
@@ -578,8 +579,6 @@ static void evict(struct inode *inode)
                truncate_inode_pages_final(&inode->i_data);
                clear_inode(inode);
        }
-       if (S_ISBLK(inode->i_mode) && inode->i_bdev)
-               bd_forget(inode);
        if (S_ISCHR(inode->i_mode) && inode->i_cdev)
                cd_forget(inode);