Lines Matching defs:part

251 	const struct block_device *part = dev_to_bdev(dev);
253 add_uevent_var(env, "PARTN=%u", part->bd_partno);
254 if (part->bd_meta_info && part->bd_meta_info->volname[0])
255 add_uevent_var(env, "PARTNAME=%s", part->bd_meta_info->volname);
266 void drop_partition(struct block_device *part)
268 lockdep_assert_held(&part->bd_disk->open_mutex);
270 xa_erase(&part->bd_disk->part_tbl, part->bd_partno);
271 kobject_put(part->bd_holder_dir);
273 device_del(&part->bd_device);
274 put_device(&part->bd_device);
401 struct block_device *part;
406 xa_for_each_start(&disk->part_tbl, idx, part, 1) {
407 if (part->bd_partno != skip_partno &&
408 start < part->bd_start_sect + bdev_nr_sectors(part) &&
409 start + length > part->bd_start_sect) {
422 struct block_device *part;
441 part = add_partition(disk, partno, start, length,
443 ret = PTR_ERR_OR_ZERO(part);
451 struct block_device *part = NULL;
455 part = xa_load(&disk->part_tbl, partno);
456 if (!part)
460 if (atomic_read(&part->bd_openers))
464 * We verified that @part->bd_openers is zero above and so
465 * @part->bd_holder{_ops} can't be set. And since we hold
468 * So no need to call @part->bd_holder_ops->mark_dead() here.
472 remove_inode_hash(part->bd_inode);
473 invalidate_bdev(part);
474 drop_partition(part);
484 struct block_device *part = NULL;
488 part = xa_load(&disk->part_tbl, partno);
489 if (!part)
493 if (start != part->bd_start_sect)
500 bdev_set_nr_sectors(part, length);
526 struct block_device *part;
556 part = add_partition(disk, p, from, size, state->parts[p].flags,
558 if (IS_ERR(part) && PTR_ERR(part) != -ENXIO) {
560 disk->disk_name, p, part);
566 md_autodetect_dev(part->bd_dev);
634 struct block_device *part;
649 xa_for_each_start(&disk->part_tbl, idx, part, 1) {
655 remove_inode_hash(part->bd_inode);
662 WARN_ON_ONCE(atomic_read(&part->bd_openers));
663 invalidate_bdev(part);
664 drop_partition(part);