Lines Matching refs:bdev
426 int blkdev_report_zones(struct block_device *bdev, sector_t sector,
428 int blkdev_zone_mgmt(struct block_device *bdev, enum req_op op,
722 static inline unsigned int bdev_max_open_zones(struct block_device *bdev) in bdev_max_open_zones() argument
724 return bdev->bd_disk->queue->limits.max_open_zones; in bdev_max_open_zones()
727 static inline unsigned int bdev_max_active_zones(struct block_device *bdev) in bdev_max_active_zones() argument
729 return bdev->bd_disk->queue->limits.max_active_zones; in bdev_max_active_zones()
764 static inline u8 bdev_partno(const struct block_device *bdev) in bdev_partno() argument
766 return atomic_read(&bdev->__bd_flags) & BD_PARTNO; in bdev_partno()
769 static inline bool bdev_test_flag(const struct block_device *bdev, unsigned flag) in bdev_test_flag() argument
771 return atomic_read(&bdev->__bd_flags) & flag; in bdev_test_flag()
774 static inline void bdev_set_flag(struct block_device *bdev, unsigned flag) in bdev_set_flag() argument
776 atomic_or(flag, &bdev->__bd_flags); in bdev_set_flag()
779 static inline void bdev_clear_flag(struct block_device *bdev, unsigned flag) in bdev_clear_flag() argument
781 atomic_andnot(flag, &bdev->__bd_flags); in bdev_clear_flag()
790 static inline bool bdev_read_only(struct block_device *bdev) in bdev_read_only() argument
792 return bdev_test_flag(bdev, BD_READ_ONLY) || get_disk_ro(bdev->bd_disk); in bdev_read_only()
797 void bdev_mark_dead(struct block_device *bdev, bool surprise);
802 static inline sector_t get_start_sect(struct block_device *bdev) in get_start_sect() argument
804 return bdev->bd_start_sect; in get_start_sect()
807 static inline sector_t bdev_nr_sectors(struct block_device *bdev) in bdev_nr_sectors() argument
809 return bdev->bd_nr_sectors; in bdev_nr_sectors()
812 static inline loff_t bdev_nr_bytes(struct block_device *bdev) in bdev_nr_bytes() argument
814 return (loff_t)bdev_nr_sectors(bdev) << SECTOR_SHIFT; in bdev_nr_bytes()
852 static inline unsigned int bdev_zone_capacity(struct block_device *bdev, in bdev_zone_capacity() argument
855 return disk_zone_capacity(bdev->bd_disk, pos); in bdev_zone_capacity()
868 static inline unsigned int bdev_nr_zones(struct block_device *bdev) in bdev_nr_zones() argument
870 return disk_nr_zones(bdev->bd_disk); in bdev_nr_zones()
908 int bd_link_disk_holder(struct block_device *bdev, struct gendisk *disk);
909 void bd_unlink_disk_holder(struct block_device *bdev, struct gendisk *disk);
911 static inline int bd_link_disk_holder(struct block_device *bdev, in bd_link_disk_holder() argument
916 static inline void bd_unlink_disk_holder(struct block_device *bdev, in bd_unlink_disk_holder() argument
949 static inline struct request_queue *bdev_get_queue(struct block_device *bdev) in bdev_get_queue() argument
951 return bdev->bd_queue; /* this is never NULL */ in bdev_get_queue()
1047 void queue_limits_stack_bdev(struct queue_limits *t, struct block_device *bdev,
1126 int blkdev_issue_flush(struct block_device *bdev);
1153 static inline int blkdev_issue_flush(struct block_device *bdev) in blkdev_issue_flush() argument
1166 int blkdev_issue_discard(struct block_device *bdev, sector_t sector,
1168 int __blkdev_issue_discard(struct block_device *bdev, sector_t sector,
1170 int blkdev_issue_secure_erase(struct block_device *bdev, sector_t sector,
1177 extern int __blkdev_issue_zeroout(struct block_device *bdev, sector_t sector,
1180 extern int blkdev_issue_zeroout(struct block_device *bdev, sector_t sector,
1204 static inline bool bdev_is_partition(struct block_device *bdev) in bdev_is_partition() argument
1206 return bdev_partno(bdev) != 0; in bdev_is_partition()
1225 static inline struct queue_limits *bdev_limits(struct block_device *bdev) in bdev_limits() argument
1227 return &bdev_get_queue(bdev)->limits; in bdev_limits()
1275 static inline bool bdev_emulates_zone_append(struct block_device *bdev) in bdev_emulates_zone_append() argument
1277 return queue_emulates_zone_append(bdev_get_queue(bdev)); in bdev_emulates_zone_append()
1281 bdev_max_zone_append_sectors(struct block_device *bdev) in bdev_max_zone_append_sectors() argument
1283 return bdev_limits(bdev)->max_zone_append_sectors; in bdev_max_zone_append_sectors()
1286 static inline unsigned int bdev_max_segments(struct block_device *bdev) in bdev_max_segments() argument
1288 return queue_max_segments(bdev_get_queue(bdev)); in bdev_max_segments()
1296 static inline unsigned int bdev_logical_block_size(struct block_device *bdev) in bdev_logical_block_size() argument
1298 return queue_logical_block_size(bdev_get_queue(bdev)); in bdev_logical_block_size()
1306 static inline unsigned int bdev_physical_block_size(struct block_device *bdev) in bdev_physical_block_size() argument
1308 return queue_physical_block_size(bdev_get_queue(bdev)); in bdev_physical_block_size()
1316 static inline unsigned int bdev_io_min(struct block_device *bdev) in bdev_io_min() argument
1318 return queue_io_min(bdev_get_queue(bdev)); in bdev_io_min()
1326 static inline unsigned int bdev_io_opt(struct block_device *bdev) in bdev_io_opt() argument
1328 return queue_io_opt(bdev_get_queue(bdev)); in bdev_io_opt()
1338 bdev_zone_write_granularity(struct block_device *bdev) in bdev_zone_write_granularity() argument
1340 return queue_zone_write_granularity(bdev_get_queue(bdev)); in bdev_zone_write_granularity()
1343 int bdev_alignment_offset(struct block_device *bdev);
1344 unsigned int bdev_discard_alignment(struct block_device *bdev);
1346 static inline unsigned int bdev_max_discard_sectors(struct block_device *bdev) in bdev_max_discard_sectors() argument
1348 return bdev_limits(bdev)->max_discard_sectors; in bdev_max_discard_sectors()
1351 static inline unsigned int bdev_discard_granularity(struct block_device *bdev) in bdev_discard_granularity() argument
1353 return bdev_limits(bdev)->discard_granularity; in bdev_discard_granularity()
1357 bdev_max_secure_erase_sectors(struct block_device *bdev) in bdev_max_secure_erase_sectors() argument
1359 return bdev_limits(bdev)->max_secure_erase_sectors; in bdev_max_secure_erase_sectors()
1362 static inline unsigned int bdev_write_zeroes_sectors(struct block_device *bdev) in bdev_write_zeroes_sectors() argument
1364 return bdev_limits(bdev)->max_write_zeroes_sectors; in bdev_write_zeroes_sectors()
1367 static inline bool bdev_nonrot(struct block_device *bdev) in bdev_nonrot() argument
1369 return blk_queue_nonrot(bdev_get_queue(bdev)); in bdev_nonrot()
1372 static inline bool bdev_synchronous(struct block_device *bdev) in bdev_synchronous() argument
1374 return bdev->bd_disk->queue->limits.features & BLK_FEAT_SYNCHRONOUS; in bdev_synchronous()
1377 static inline bool bdev_stable_writes(struct block_device *bdev) in bdev_stable_writes() argument
1379 struct request_queue *q = bdev_get_queue(bdev); in bdev_stable_writes()
1393 static inline bool bdev_write_cache(struct block_device *bdev) in bdev_write_cache() argument
1395 return blk_queue_write_cache(bdev_get_queue(bdev)); in bdev_write_cache()
1398 static inline bool bdev_fua(struct block_device *bdev) in bdev_fua() argument
1400 return bdev_limits(bdev)->features & BLK_FEAT_FUA; in bdev_fua()
1403 static inline bool bdev_nowait(struct block_device *bdev) in bdev_nowait() argument
1405 return bdev->bd_disk->queue->limits.features & BLK_FEAT_NOWAIT; in bdev_nowait()
1408 static inline bool bdev_is_zoned(struct block_device *bdev) in bdev_is_zoned() argument
1410 return blk_queue_is_zoned(bdev_get_queue(bdev)); in bdev_is_zoned()
1413 static inline unsigned int bdev_zone_no(struct block_device *bdev, sector_t sec) in bdev_zone_no() argument
1415 return disk_zone_no(bdev->bd_disk, sec); in bdev_zone_no()
1418 static inline sector_t bdev_zone_sectors(struct block_device *bdev) in bdev_zone_sectors() argument
1420 struct request_queue *q = bdev_get_queue(bdev); in bdev_zone_sectors()
1427 static inline sector_t bdev_offset_from_zone_start(struct block_device *bdev, in bdev_offset_from_zone_start() argument
1430 return sector & (bdev_zone_sectors(bdev) - 1); in bdev_offset_from_zone_start()
1439 static inline bool bdev_is_zone_start(struct block_device *bdev, in bdev_is_zone_start() argument
1442 return bdev_offset_from_zone_start(bdev, sector) == 0; in bdev_is_zone_start()
1452 static inline bool bdev_zone_is_seq(struct block_device *bdev, sector_t sector) in bdev_zone_is_seq() argument
1457 if (bdev_is_zoned(bdev)) { in bdev_zone_is_seq()
1458 struct gendisk *disk = bdev->bd_disk; in bdev_zone_is_seq()
1472 int blk_zone_issue_zeroout(struct block_device *bdev, sector_t sector,
1504 static inline unsigned int bdev_dma_alignment(struct block_device *bdev) in bdev_dma_alignment() argument
1506 return queue_dma_alignment(bdev_get_queue(bdev)); in bdev_dma_alignment()
1509 static inline bool bdev_iter_is_aligned(struct block_device *bdev, in bdev_iter_is_aligned() argument
1512 return iov_iter_is_aligned(iter, bdev_dma_alignment(bdev), in bdev_iter_is_aligned()
1513 bdev_logical_block_size(bdev) - 1); in bdev_iter_is_aligned()
1572 int (*ioctl)(struct block_device *bdev, blk_mode_t mode,
1574 int (*compat_ioctl)(struct block_device *bdev, blk_mode_t mode,
1580 int (*set_read_only)(struct block_device *bdev, bool ro);
1621 unsigned long bdev_start_io_acct(struct block_device *bdev, enum req_op op,
1623 void bdev_end_io_acct(struct block_device *bdev, enum req_op op,
1640 int bdev_validate_blocksize(struct block_device *bdev, int block_size);
1656 void (*mark_dead)(struct block_device *bdev, bool surprise);
1661 void (*sync)(struct block_device *bdev);
1666 int (*freeze)(struct block_device *bdev);
1671 int (*thaw)(struct block_device *bdev);
1693 int bd_prepare_to_claim(struct block_device *bdev, void *holder,
1695 void bd_abort_claiming(struct block_device *bdev, void *holder);
1700 unsigned int block_size(struct block_device *bdev);
1703 void invalidate_bdev(struct block_device *bdev);
1704 int sync_blockdev(struct block_device *bdev);
1705 int sync_blockdev_range(struct block_device *bdev, loff_t lstart, loff_t lend);
1706 int sync_blockdev_nowait(struct block_device *bdev);
1712 static inline void invalidate_bdev(struct block_device *bdev) in invalidate_bdev() argument
1715 static inline int sync_blockdev(struct block_device *bdev) in sync_blockdev() argument
1719 static inline int sync_blockdev_nowait(struct block_device *bdev) in sync_blockdev_nowait() argument
1739 int bdev_freeze(struct block_device *bdev);
1740 int bdev_thaw(struct block_device *bdev);
1758 static inline bool bdev_can_atomic_write(struct block_device *bdev) in bdev_can_atomic_write() argument
1760 struct request_queue *bd_queue = bdev->bd_queue; in bdev_can_atomic_write()
1766 if (bdev_is_partition(bdev)) in bdev_can_atomic_write()
1767 return blk_atomic_write_start_sect_aligned(bdev->bd_start_sect, in bdev_can_atomic_write()
1774 bdev_atomic_write_unit_min_bytes(struct block_device *bdev) in bdev_atomic_write_unit_min_bytes() argument
1776 if (!bdev_can_atomic_write(bdev)) in bdev_atomic_write_unit_min_bytes()
1778 return queue_atomic_write_unit_min_bytes(bdev_get_queue(bdev)); in bdev_atomic_write_unit_min_bytes()
1782 bdev_atomic_write_unit_max_bytes(struct block_device *bdev) in bdev_atomic_write_unit_max_bytes() argument
1784 if (!bdev_can_atomic_write(bdev)) in bdev_atomic_write_unit_max_bytes()
1786 return queue_atomic_write_unit_max_bytes(bdev_get_queue(bdev)); in bdev_atomic_write_unit_max_bytes()