Home
last modified time | relevance | path

Searched refs:dev_dax (Results 1 – 7 of 7) sorted by relevance

/linux/drivers/dax/
H A Dbus.c71 struct dev_dax *dev_dax = to_dev_dax(dev); in dax_match_type() local
73 if (dev_dax->region->res.flags & IORESOURCE_DAX_KMEM) in dax_match_type()
181 bool static_dev_dax(struct dev_dax *dev_dax) in static_dev_dax() argument
183 return is_static(dev_dax->region); in static_dev_dax()
187 static u64 dev_dax_size(struct dev_dax *dev_dax) in dev_dax_size() argument
194 for (i = 0; i < dev_dax->nr_range; i++) in dev_dax_size()
195 size += range_len(&dev_dax->ranges[i].range); in dev_dax_size()
203 struct dev_dax *dev_dax = to_dev_dax(dev); in dax_bus_probe() local
204 struct dax_region *dax_region = dev_dax->region; in dax_bus_probe()
211 size = dev_dax_size(dev_dax); in dax_bus_probe()
[all …]
H A Ddevice.c17 static int check_vma(struct dev_dax *dev_dax, struct vm_area_struct *vma, in check_vma() argument
20 struct device *dev = &dev_dax->dev; in check_vma()
23 if (!dax_alive(dev_dax->dax_dev)) in check_vma()
34 mask = dev_dax->align - 1; in check_vma()
54 __weak phys_addr_t dax_pgoff_to_phys(struct dev_dax *dev_dax, pgoff_t pgoff, in dax_pgoff_to_phys() argument
59 for (i = 0; i < dev_dax->nr_range; i++) { in dax_pgoff_to_phys()
60 struct dev_dax_range *dax_range = &dev_dax->ranges[i]; in dax_pgoff_to_phys()
81 struct dev_dax *dev_dax = filp->private_data; in dax_set_mapping() local
85 if (dev_dax->pgmap->vmemmap_shift) in dax_set_mapping()
103 static vm_fault_t __dev_dax_pte_fault(struct dev_dax *dev_dax, in __dev_dax_pte_fault() argument
[all …]
H A Dkmem.c31 static int dax_kmem_range(struct dev_dax *dev_dax, int i, struct range *r) in dax_kmem_range() argument
33 struct dev_dax_range *dax_range = &dev_dax->ranges[i]; in dax_kmem_range()
68 static int dev_dax_kmem_probe(struct dev_dax *dev_dax) in dev_dax_kmem_probe() argument
70 struct device *dev = &dev_dax->dev; in dev_dax_kmem_probe()
85 numa_node = dev_dax->target_node; in dev_dax_kmem_probe()
97 for (i = 0; i < dev_dax->nr_range; i++) { in dev_dax_kmem_probe()
100 rc = dax_kmem_range(dev_dax, i, &range); in dev_dax_kmem_probe()
117 data = kzalloc(struct_size(data, res, dev_dax->nr_range), GFP_KERNEL); in dev_dax_kmem_probe()
130 for (i = 0; i < dev_dax->nr_range; i++) { in dev_dax_kmem_probe()
134 rc = dax_kmem_range(dev_dax, i, &range); in dev_dax_kmem_probe()
[all …]
H A Dbus.h8 struct dev_dax;
29 struct dev_dax *devm_create_dev_dax(struct dev_dax_data *data);
40 int (*probe)(struct dev_dax *dev);
41 void (*remove)(struct dev_dax *dev);
49 void kill_dev_dax(struct dev_dax *dev_dax);
50 bool static_dev_dax(struct dev_dax *dev_dax);
H A Ddax-private.h63 struct dev_dax { struct
89 static inline struct dev_dax *to_dev_dax(struct device *dev) in to_dev_dax() argument
91 return container_of(dev, struct dev_dax, dev); in to_dev_dax()
99 phys_addr_t dax_pgoff_to_phys(struct dev_dax *dev_dax, pgoff_t pgoff, unsigned long size);
/linux/tools/testing/nvdimm/
H A Ddax-dev.c9 phys_addr_t dax_pgoff_to_phys(struct dev_dax *dev_dax, pgoff_t pgoff, in dax_pgoff_to_phys() argument
14 for (i = 0; i < dev_dax->nr_range; i++) { in dax_pgoff_to_phys()
15 struct dev_dax_range *dax_range = &dev_dax->ranges[i]; in dax_pgoff_to_phys()
28 if (dev_dax->region->align > PAGE_SIZE) in dax_pgoff_to_phys()
/linux/mm/
H A DKconfig494 # to enable the feature of HugeTLB/dev_dax vmemmap optimization.