/Linux-v4.19/kernel/ |
D | memremap.c | 68 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/ |
D | memremap.h | 126 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()
|
D | mm_types.h | 154 struct dev_pagemap *pgmap; member
|
D | mm.h | 869 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/ |
D | pmem.c | 337 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 …]
|
D | pfn_devs.c | 544 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()
|
D | pmem.h | 26 struct dev_pagemap pgmap; member
|
D | nd.h | 370 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/ |
D | pmem.c | 24 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()
|
D | super.c | 147 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/ |
D | gup.c | 77 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 …]
|
D | memory-failure.c | 1155 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()
|
D | huge_memory.c | 859 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()
|
D | hmm.c | 962 struct hmm_devmem *devmem = page->pgmap->data; in hmm_devmem_fault() 1115 page->pgmap = &devmem->pagemap; in hmm_devmem_pages_create()
|
D | swap.c | 102 put_dev_pagemap(page->pgmap); in __put_page()
|
/Linux-v4.19/tools/testing/nvdimm/test/ |
D | iomap.c | 107 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()
|