Home
last modified time | relevance | path

Searched refs:dax_dev (Results 1 – 25 of 32) sorted by relevance

12

/linux-6.15/drivers/dax/
H A Dsuper.c101 if (!dax_dev || !dax_alive(dax_dev) || !igrab(&dax_dev->inode)) in fs_dax_get_by_bdev()
102 dax_dev = NULL; in fs_dax_get_by_bdev()
111 return dax_dev; in fs_dax_get_by_bdev()
155 if (!dax_dev) in dax_direct_access()
164 avail = dax_dev->ops->direct_access(dax_dev, pgoff, nr_pages, in dax_direct_access()
219 ret = dax_dev->ops->zero_page_range(dax_dev, pgoff, nr_pages); in dax_zero_page_range()
331 if (!dax_dev) in kill_dax()
359 if (!dax_dev) in dax_alloc_inode()
472 if (!dax_dev) in alloc_dax()
487 if (!dax_dev) in put_dax()
[all …]
H A Ddax-private.h15 struct inode *dax_inode(struct dax_device *dax_dev);
83 struct dax_device *dax_dev; member
101 void run_dax(struct dax_device *dax_dev);
H A Ddevice.c23 if (!dax_alive(dev_dax->dax_dev)) in check_vma()
350 struct dax_device *dax_dev = inode_dax(inode); in dax_open() local
351 struct inode *__dax_inode = dax_inode(dax_dev); in dax_open()
352 struct dev_dax *dev_dax = dax_get_private(dax_dev); in dax_open()
397 struct dax_device *dax_dev = dev_dax->dax_dev; in dev_dax_probe() local
454 inode = dax_inode(dax_dev); in dev_dax_probe()
467 run_dax(dax_dev); in dev_dax_probe()
H A Dbus.c425 struct dax_device *dax_dev = dev_dax->dax_dev; in kill_dev_dax() local
428 kill_dax(dax_dev); in kill_dev_dax()
1407 struct dax_device *dax_dev = dev_dax->dax_dev; in dev_dax_release() local
1409 put_dax(dax_dev); in dev_dax_release()
1424 struct dax_device *dax_dev; in __devm_create_dev_dax() local
1480 if (IS_ERR(dax_dev)) { in __devm_create_dev_dax()
1481 rc = PTR_ERR(dax_dev); in __devm_create_dev_dax()
1485 set_dax_nocache(dax_dev); in __devm_create_dev_dax()
1486 set_dax_nomc(dax_dev); in __devm_create_dev_dax()
1489 kill_dax(dax_dev); in __devm_create_dev_dax()
[all …]
/linux-6.15/include/linux/
H A Ddax.h54 void *dax_holder(struct dax_device *dax_dev);
55 void put_dax(struct dax_device *dax_dev);
56 void kill_dax(struct dax_device *dax_dev);
59 bool dax_synchronous(struct dax_device *dax_dev);
60 void set_dax_nocache(struct dax_device *dax_dev);
61 void set_dax_nomc(struct dax_device *dax_dev);
69 struct dax_device *dax_dev) in daxdev_mapping_supported() argument
75 return dax_synchronous(dax_dev); in daxdev_mapping_supported()
114 struct dax_device *dax_dev) in daxdev_mapping_supported() argument
241 bool dax_alive(struct dax_device *dax_dev);
[all …]
H A Diomap.h113 struct dax_device *dax_dev; /* dax_dev for dax operations */ member
/linux-6.15/drivers/nvdimm/
H A Ddax_devs.c91 struct device *dax_dev; in nd_dax_probe() local
109 dax_dev = nd_dax_devinit(nd_dax, ndns); in nd_dax_probe()
111 if (!dax_dev) in nd_dax_probe()
117 dev_dbg(dev, "dax: %s\n", rc == 0 ? dev_name(dax_dev) : "<none>"); in nd_dax_probe()
119 nd_detach_ndns(dax_dev, &nd_pfn->ndns); in nd_dax_probe()
120 put_device(dax_dev); in nd_dax_probe()
122 nd_device_register(dax_dev); in nd_dax_probe()
H A Dpmem.c427 kill_dax(pmem->dax_dev); in pmem_release_disk()
428 put_dax(pmem->dax_dev); in pmem_release_disk()
465 struct dax_device *dax_dev; in pmem_attach_disk() local
559 if (IS_ERR(dax_dev)) { in pmem_attach_disk()
560 rc = PTR_ERR(dax_dev); in pmem_attach_disk()
564 set_dax_nocache(dax_dev); in pmem_attach_disk()
565 set_dax_nomc(dax_dev); in pmem_attach_disk()
567 set_dax_synchronous(dax_dev); in pmem_attach_disk()
568 pmem->dax_dev = dax_dev; in pmem_attach_disk()
591 kill_dax(pmem->dax_dev); in pmem_attach_disk()
[all …]
H A Dpmem.h27 struct dax_device *dax_dev; member
/linux-6.15/drivers/md/
H A Ddm-linear.c166 return lc->dev->dax_dev; in linear_dax_pgoff()
173 struct dax_device *dax_dev = linear_dax_pgoff(ti, &pgoff); in linear_dax_direct_access() local
175 return dax_direct_access(dax_dev, pgoff, nr_pages, mode, kaddr, pfn); in linear_dax_direct_access()
181 struct dax_device *dax_dev = linear_dax_pgoff(ti, &pgoff); in linear_dax_zero_page_range() local
183 return dax_zero_page_range(dax_dev, pgoff, nr_pages); in linear_dax_zero_page_range()
189 struct dax_device *dax_dev = linear_dax_pgoff(ti, &pgoff); in linear_dax_recovery_write() local
191 return dax_recovery_write(dax_dev, pgoff, addr, bytes, i); in linear_dax_recovery_write()
H A Ddm-stripe.c314 return sc->stripe[stripe].dev->dax_dev; in stripe_dax_pgoff()
321 struct dax_device *dax_dev = stripe_dax_pgoff(ti, &pgoff); in stripe_dax_direct_access() local
323 return dax_direct_access(dax_dev, pgoff, nr_pages, mode, kaddr, pfn); in stripe_dax_direct_access()
329 struct dax_device *dax_dev = stripe_dax_pgoff(ti, &pgoff); in stripe_dax_zero_page_range() local
331 return dax_zero_page_range(dax_dev, pgoff, nr_pages); in stripe_dax_zero_page_range()
337 struct dax_device *dax_dev = stripe_dax_pgoff(ti, &pgoff); in stripe_dax_recovery_write() local
339 return dax_recovery_write(dax_dev, pgoff, addr, bytes, i); in stripe_dax_recovery_write()
H A Ddm-log-writes.c889 return lc->dev->dax_dev; in log_writes_dax_pgoff()
896 struct dax_device *dax_dev = log_writes_dax_pgoff(ti, &pgoff); in log_writes_dax_direct_access() local
898 return dax_direct_access(dax_dev, pgoff, nr_pages, mode, kaddr, pfn); in log_writes_dax_direct_access()
904 struct dax_device *dax_dev = log_writes_dax_pgoff(ti, &pgoff); in log_writes_dax_zero_page_range() local
906 return dax_zero_page_range(dax_dev, pgoff, nr_pages << PAGE_SHIFT); in log_writes_dax_zero_page_range()
912 struct dax_device *dax_dev = log_writes_dax_pgoff(ti, &pgoff); in log_writes_dax_recovery_write() local
914 return dax_recovery_write(dax_dev, pgoff, addr, bytes, i); in log_writes_dax_recovery_write()
H A Ddm.c789 put_dax(td->dm_dev.dax_dev); in close_table_device()
2209 if (md->dax_dev) { in cleanup_mapped_device()
2211 kill_dax(md->dax_dev); in cleanup_mapped_device()
2212 put_dax(md->dax_dev); in cleanup_mapped_device()
2213 md->dax_dev = NULL; in cleanup_mapped_device()
2262 struct dax_device *dax_dev; in alloc_dev() local
2333 dax_dev = alloc_dax(md, &dm_dax_ops); in alloc_dev()
2334 if (IS_ERR(dax_dev)) { in alloc_dev()
2338 set_dax_nocache(dax_dev); in alloc_dev()
2339 set_dax_nomc(dax_dev); in alloc_dev()
[all …]
H A Ddm-table.c862 if (dev->dax_dev) in device_not_dax_capable()
873 return !dev->dax_dev || !dax_synchronous(dev->dax_dev); in device_not_dax_synchronous_capable()
1710 struct dax_device *dax_dev = dev->dax_dev; in device_dax_write_cache_enabled() local
1712 if (!dax_dev) in device_dax_write_cache_enabled()
1715 if (dax_write_cache_enabled(dax_dev)) in device_dax_write_cache_enabled()
1866 set_dax_synchronous(t->md->dax_dev); in dm_table_set_restrictions()
1871 dax_write_cache(t->md->dax_dev, true); in dm_table_set_restrictions()
H A Ddm-core.h79 struct dax_device *dax_dev; member
/linux-6.15/drivers/s390/block/
H A Ddcssblk.c82 struct dax_device *dax_dev; member
417 kill_dax(dev_info->dax_dev); in dcssblk_shared_store()
418 put_dax(dev_info->dax_dev); in dcssblk_shared_store()
539 struct dax_device *dax_dev; in dcssblk_setup_dax() local
545 if (IS_ERR(dax_dev)) in dcssblk_setup_dax()
546 return PTR_ERR(dax_dev); in dcssblk_setup_dax()
548 dev_info->dax_dev = dax_dev; in dcssblk_setup_dax()
718 kill_dax(dev_info->dax_dev); in dcssblk_add_store()
719 put_dax(dev_info->dax_dev); in dcssblk_add_store()
803 kill_dax(dev_info->dax_dev); in dcssblk_remove_store()
[all …]
/linux-6.15/fs/fuse/
H A Dvirtio_fs.c72 struct dax_device *dax_dev; member
1013 struct virtio_fs *fs = dax_get_private(dax_dev); in virtio_fs_direct_access()
1047 struct dax_device *dax_dev = data; in virtio_fs_cleanup_dax() local
1049 kill_dax(dax_dev); in virtio_fs_cleanup_dax()
1050 put_dax(dax_dev); in virtio_fs_cleanup_dax()
1065 dax_dev = alloc_dax(fs, &virtio_fs_dax_ops); in virtio_fs_setup_dax()
1066 if (IS_ERR(dax_dev)) { in virtio_fs_setup_dax()
1067 int rc = PTR_ERR(dax_dev); in virtio_fs_setup_dax()
1116 fs->dax_dev = no_free_ptr(dax_dev); in virtio_fs_setup_dax()
1118 fs->dax_dev); in virtio_fs_setup_dax()
[all …]
H A Ddax.c580 iomap->dax_dev = fc->dax->dev; in fuse_iomap_begin()
1249 struct dax_device *dax_dev) in fuse_dax_conn_alloc() argument
1256 if (!dax_dev) in fuse_dax_conn_alloc()
1264 fcd->dev = dax_dev; in fuse_dax_conn_alloc()
H A Dfuse_i.h609 struct dax_device *dax_dev; member
1476 struct dax_device *dax_dev);
/linux-6.15/fs/xfs/
H A Dxfs_notify_failure.c367 struct dax_device *dax_dev, in xfs_dax_notify_failure() argument
372 struct xfs_mount *mp = dax_holder(dax_dev); in xfs_dax_notify_failure()
380 mp->m_logdev_targp->bt_daxdev == dax_dev) { in xfs_dax_notify_failure()
385 (mp->m_rtdev_targp && mp->m_rtdev_targp->bt_daxdev == dax_dev) ? in xfs_dax_notify_failure()
/linux-6.15/fs/
H A Ddax.c1213 struct dax_device *dax_dev, struct writeback_control *wbc) in dax_writeback_mapping_range() argument
1234 ret = dax_writeback_one(&xas, dax_dev, mapping, entry); in dax_writeback_mapping_range()
1360 dax_flush(srcmap->dax_dev, daddr, size); in dax_iomap_copy_around()
1538 dax_flush(iomap->dax_dev, kaddr + offset, size); in dax_memzero()
1572 ret = dax_zero_page_range(iomap->dax_dev, pgoff, 1); in dax_zero_iter()
1626 struct dax_device *dax_dev = iomap->dax_dev; in dax_iomap_iter() local
1688 map_len = dax_direct_access(dax_dev, pgoff, PHYS_PFN(size), in dax_iomap_iter()
1691 map_len = dax_direct_access(dax_dev, pgoff, in dax_iomap_iter()
1716 xfer = dax_recovery_write(dax_dev, pgoff, kaddr, in dax_iomap_iter()
1719 xfer = dax_copy_from_iter(dax_dev, pgoff, kaddr, in dax_iomap_iter()
[all …]
/linux-6.15/fs/erofs/
H A Dsuper.c172 dif->dax_dev = fs_dax_get_by_bdev(file_bdev(file), in erofs_init_device()
598 sbi->dif0.dax_dev = fs_dax_get_by_bdev(sb->s_bdev, in erofs_fc_fill_super()
622 if (!sbi->dif0.dax_dev) { in erofs_fc_fill_super()
735 fs_put_dax(dif->dax_dev, NULL); in erofs_release_device_info()
821 fs_put_dax(sbi->dif0.dax_dev, NULL); in erofs_kill_sb()
H A Ddata.c275 iomap->dax_dev = mdev.m_dif->dax_dev; in erofs_iomap_begin()
/linux-6.15/Documentation/filesystems/iomap/
H A Ddesign.rst167 struct dax_device *dax_dev;
198 The device is returned in ``bdev`` or ``dax_dev``.
203 The device is returned in ``bdev`` or ``dax_dev``.
271 * ``dax_dev`` describes the DAX device for this mapping.
/linux-6.15/fs/ext4/
H A Dfile.c806 struct dax_device *dax_dev = EXT4_SB(inode->i_sb)->s_daxdev; in ext4_file_mmap() local
819 if (!daxdev_mapping_supported(vma, dax_dev)) in ext4_file_mmap()

12