Home
last modified time | relevance | path

Searched refs:pgmap (Results 1 – 16 of 16) sorted by relevance

/Linux-v4.19/kernel/
Dmemremap.c68 return page->pgmap->page_fault(vma, addr, page, flags, pmdp); in device_private_entry_fault()
88 static unsigned long pfn_first(struct dev_pagemap *pgmap) in pfn_first() argument
90 const struct resource *res = &pgmap->res; in pfn_first()
91 struct vmem_altmap *altmap = &pgmap->altmap; in pfn_first()
95 if (pgmap->altmap_valid) in pfn_first()
100 static unsigned long pfn_end(struct dev_pagemap *pgmap) in pfn_end() argument
102 const struct resource *res = &pgmap->res; in pfn_end()
119 struct dev_pagemap *pgmap = data; in devm_memremap_pages_release() local
120 struct device *dev = pgmap->dev; in devm_memremap_pages_release()
121 struct resource *res = &pgmap->res; in devm_memremap_pages_release()
[all …]
/Linux-v4.19/include/linux/
Dmemremap.h126 void *devm_memremap_pages(struct device *dev, struct dev_pagemap *pgmap);
128 struct dev_pagemap *pgmap);
134 struct dev_pagemap *pgmap) in devm_memremap_pages() argument
146 struct dev_pagemap *pgmap) in get_dev_pagemap() argument
162 static inline void put_dev_pagemap(struct dev_pagemap *pgmap) in put_dev_pagemap() argument
164 if (pgmap) in put_dev_pagemap()
165 percpu_ref_put(pgmap->ref); in put_dev_pagemap()
Dmm_types.h154 struct dev_pagemap *pgmap; member
Dmm.h869 switch (page->pgmap->type) { in put_devmap_managed_page()
884 page->pgmap->type == MEMORY_DEVICE_PRIVATE; in is_device_private_page()
890 page->pgmap->type == MEMORY_DEVICE_PUBLIC; in is_device_public_page()
/Linux-v4.19/drivers/nvdimm/
Dpmem.c337 static int setup_pagemap_fsdax(struct device *dev, struct dev_pagemap *pgmap) in setup_pagemap_fsdax() argument
340 if (devm_add_action_or_reset(dev, pmem_release_pgmap_ops, pgmap)) in setup_pagemap_fsdax()
342 pgmap->type = MEMORY_DEVICE_FS_DAX; in setup_pagemap_fsdax()
343 pgmap->page_free = fsdax_pagefree; in setup_pagemap_fsdax()
373 rc = nvdimm_setup_pfn(nd_pfn, &pmem->pgmap); in pmem_attach_disk()
404 pmem->pgmap.ref = &q->q_usage_counter; in pmem_attach_disk()
406 if (setup_pagemap_fsdax(dev, &pmem->pgmap)) in pmem_attach_disk()
408 addr = devm_memremap_pages(dev, &pmem->pgmap); in pmem_attach_disk()
412 resource_size(&pmem->pgmap.res); in pmem_attach_disk()
414 memcpy(&bb_res, &pmem->pgmap.res, sizeof(bb_res)); in pmem_attach_disk()
[all …]
Dpfn_devs.c544 static int __nvdimm_setup_pfn(struct nd_pfn *nd_pfn, struct dev_pagemap *pgmap) in __nvdimm_setup_pfn() argument
546 struct resource *res = &pgmap->res; in __nvdimm_setup_pfn()
547 struct vmem_altmap *altmap = &pgmap->altmap; in __nvdimm_setup_pfn()
568 pgmap->altmap_valid = false; in __nvdimm_setup_pfn()
580 pgmap->altmap_valid = true; in __nvdimm_setup_pfn()
712 int nvdimm_setup_pfn(struct nd_pfn *nd_pfn, struct dev_pagemap *pgmap) in nvdimm_setup_pfn() argument
724 return __nvdimm_setup_pfn(nd_pfn, pgmap); in nvdimm_setup_pfn()
Dpmem.h26 struct dev_pagemap pgmap; member
Dnd.h370 int nvdimm_setup_pfn(struct nd_pfn *nd_pfn, struct dev_pagemap *pgmap);
375 struct dev_pagemap *pgmap) in nvdimm_setup_pfn() argument
/Linux-v4.19/drivers/dax/
Dpmem.c24 struct dev_pagemap pgmap; member
87 rc = nvdimm_setup_pfn(nd_pfn, &dax_pmem->pgmap); in dax_pmem_probe()
114 dax_pmem->pgmap.ref = &dax_pmem->ref; in dax_pmem_probe()
115 addr = devm_memremap_pages(dev, &dax_pmem->pgmap); in dax_pmem_probe()
128 memcpy(&res, &dax_pmem->pgmap.res, sizeof(res)); in dax_pmem_probe()
Dsuper.c147 struct dev_pagemap *pgmap; in __bdev_dax_supported() local
149 pgmap = get_dev_pagemap(pfn_t_to_pfn(pfn), NULL); in __bdev_dax_supported()
150 if (pgmap && pgmap->type == MEMORY_DEVICE_FS_DAX) in __bdev_dax_supported()
152 put_dev_pagemap(pgmap); in __bdev_dax_supported()
/Linux-v4.19/mm/
Dgup.c77 struct dev_pagemap *pgmap = NULL; in follow_page_pte() local
119 pgmap = get_dev_pagemap(pte_pfn(pte), NULL); in follow_page_pte()
120 if (pgmap) in follow_page_pte()
159 if (pgmap) { in follow_page_pte()
160 put_dev_pagemap(pgmap); in follow_page_pte()
161 pgmap = NULL; in follow_page_pte()
1375 struct dev_pagemap *pgmap = NULL; in gup_pte_range() local
1395 pgmap = get_dev_pagemap(pte_pfn(pte), pgmap); in gup_pte_range()
1396 if (unlikely(!pgmap)) { in gup_pte_range()
1426 if (pgmap) in gup_pte_range()
[all …]
Dmemory-failure.c1155 struct dev_pagemap *pgmap) in memory_failure_dev_pagemap() argument
1180 switch (pgmap->type) { in memory_failure_dev_pagemap()
1226 put_dev_pagemap(pgmap); in memory_failure_dev_pagemap()
1253 struct dev_pagemap *pgmap; in memory_failure() local
1266 pgmap = get_dev_pagemap(pfn, NULL); in memory_failure()
1267 if (pgmap) in memory_failure()
1268 return memory_failure_dev_pagemap(pfn, flags, pgmap); in memory_failure()
Dhuge_memory.c859 struct dev_pagemap *pgmap; in follow_devmap_pmd() local
889 pgmap = get_dev_pagemap(pfn, NULL); in follow_devmap_pmd()
890 if (!pgmap) in follow_devmap_pmd()
894 put_dev_pagemap(pgmap); in follow_devmap_pmd()
1007 struct dev_pagemap *pgmap; in follow_devmap_pud() local
1031 pgmap = get_dev_pagemap(pfn, NULL); in follow_devmap_pud()
1032 if (!pgmap) in follow_devmap_pud()
1036 put_dev_pagemap(pgmap); in follow_devmap_pud()
Dhmm.c962 struct hmm_devmem *devmem = page->pgmap->data; in hmm_devmem_fault()
1115 page->pgmap = &devmem->pagemap; in hmm_devmem_pages_create()
Dswap.c102 put_dev_pagemap(page->pgmap); in __put_page()
/Linux-v4.19/tools/testing/nvdimm/test/
Diomap.c107 void *__wrap_devm_memremap_pages(struct device *dev, struct dev_pagemap *pgmap) in __wrap_devm_memremap_pages() argument
109 resource_size_t offset = pgmap->res.start; in __wrap_devm_memremap_pages()
114 return devm_memremap_pages(dev, pgmap); in __wrap_devm_memremap_pages()