• Home
  • Raw
  • Download

Lines Matching refs:iomap

806 static pgoff_t dax_iomap_pgoff(const struct iomap *iomap, loff_t pos)  in dax_iomap_pgoff()  argument
808 return PHYS_PFN(iomap->addr + (pos & PAGE_MASK) - iomap->offset); in dax_iomap_pgoff()
813 pgoff_t pgoff = dax_iomap_pgoff(&iter->iomap, iter->pos); in copy_cow_page_dax()
819 rc = dax_direct_access(iter->iomap.dax_dev, pgoff, 1, DAX_ACCESS, in copy_cow_page_dax()
840 (iter->iomap.flags & IOMAP_F_DIRTY); in dax_fault_is_synchronous()
846 (iter->iomap.flags & IOMAP_F_SHARED); in dax_fault_is_cow()
1052 static int dax_iomap_direct_access(const struct iomap *iomap, loff_t pos, in dax_iomap_direct_access() argument
1055 pgoff_t pgoff = dax_iomap_pgoff(iomap, pos); in dax_iomap_direct_access()
1060 length = dax_direct_access(iomap->dax_dev, pgoff, PHYS_PFN(size), in dax_iomap_direct_access()
1103 const struct iomap *srcmap, void *daddr) in dax_iomap_cow_copy()
1226 const struct iomap *iomap = &iter->iomap; in dax_memzero() local
1227 const struct iomap *srcmap = iomap_iter_srcmap(iter); in dax_memzero()
1229 pgoff_t pgoff = dax_iomap_pgoff(iomap, pos); in dax_memzero()
1233 ret = dax_direct_access(iomap->dax_dev, pgoff, 1, DAX_ACCESS, &kaddr, in dax_memzero()
1238 if (srcmap->addr != iomap->addr) { in dax_memzero()
1243 dax_flush(iomap->dax_dev, kaddr, PAGE_SIZE); in dax_memzero()
1245 dax_flush(iomap->dax_dev, kaddr + offset, size); in dax_memzero()
1251 const struct iomap *iomap = &iter->iomap; in dax_zero_iter() local
1252 const struct iomap *srcmap = iomap_iter_srcmap(iter); in dax_zero_iter()
1264 pgoff_t pgoff = dax_iomap_pgoff(iomap, pos); in dax_zero_iter()
1270 rc = dax_zero_page_range(iomap->dax_dev, pgoff, 1); in dax_zero_iter()
1320 const struct iomap *iomap = &iomi->iomap; in dax_iomap_iter() local
1321 const struct iomap *srcmap = &iomi->srcmap; in dax_iomap_iter()
1324 struct dax_device *dax_dev = iomap->dax_dev; in dax_iomap_iter()
1336 if (iomap->type == IOMAP_HOLE || iomap->type == IOMAP_UNWRITTEN) in dax_iomap_iter()
1344 if (WARN_ON_ONCE(iomap->type != IOMAP_MAPPED && in dax_iomap_iter()
1345 !(iomap->flags & IOMAP_F_SHARED))) in dax_iomap_iter()
1353 if (iomap->flags & IOMAP_F_NEW) { in dax_iomap_iter()
1363 pgoff_t pgoff = dax_iomap_pgoff(iomap, pos); in dax_iomap_iter()
1388 srcmap->type != IOMAP_HOLE && srcmap->addr != iomap->addr) { in dax_iomap_iter()
1497 switch (iter->iomap.type) { in dax_fault_cow_page()
1534 const struct iomap *iomap = &iter->iomap; in dax_fault_iter() local
1535 const struct iomap *srcmap = &iter->srcmap; in dax_fault_iter()
1549 (iomap->type == IOMAP_UNWRITTEN || iomap->type == IOMAP_HOLE)) { in dax_fault_iter()
1555 if (iomap->type != IOMAP_MAPPED && !(iomap->flags & IOMAP_F_SHARED)) { in dax_fault_iter()
1560 err = dax_iomap_direct_access(iomap, pos, size, &kaddr, &pfn); in dax_fault_iter()
1567 srcmap->type != IOMAP_HOLE && srcmap->addr != iomap->addr) { in dax_fault_iter()
1640 (iter.iomap.flags & IOMAP_F_NEW)) { in dax_iomap_pte_fault()
1883 const struct iomap *smap = &it_src->iomap; in dax_range_compare_iter()
1884 const struct iomap *dmap = &it_dest->iomap; in dax_range_compare_iter()