Lines Matching refs:dd
220 struct dm_dev_internal *dd = in free_devices() local
223 dm_device_name(md), dd->dm_dev->name); in free_devices()
224 dm_put_table_device(md, dd->dm_dev); in free_devices()
225 kfree(dd); in free_devices()
265 struct dm_dev_internal *dd; in find_device() local
267 list_for_each_entry (dd, l, list) in find_device()
268 if (dd->dm_dev->bdev->bd_dev == dev) in find_device()
269 return dd; in find_device()
348 static int upgrade_mode(struct dm_dev_internal *dd, fmode_t new_mode, in upgrade_mode() argument
354 old_dev = dd->dm_dev; in upgrade_mode()
356 r = dm_get_table_device(md, dd->dm_dev->bdev->bd_dev, in upgrade_mode()
357 dd->dm_dev->mode | new_mode, &new_dev); in upgrade_mode()
361 dd->dm_dev = new_dev; in upgrade_mode()
376 struct dm_dev_internal *dd; in dm_get_device() local
393 dd = find_device(&t->devices, dev); in dm_get_device()
394 if (!dd) { in dm_get_device()
395 dd = kmalloc(sizeof(*dd), GFP_KERNEL); in dm_get_device()
396 if (!dd) in dm_get_device()
399 if ((r = dm_get_table_device(t->md, dev, mode, &dd->dm_dev))) { in dm_get_device()
400 kfree(dd); in dm_get_device()
404 atomic_set(&dd->count, 0); in dm_get_device()
405 list_add(&dd->list, &t->devices); in dm_get_device()
407 } else if (dd->dm_dev->mode != (mode | dd->dm_dev->mode)) { in dm_get_device()
408 r = upgrade_mode(dd, mode, t->md); in dm_get_device()
412 atomic_inc(&dd->count); in dm_get_device()
414 *result = dd->dm_dev; in dm_get_device()
461 struct dm_dev_internal *dd; in dm_put_device() local
463 list_for_each_entry(dd, devices, list) { in dm_put_device()
464 if (dd->dm_dev == d) { in dm_put_device()
474 if (atomic_dec_and_test(&dd->count)) { in dm_put_device()
476 list_del(&dd->list); in dm_put_device()
477 kfree(dd); in dm_put_device()
835 struct dm_dev_internal *dd; in dm_table_set_type() local
888 list_for_each_entry(dd, devices, list) { in dm_table_set_type()
889 struct request_queue *q = bdev_get_queue(dd->dm_dev->bdev); in dm_table_set_type()
903 list_for_each_entry(dd, devices, list) in dm_table_set_type()
904 if (!bdev_get_queue(dd->dm_dev->bdev)->mq_ops) { in dm_table_set_type()
1036 struct dm_dev_internal *dd = NULL; in dm_table_get_integrity_disk() local
1039 list_for_each_entry(dd, devices, list) { in dm_table_get_integrity_disk()
1040 template_disk = dd->dm_dev->bdev->bd_disk; in dm_table_get_integrity_disk()
1655 struct dm_dev_internal *dd; in dm_table_any_congested() local
1660 list_for_each_entry(dd, devices, list) { in dm_table_any_congested()
1661 struct request_queue *q = bdev_get_queue(dd->dm_dev->bdev); in dm_table_any_congested()
1669 bdevname(dd->dm_dev->bdev, b)); in dm_table_any_congested()