Lines Matching defs:bdev
829 struct drbd_backing_dev *bdev)
832 unsigned int al_size_sect = bdev->md.al_size_4k * 8;
834 bdev->md.md_offset = drbd_md_ss(bdev);
836 switch (bdev->md.meta_dev_idx) {
839 bdev->md.md_size_sect = MD_128MB_SECT;
840 bdev->md.al_offset = MD_4kB_SECT;
841 bdev->md.bm_offset = MD_4kB_SECT + al_size_sect;
845 bdev->md.md_size_sect = drbd_get_capacity(bdev->md_bdev);
846 bdev->md.al_offset = MD_4kB_SECT;
847 bdev->md.bm_offset = MD_4kB_SECT + al_size_sect;
852 bdev->md.al_offset = -al_size_sect;
854 md_size_sect = drbd_get_capacity(bdev->backing_bdev);
863 bdev->md.md_size_sect = md_size_sect;
865 bdev->md.bm_offset = -md_size_sect + MD_4kB_SECT;
1094 drbd_new_dev_size(struct drbd_device *device, struct drbd_backing_dev *bdev,
1098 sector_t la_size_sect = bdev->md.la_size_sect; /* last agreed size. */
1102 m_size = drbd_get_max_capacity(bdev);
1208 struct drbd_backing_dev *bdev)
1215 if (bdev && !bdev_max_discard_sectors(bdev->backing_bdev))
1271 static void drbd_setup_queue_param(struct drbd_device *device, struct drbd_backing_dev *bdev,
1280 if (bdev) {
1281 b = bdev->backing_bdev->bd_disk->queue;
1296 decide_on_discard_support(device, bdev);
1306 void drbd_reconsider_queue_parameters(struct drbd_device *device, struct drbd_backing_dev *bdev, struct o_qlim *o)
1314 if (bdev) {
1315 local = queue_max_hw_sectors(bdev->backing_bdev->bd_disk->queue) << 9;
1349 drbd_setup_queue_param(device, bdev, new, o);
1404 static unsigned int drbd_al_extents_max(struct drbd_backing_dev *bdev)
1424 unsigned int al_size_4k = bdev->md.al_size_4k;
1442 struct block_device *bdev = nbc->backing_bdev;
1449 if (!bdev_max_discard_sectors(bdev)) {
1458 sector_t discard_size = bdev_max_discard_sectors(bdev) << 9;
1459 unsigned int discard_granularity = bdev_discard_granularity(bdev);
1641 struct block_device *bdev;
1644 bdev = blkdev_get_by_path(bdev_path, BLK_OPEN_READ | BLK_OPEN_WRITE,
1646 if (IS_ERR(bdev)) {
1648 bdev_path, PTR_ERR(bdev));
1649 return bdev;
1653 return bdev;
1655 err = bd_link_disk_holder(bdev, device->vdisk);
1657 blkdev_put(bdev, claim_ptr);
1660 bdev = ERR_PTR(err);
1662 return bdev;
1669 struct block_device *bdev;
1671 bdev = open_backing_dev(device, new_disk_conf->backing_dev, device, true);
1672 if (IS_ERR(bdev))
1674 nbc->backing_bdev = bdev;
1684 bdev = open_backing_dev(device, new_disk_conf->meta_dev,
1692 if (IS_ERR(bdev))
1694 nbc->md_bdev = bdev;
1698 static void close_backing_dev(struct drbd_device *device, struct block_device *bdev,
1701 if (!bdev)
1704 bd_unlink_disk_holder(bdev, device->vdisk);
1705 blkdev_put(bdev, claim_ptr);