Lines Matching defs:bdev

342 static int dm_blk_open(struct block_device *bdev, fmode_t mode)
348 md = bdev->bd_disk->private_data;
434 static int dm_blk_getgeo(struct block_device *bdev, struct hd_geometry *geo)
436 struct mapped_device *md = bdev->bd_disk->private_data;
520 struct block_device **bdev)
543 r = tgt->type->prepare_ioctl(tgt, bdev);
558 static int dm_blk_ioctl(struct block_device *bdev, fmode_t mode,
561 struct mapped_device *md = bdev->bd_disk->private_data;
564 r = dm_prepare_ioctl(md, &srcu_idx, &bdev);
571 * subset of the parent bdev; require extra privileges.
582 r = __blkdev_driver_ioctl(bdev, mode, cmd, arg);
751 struct block_device *bdev;
755 BUG_ON(td->dm_dev.bdev);
757 bdev = blkdev_get_by_dev(dev, td->dm_dev.mode | FMODE_EXCL, _dm_claim_ptr);
758 if (IS_ERR(bdev))
759 return PTR_ERR(bdev);
761 r = bd_link_disk_holder(bdev, dm_disk(md));
763 blkdev_put(bdev, td->dm_dev.mode | FMODE_EXCL);
767 td->dm_dev.bdev = bdev;
768 td->dm_dev.dax_dev = dax_get_by_host(bdev->bd_disk->disk_name);
777 if (!td->dm_dev.bdev)
780 bd_unlink_disk_holder(td->dm_dev.bdev, dm_disk(md));
781 blkdev_put(td->dm_dev.bdev, td->dm_dev.mode | FMODE_EXCL);
783 td->dm_dev.bdev = NULL;
793 if (td->dm_dev.bdev->bd_dev == dev && td->dm_dev.mode == mode)
815 td->dm_dev.bdev = NULL;
1140 static bool dm_dax_supported(struct dax_device *dax_dev, struct block_device *bdev,
1488 * cloning. However, blkg association requires that a bdev is
1489 * associated with a gendisk, which doesn't happen until the bdev is
1493 bio_set_dev(ci->bio, ci->io->md->bdev);
1806 if (md->bdev) {
1807 bdput(md->bdev);
1808 md->bdev = NULL;
1909 md->bdev = bdget_disk(md->disk, 0);
1910 if (!md->bdev)
2040 bd_set_nr_sectors(md->bdev, size);
2453 md->frozen_sb = freeze_bdev(md->bdev);
2470 thaw_bdev(md->bdev, md->frozen_sb);
2981 static int dm_call_pr(struct block_device *bdev, iterate_devices_callout_fn fn,
2984 struct mapped_device *md = bdev->bd_disk->private_data;
3020 const struct pr_ops *ops = dev->bdev->bd_disk->fops->pr_ops;
3024 return ops->pr_register(dev->bdev, pr->old_key, pr->new_key, pr->flags);
3027 static int dm_pr_register(struct block_device *bdev, u64 old_key, u64 new_key,
3038 ret = dm_call_pr(bdev, __dm_pr_register, &pr);
3045 dm_call_pr(bdev, __dm_pr_register, &pr);
3051 static int dm_pr_reserve(struct block_device *bdev, u64 key, enum pr_type type,
3054 struct mapped_device *md = bdev->bd_disk->private_data;
3058 r = dm_prepare_ioctl(md, &srcu_idx, &bdev);
3062 ops = bdev->bd_disk->fops->pr_ops;
3064 r = ops->pr_reserve(bdev, key, type, flags);
3072 static int dm_pr_release(struct block_device *bdev, u64 key, enum pr_type type)
3074 struct mapped_device *md = bdev->bd_disk->private_data;
3078 r = dm_prepare_ioctl(md, &srcu_idx, &bdev);
3082 ops = bdev->bd_disk->fops->pr_ops;
3084 r = ops->pr_release(bdev, key, type);
3092 static int dm_pr_preempt(struct block_device *bdev, u64 old_key, u64 new_key,
3095 struct mapped_device *md = bdev->bd_disk->private_data;
3099 r = dm_prepare_ioctl(md, &srcu_idx, &bdev);
3103 ops = bdev->bd_disk->fops->pr_ops;
3105 r = ops->pr_preempt(bdev, old_key, new_key, type, abort);
3113 static int dm_pr_clear(struct block_device *bdev, u64 key)
3115 struct mapped_device *md = bdev->bd_disk->private_data;
3119 r = dm_prepare_ioctl(md, &srcu_idx, &bdev);
3123 ops = bdev->bd_disk->fops->pr_ops;
3125 r = ops->pr_clear(bdev, key);