block_device
Regular
4.4
: ✅struct block_device {
dev_t bd_dev;
int bd_openers;
struct inode *bd_inode;
struct super_block *bd_super;
struct mutex bd_mutex;
struct list_head bd_inodes;
void *bd_claiming;
void *bd_holder;
int bd_holders;
bool bd_write_holder;
struct list_head bd_holder_disks;
struct block_device *bd_contains;
unsigned int bd_block_size;
struct hd_struct *bd_part;
unsigned int bd_part_count;
int bd_invalidated;
struct gendisk *bd_disk;
struct request_queue *bd_queue;
struct list_head bd_list;
long unsigned int bd_private;
int bd_fsfreeze_count;
struct mutex bd_fsfreeze_mutex;
};
4.8
: ✅struct block_device {
dev_t bd_dev;
int bd_openers;
struct inode *bd_inode;
struct super_block *bd_super;
struct mutex bd_mutex;
void *bd_claiming;
void *bd_holder;
int bd_holders;
bool bd_write_holder;
struct list_head bd_holder_disks;
struct block_device *bd_contains;
unsigned int bd_block_size;
struct hd_struct *bd_part;
unsigned int bd_part_count;
int bd_invalidated;
struct gendisk *bd_disk;
struct request_queue *bd_queue;
struct list_head bd_list;
long unsigned int bd_private;
int bd_fsfreeze_count;
struct mutex bd_fsfreeze_mutex;
};
4.10
: ✅struct block_device {
dev_t bd_dev;
int bd_openers;
struct inode *bd_inode;
struct super_block *bd_super;
struct mutex bd_mutex;
void *bd_claiming;
void *bd_holder;
int bd_holders;
bool bd_write_holder;
struct list_head bd_holder_disks;
struct block_device *bd_contains;
unsigned int bd_block_size;
struct hd_struct *bd_part;
unsigned int bd_part_count;
int bd_invalidated;
struct gendisk *bd_disk;
struct request_queue *bd_queue;
struct list_head bd_list;
long unsigned int bd_private;
int bd_fsfreeze_count;
struct mutex bd_fsfreeze_mutex;
};
4.13
: ✅struct block_device {
dev_t bd_dev;
int bd_openers;
struct inode *bd_inode;
struct super_block *bd_super;
struct mutex bd_mutex;
void *bd_claiming;
void *bd_holder;
int bd_holders;
bool bd_write_holder;
struct list_head bd_holder_disks;
struct block_device *bd_contains;
unsigned int bd_block_size;
struct hd_struct *bd_part;
unsigned int 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;
long unsigned int bd_private;
int bd_fsfreeze_count;
struct mutex bd_fsfreeze_mutex;
};
4.15
: ✅struct block_device {
dev_t bd_dev;
int bd_openers;
struct inode *bd_inode;
struct super_block *bd_super;
struct mutex bd_mutex;
void *bd_claiming;
void *bd_holder;
int bd_holders;
bool bd_write_holder;
struct list_head bd_holder_disks;
struct block_device *bd_contains;
unsigned int bd_block_size;
u8 bd_partno;
struct hd_struct *bd_part;
unsigned int 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;
long unsigned int bd_private;
int bd_fsfreeze_count;
struct mutex bd_fsfreeze_mutex;
};
4.18
: ✅struct block_device {
dev_t bd_dev;
int bd_openers;
struct inode *bd_inode;
struct super_block *bd_super;
struct mutex bd_mutex;
void *bd_claiming;
void *bd_holder;
int bd_holders;
bool bd_write_holder;
struct list_head bd_holder_disks;
struct block_device *bd_contains;
unsigned int bd_block_size;
u8 bd_partno;
struct hd_struct *bd_part;
unsigned int 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;
long unsigned int bd_private;
int bd_fsfreeze_count;
struct mutex bd_fsfreeze_mutex;
};
5.0
: ✅struct block_device {
dev_t bd_dev;
int bd_openers;
struct inode *bd_inode;
struct super_block *bd_super;
struct mutex bd_mutex;
void *bd_claiming;
void *bd_holder;
int bd_holders;
bool bd_write_holder;
struct list_head bd_holder_disks;
struct block_device *bd_contains;
unsigned int bd_block_size;
u8 bd_partno;
struct hd_struct *bd_part;
unsigned int 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;
long unsigned int bd_private;
int bd_fsfreeze_count;
struct mutex bd_fsfreeze_mutex;
};
5.3
: ✅struct block_device {
dev_t bd_dev;
int bd_openers;
struct inode *bd_inode;
struct super_block *bd_super;
struct mutex bd_mutex;
void *bd_claiming;
void *bd_holder;
int bd_holders;
bool bd_write_holder;
struct list_head bd_holder_disks;
struct block_device *bd_contains;
unsigned int bd_block_size;
u8 bd_partno;
struct hd_struct *bd_part;
unsigned int 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;
long unsigned int bd_private;
int bd_fsfreeze_count;
struct mutex bd_fsfreeze_mutex;
};
5.4
: ✅struct block_device {
dev_t bd_dev;
int bd_openers;
struct inode *bd_inode;
struct super_block *bd_super;
struct mutex bd_mutex;
void *bd_claiming;
void *bd_holder;
int bd_holders;
bool bd_write_holder;
struct list_head bd_holder_disks;
struct block_device *bd_contains;
unsigned int bd_block_size;
u8 bd_partno;
struct hd_struct *bd_part;
unsigned int 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;
long unsigned int bd_private;
int bd_fsfreeze_count;
struct mutex bd_fsfreeze_mutex;
};
5.8
: ✅struct block_device {
dev_t bd_dev;
int bd_openers;
struct inode *bd_inode;
struct super_block *bd_super;
struct mutex bd_mutex;
void *bd_claiming;
void *bd_holder;
int bd_holders;
bool bd_write_holder;
struct list_head bd_holder_disks;
struct block_device *bd_contains;
unsigned int bd_block_size;
u8 bd_partno;
struct hd_struct *bd_part;
unsigned int 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;
long unsigned int bd_private;
int bd_fsfreeze_count;
struct mutex bd_fsfreeze_mutex;
};
5.11
: ✅struct block_device {
sector_t bd_start_sect;
struct disk_stats *bd_stats;
long unsigned int bd_stamp;
bool bd_read_only;
dev_t bd_dev;
int bd_openers;
struct inode *bd_inode;
struct super_block *bd_super;
struct mutex bd_mutex;
void *bd_claiming;
struct device bd_device;
void *bd_holder;
int bd_holders;
bool bd_write_holder;
struct list_head bd_holder_disks;
struct kobject *bd_holder_dir;
u8 bd_partno;
unsigned int bd_part_count;
spinlock_t bd_size_lock;
struct gendisk *bd_disk;
struct backing_dev_info *bd_bdi;
int bd_fsfreeze_count;
struct mutex bd_fsfreeze_mutex;
struct super_block *bd_fsfreeze_sb;
struct partition_meta_info *bd_meta_info;
};
5.13
: ✅struct block_device {
sector_t bd_start_sect;
struct disk_stats *bd_stats;
long unsigned int bd_stamp;
bool bd_read_only;
dev_t bd_dev;
int bd_openers;
struct inode *bd_inode;
struct super_block *bd_super;
struct mutex bd_mutex;
void *bd_claiming;
struct device bd_device;
void *bd_holder;
int bd_holders;
bool bd_write_holder;
struct list_head bd_holder_disks;
struct kobject *bd_holder_dir;
u8 bd_partno;
unsigned int bd_part_count;
spinlock_t bd_size_lock;
struct gendisk *bd_disk;
struct backing_dev_info *bd_bdi;
int bd_fsfreeze_count;
struct mutex bd_fsfreeze_mutex;
struct super_block *bd_fsfreeze_sb;
struct partition_meta_info *bd_meta_info;
};
5.15
: ✅struct block_device {
sector_t bd_start_sect;
struct disk_stats *bd_stats;
long unsigned int bd_stamp;
bool bd_read_only;
dev_t bd_dev;
int bd_openers;
struct inode *bd_inode;
struct super_block *bd_super;
void *bd_claiming;
struct device bd_device;
void *bd_holder;
int bd_holders;
bool bd_write_holder;
struct kobject *bd_holder_dir;
u8 bd_partno;
spinlock_t bd_size_lock;
struct gendisk *bd_disk;
int bd_fsfreeze_count;
struct mutex bd_fsfreeze_mutex;
struct super_block *bd_fsfreeze_sb;
struct partition_meta_info *bd_meta_info;
};
5.19
: ✅struct block_device {
sector_t bd_start_sect;
sector_t bd_nr_sectors;
struct disk_stats *bd_stats;
long unsigned int bd_stamp;
bool bd_read_only;
dev_t bd_dev;
atomic_t bd_openers;
struct inode *bd_inode;
struct super_block *bd_super;
void *bd_claiming;
struct device bd_device;
void *bd_holder;
int bd_holders;
bool bd_write_holder;
struct kobject *bd_holder_dir;
u8 bd_partno;
spinlock_t bd_size_lock;
struct gendisk *bd_disk;
struct request_queue *bd_queue;
int bd_fsfreeze_count;
struct mutex bd_fsfreeze_mutex;
struct super_block *bd_fsfreeze_sb;
struct partition_meta_info *bd_meta_info;
};
6.2
: ✅struct block_device {
sector_t bd_start_sect;
sector_t bd_nr_sectors;
struct disk_stats *bd_stats;
long unsigned int bd_stamp;
bool bd_read_only;
dev_t bd_dev;
atomic_t bd_openers;
struct inode *bd_inode;
struct super_block *bd_super;
void *bd_claiming;
struct device bd_device;
void *bd_holder;
int bd_holders;
bool bd_write_holder;
struct kobject *bd_holder_dir;
u8 bd_partno;
spinlock_t bd_size_lock;
struct gendisk *bd_disk;
struct request_queue *bd_queue;
int bd_fsfreeze_count;
struct mutex bd_fsfreeze_mutex;
struct super_block *bd_fsfreeze_sb;
struct partition_meta_info *bd_meta_info;
};
6.5
: ✅struct block_device {
sector_t bd_start_sect;
sector_t bd_nr_sectors;
struct gendisk *bd_disk;
struct request_queue *bd_queue;
struct disk_stats *bd_stats;
long unsigned int bd_stamp;
bool bd_read_only;
u8 bd_partno;
bool bd_write_holder;
bool bd_has_submit_bio;
dev_t bd_dev;
atomic_t bd_openers;
spinlock_t bd_size_lock;
struct inode *bd_inode;
struct super_block *bd_super;
void *bd_claiming;
void *bd_holder;
const struct blk_holder_ops *bd_holder_ops;
struct mutex bd_holder_lock;
int bd_fsfreeze_count;
int bd_holders;
struct kobject *bd_holder_dir;
struct mutex bd_fsfreeze_mutex;
struct super_block *bd_fsfreeze_sb;
struct partition_meta_info *bd_meta_info;
struct device bd_device;
};
6.8
: ✅struct block_device {
sector_t bd_start_sect;
sector_t bd_nr_sectors;
struct gendisk *bd_disk;
struct request_queue *bd_queue;
struct disk_stats *bd_stats;
long unsigned int bd_stamp;
bool bd_read_only;
u8 bd_partno;
bool bd_write_holder;
bool bd_has_submit_bio;
dev_t bd_dev;
struct inode *bd_inode;
atomic_t bd_openers;
spinlock_t bd_size_lock;
void *bd_claiming;
void *bd_holder;
const struct blk_holder_ops *bd_holder_ops;
struct mutex bd_holder_lock;
int bd_holders;
struct kobject *bd_holder_dir;
atomic_t bd_fsfreeze_count;
struct mutex bd_fsfreeze_mutex;
struct partition_meta_info *bd_meta_info;
bool bd_ro_warned;
int bd_writers;
struct device bd_device;
};
arm64
: ✅struct block_device {
dev_t bd_dev;
int bd_openers;
struct inode *bd_inode;
struct super_block *bd_super;
struct mutex bd_mutex;
void *bd_claiming;
void *bd_holder;
int bd_holders;
bool bd_write_holder;
struct list_head bd_holder_disks;
struct block_device *bd_contains;
unsigned int bd_block_size;
u8 bd_partno;
struct hd_struct *bd_part;
unsigned int 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;
long unsigned int bd_private;
int bd_fsfreeze_count;
struct mutex bd_fsfreeze_mutex;
};
armhf
: ✅struct block_device {
dev_t bd_dev;
int bd_openers;
struct inode *bd_inode;
struct super_block *bd_super;
struct mutex bd_mutex;
void *bd_claiming;
void *bd_holder;
int bd_holders;
bool bd_write_holder;
struct list_head bd_holder_disks;
struct block_device *bd_contains;
unsigned int bd_block_size;
u8 bd_partno;
struct hd_struct *bd_part;
unsigned int 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;
long unsigned int bd_private;
int bd_fsfreeze_count;
struct mutex bd_fsfreeze_mutex;
};
ppc64el
: ✅struct block_device {
dev_t bd_dev;
int bd_openers;
struct inode *bd_inode;
struct super_block *bd_super;
struct mutex bd_mutex;
void *bd_claiming;
void *bd_holder;
int bd_holders;
bool bd_write_holder;
struct list_head bd_holder_disks;
struct block_device *bd_contains;
unsigned int bd_block_size;
u8 bd_partno;
struct hd_struct *bd_part;
unsigned int 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;
long unsigned int bd_private;
int bd_fsfreeze_count;
struct mutex bd_fsfreeze_mutex;
};
riscv64
: ✅struct block_device {
dev_t bd_dev;
int bd_openers;
struct inode *bd_inode;
struct super_block *bd_super;
struct mutex bd_mutex;
void *bd_claiming;
void *bd_holder;
int bd_holders;
bool bd_write_holder;
struct list_head bd_holder_disks;
struct block_device *bd_contains;
unsigned int bd_block_size;
u8 bd_partno;
struct hd_struct *bd_part;
unsigned int 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;
long unsigned int bd_private;
int bd_fsfreeze_count;
struct mutex bd_fsfreeze_mutex;
};
aws
: ✅struct block_device {
dev_t bd_dev;
int bd_openers;
struct inode *bd_inode;
struct super_block *bd_super;
struct mutex bd_mutex;
void *bd_claiming;
void *bd_holder;
int bd_holders;
bool bd_write_holder;
struct list_head bd_holder_disks;
struct block_device *bd_contains;
unsigned int bd_block_size;
u8 bd_partno;
struct hd_struct *bd_part;
unsigned int 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;
long unsigned int bd_private;
int bd_fsfreeze_count;
struct mutex bd_fsfreeze_mutex;
};
azure
: ✅struct block_device {
dev_t bd_dev;
int bd_openers;
struct inode *bd_inode;
struct super_block *bd_super;
struct mutex bd_mutex;
void *bd_claiming;
void *bd_holder;
int bd_holders;
bool bd_write_holder;
struct list_head bd_holder_disks;
struct block_device *bd_contains;
unsigned int bd_block_size;
u8 bd_partno;
struct hd_struct *bd_part;
unsigned int 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;
long unsigned int bd_private;
int bd_fsfreeze_count;
struct mutex bd_fsfreeze_mutex;
};
gcp
: ✅struct block_device {
dev_t bd_dev;
int bd_openers;
struct inode *bd_inode;
struct super_block *bd_super;
struct mutex bd_mutex;
void *bd_claiming;
void *bd_holder;
int bd_holders;
bool bd_write_holder;
struct list_head bd_holder_disks;
struct block_device *bd_contains;
unsigned int bd_block_size;
u8 bd_partno;
struct hd_struct *bd_part;
unsigned int 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;
long unsigned int bd_private;
int bd_fsfreeze_count;
struct mutex bd_fsfreeze_mutex;
};
lowlatency
: ✅struct block_device {
dev_t bd_dev;
int bd_openers;
struct inode *bd_inode;
struct super_block *bd_super;
struct mutex bd_mutex;
void *bd_claiming;
void *bd_holder;
int bd_holders;
bool bd_write_holder;
struct list_head bd_holder_disks;
struct block_device *bd_contains;
unsigned int bd_block_size;
u8 bd_partno;
struct hd_struct *bd_part;
unsigned int 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;
long unsigned int bd_private;
int bd_fsfreeze_count;
struct mutex bd_fsfreeze_mutex;
};
Regular
4.4
and 4.8
⚠️struct list_head bd_inodes
4.8
and 4.10
✅
4.10
and 4.13
⚠️struct backing_dev_info *bd_bdi
4.13
and 4.15
⚠️u8 bd_partno
4.15
and 4.18
✅
4.18
and 5.0
✅
5.0
and 5.3
✅
5.3
and 5.4
✅
5.4
and 5.8
✅
5.8
and 5.11
⚠️sector_t bd_start_sect
struct disk_stats *bd_stats
long unsigned int bd_stamp
bool bd_read_only
struct device bd_device
struct kobject *bd_holder_dir
spinlock_t bd_size_lock
struct super_block *bd_fsfreeze_sb
struct partition_meta_info *bd_meta_info
struct block_device *bd_contains
unsigned int bd_block_size
struct hd_struct *bd_part
int bd_invalidated
struct request_queue *bd_queue
struct list_head bd_list
long unsigned int bd_private
5.11
and 5.13
✅
5.13
and 5.15
⚠️struct mutex bd_mutex
struct list_head bd_holder_disks
unsigned int bd_part_count
struct backing_dev_info *bd_bdi
5.15
and 5.19
⚠️sector_t bd_nr_sectors
struct request_queue *bd_queue
int bd_openers
➡️ atomic_t bd_openers
5.19
and 6.2
✅
6.2
and 6.5
⚠️bool bd_has_submit_bio
const struct blk_holder_ops *bd_holder_ops
struct mutex bd_holder_lock
6.5
and 6.8
⚠️bool bd_ro_warned
int bd_writers
struct super_block *bd_super
struct super_block *bd_fsfreeze_sb
int bd_fsfreeze_count
➡️ atomic_t bd_fsfreeze_count
amd64
and arm64
✅
amd64
and armhf
✅
amd64
and ppc64el
✅
amd64
and riscv64
✅
generic
and aws
✅
generic
and azure
✅
generic
and gcp
✅
generic
and lowlatency
✅