block: move struct block_device to blk_types.h
Move the struct block_device definition together with most of the block layer definitions, as it has nothing to do with the rest of fs.h. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:

committed by
Jens Axboe

parent
1a4dcfa8bc
commit
621c1f4294
@@ -12,6 +12,7 @@
|
|||||||
#include <linux/slab.h>
|
#include <linux/slab.h>
|
||||||
#include <linux/statfs.h>
|
#include <linux/statfs.h>
|
||||||
#include <linux/user_namespace.h>
|
#include <linux/user_namespace.h>
|
||||||
|
#include <linux/blkdev.h>
|
||||||
#include "adfs.h"
|
#include "adfs.h"
|
||||||
#include "dir_f.h"
|
#include "dir_f.h"
|
||||||
#include "dir_fplus.h"
|
#include "dir_fplus.h"
|
||||||
|
@@ -22,6 +22,7 @@
|
|||||||
#include <linux/cred.h>
|
#include <linux/cred.h>
|
||||||
#include <linux/exportfs.h>
|
#include <linux/exportfs.h>
|
||||||
#include <linux/seq_file.h>
|
#include <linux/seq_file.h>
|
||||||
|
#include <linux/blkdev.h>
|
||||||
|
|
||||||
#include "befs.h"
|
#include "befs.h"
|
||||||
#include "btree.h"
|
#include "btree.h"
|
||||||
|
@@ -13,6 +13,7 @@
|
|||||||
#include <linux/slab.h>
|
#include <linux/slab.h>
|
||||||
#include <linux/buffer_head.h>
|
#include <linux/buffer_head.h>
|
||||||
#include <linux/vfs.h>
|
#include <linux/vfs.h>
|
||||||
|
#include <linux/blkdev.h>
|
||||||
|
|
||||||
#include "efs.h"
|
#include "efs.h"
|
||||||
#include <linux/efs_vh.h>
|
#include <linux/efs_vh.h>
|
||||||
|
@@ -36,6 +36,7 @@
|
|||||||
|
|
||||||
#include <linux/fs.h>
|
#include <linux/fs.h>
|
||||||
#include <linux/buffer_head.h>
|
#include <linux/buffer_head.h>
|
||||||
|
#include <linux/blkdev.h>
|
||||||
|
|
||||||
#include "jfs_incore.h"
|
#include "jfs_incore.h"
|
||||||
#include "jfs_filsys.h"
|
#include "jfs_filsys.h"
|
||||||
|
@@ -6,6 +6,7 @@
|
|||||||
#include <linux/fs.h>
|
#include <linux/fs.h>
|
||||||
#include <linux/buffer_head.h>
|
#include <linux/buffer_head.h>
|
||||||
#include <linux/quotaops.h>
|
#include <linux/quotaops.h>
|
||||||
|
#include <linux/blkdev.h>
|
||||||
#include "jfs_incore.h"
|
#include "jfs_incore.h"
|
||||||
#include "jfs_filsys.h"
|
#include "jfs_filsys.h"
|
||||||
#include "jfs_metapage.h"
|
#include "jfs_metapage.h"
|
||||||
|
@@ -14,12 +14,49 @@ struct bio_set;
|
|||||||
struct bio;
|
struct bio;
|
||||||
struct bio_integrity_payload;
|
struct bio_integrity_payload;
|
||||||
struct page;
|
struct page;
|
||||||
struct block_device;
|
|
||||||
struct io_context;
|
struct io_context;
|
||||||
struct cgroup_subsys_state;
|
struct cgroup_subsys_state;
|
||||||
typedef void (bio_end_io_t) (struct bio *);
|
typedef void (bio_end_io_t) (struct bio *);
|
||||||
struct bio_crypt_ctx;
|
struct bio_crypt_ctx;
|
||||||
|
|
||||||
|
struct block_device {
|
||||||
|
dev_t bd_dev; /* not a kdev_t - it's a search key */
|
||||||
|
int bd_openers;
|
||||||
|
struct inode * bd_inode; /* will die */
|
||||||
|
struct super_block * bd_super;
|
||||||
|
struct mutex bd_mutex; /* open/close mutex */
|
||||||
|
void * bd_claiming;
|
||||||
|
void * bd_holder;
|
||||||
|
int bd_holders;
|
||||||
|
bool bd_write_holder;
|
||||||
|
#ifdef CONFIG_SYSFS
|
||||||
|
struct list_head bd_holder_disks;
|
||||||
|
#endif
|
||||||
|
struct block_device * bd_contains;
|
||||||
|
unsigned bd_block_size;
|
||||||
|
u8 bd_partno;
|
||||||
|
struct hd_struct * bd_part;
|
||||||
|
/* number of times partitions within this device have been opened. */
|
||||||
|
unsigned bd_part_count;
|
||||||
|
int bd_invalidated;
|
||||||
|
struct gendisk * bd_disk;
|
||||||
|
struct request_queue * bd_queue;
|
||||||
|
struct backing_dev_info *bd_bdi;
|
||||||
|
struct list_head bd_list;
|
||||||
|
/*
|
||||||
|
* Private data. You must have bd_claim'ed the block_device
|
||||||
|
* to use this. NOTE: bd_claim allows an owner to claim
|
||||||
|
* the same device multiple times, the owner must take special
|
||||||
|
* care to not mess up bd_private for that case.
|
||||||
|
*/
|
||||||
|
unsigned long bd_private;
|
||||||
|
|
||||||
|
/* The counter of freeze processes */
|
||||||
|
int bd_fsfreeze_count;
|
||||||
|
/* Mutex for freeze */
|
||||||
|
struct mutex bd_fsfreeze_mutex;
|
||||||
|
} __randomize_layout;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Block error status values. See block/blk-core:blk_errors for the details.
|
* Block error status values. See block/blk-core:blk_errors for the details.
|
||||||
* Alpha cannot write a byte atomically, so we need to use 32-bit value.
|
* Alpha cannot write a byte atomically, so we need to use 32-bit value.
|
||||||
|
@@ -1930,6 +1930,7 @@ void bd_abort_claiming(struct block_device *bdev, struct block_device *whole,
|
|||||||
void *holder);
|
void *holder);
|
||||||
void blkdev_put(struct block_device *bdev, fmode_t mode);
|
void blkdev_put(struct block_device *bdev, fmode_t mode);
|
||||||
|
|
||||||
|
struct block_device *I_BDEV(struct inode *inode);
|
||||||
struct block_device *bdget(dev_t);
|
struct block_device *bdget(dev_t);
|
||||||
struct block_device *bdgrab(struct block_device *bdev);
|
struct block_device *bdgrab(struct block_device *bdev);
|
||||||
void bdput(struct block_device *);
|
void bdput(struct block_device *);
|
||||||
|
@@ -4,6 +4,8 @@
|
|||||||
|
|
||||||
#include <asm/dasd.h>
|
#include <asm/dasd.h>
|
||||||
|
|
||||||
|
struct gendisk;
|
||||||
|
|
||||||
extern int dasd_biodasdinfo(struct gendisk *disk, dasd_information2_t *info);
|
extern int dasd_biodasdinfo(struct gendisk *disk, dasd_information2_t *info);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@@ -470,45 +470,6 @@ struct address_space {
|
|||||||
* must be enforced here for CRIS, to let the least significant bit
|
* must be enforced here for CRIS, to let the least significant bit
|
||||||
* of struct page's "mapping" pointer be used for PAGE_MAPPING_ANON.
|
* of struct page's "mapping" pointer be used for PAGE_MAPPING_ANON.
|
||||||
*/
|
*/
|
||||||
struct request_queue;
|
|
||||||
|
|
||||||
struct block_device {
|
|
||||||
dev_t bd_dev; /* not a kdev_t - it's a search key */
|
|
||||||
int bd_openers;
|
|
||||||
struct inode * bd_inode; /* will die */
|
|
||||||
struct super_block * bd_super;
|
|
||||||
struct mutex bd_mutex; /* open/close mutex */
|
|
||||||
void * bd_claiming;
|
|
||||||
void * bd_holder;
|
|
||||||
int bd_holders;
|
|
||||||
bool bd_write_holder;
|
|
||||||
#ifdef CONFIG_SYSFS
|
|
||||||
struct list_head bd_holder_disks;
|
|
||||||
#endif
|
|
||||||
struct block_device * bd_contains;
|
|
||||||
unsigned bd_block_size;
|
|
||||||
u8 bd_partno;
|
|
||||||
struct hd_struct * bd_part;
|
|
||||||
/* number of times partitions within this device have been opened. */
|
|
||||||
unsigned bd_part_count;
|
|
||||||
int bd_invalidated;
|
|
||||||
struct gendisk * bd_disk;
|
|
||||||
struct request_queue * bd_queue;
|
|
||||||
struct backing_dev_info *bd_bdi;
|
|
||||||
struct list_head bd_list;
|
|
||||||
/*
|
|
||||||
* Private data. You must have bd_claim'ed the block_device
|
|
||||||
* to use this. NOTE: bd_claim allows an owner to claim
|
|
||||||
* the same device multiple times, the owner must take special
|
|
||||||
* care to not mess up bd_private for that case.
|
|
||||||
*/
|
|
||||||
unsigned long bd_private;
|
|
||||||
|
|
||||||
/* The counter of freeze processes */
|
|
||||||
int bd_fsfreeze_count;
|
|
||||||
/* Mutex for freeze */
|
|
||||||
struct mutex bd_fsfreeze_mutex;
|
|
||||||
} __randomize_layout;
|
|
||||||
|
|
||||||
/* XArray tags, for tagging dirty and writeback pages in the pagecache. */
|
/* XArray tags, for tagging dirty and writeback pages in the pagecache. */
|
||||||
#define PAGECACHE_TAG_DIRTY XA_MARK_0
|
#define PAGECACHE_TAG_DIRTY XA_MARK_0
|
||||||
@@ -907,8 +868,6 @@ static inline unsigned imajor(const struct inode *inode)
|
|||||||
return MAJOR(inode->i_rdev);
|
return MAJOR(inode->i_rdev);
|
||||||
}
|
}
|
||||||
|
|
||||||
extern struct block_device *I_BDEV(struct inode *inode);
|
|
||||||
|
|
||||||
struct fown_struct {
|
struct fown_struct {
|
||||||
rwlock_t lock; /* protects pid, uid, euid fields */
|
rwlock_t lock; /* protects pid, uid, euid fields */
|
||||||
struct pid *pid; /* pid or -pgrp where SIGIO should be sent */
|
struct pid *pid; /* pid or -pgrp where SIGIO should be sent */
|
||||||
|
Reference in New Issue
Block a user