Symbol: dev_dax
drivers/dax/bus.c
1004
if (dev_dax->nr_range == 0)
drivers/dax/bus.c
1006
if (strcmp(res->name, dev_name(&dev_dax->dev)) != 0)
drivers/dax/bus.c
1008
last = &dev_dax->ranges[dev_dax->nr_range - 1];
drivers/dax/bus.c
1011
for (i = 0; i < dev_dax->nr_range - 1; i++) {
drivers/dax/bus.c
1012
struct dev_dax_range *dax_range = &dev_dax->ranges[i];
drivers/dax/bus.c
1022
struct dev_dax *dev_dax, resource_size_t size)
drivers/dax/bus.c
1025
resource_size_t dev_size = dev_dax_size(dev_dax);
drivers/dax/bus.c
1027
struct device *dev = &dev_dax->dev;
drivers/dax/bus.c
1039
return dev_dax_shrink(dev_dax, size);
drivers/dax/bus.c
1042
if (dev_WARN_ONCE(dev, !alloc_is_aligned(dev_dax, to_alloc),
drivers/dax/bus.c
1054
return alloc_dev_dax_range(dev_dax, dax_region->res.start, to_alloc);
drivers/dax/bus.c
1063
rc = alloc_dev_dax_range(dev_dax, dax_region->res.start, alloc);
drivers/dax/bus.c
1079
if (adjust_ok(dev_dax, res)) {
drivers/dax/bus.c
1080
rc = adjust_dev_dax_range(dev_dax, res, resource_size(res) + alloc);
drivers/dax/bus.c
1083
rc = alloc_dev_dax_range(dev_dax, res->end + 1, alloc);
drivers/dax/bus.c
1099
struct dev_dax *dev_dax = to_dev_dax(dev);
drivers/dax/bus.c
1100
struct dax_region *dax_region = dev_dax->region;
drivers/dax/bus.c
1106
if (!alloc_is_aligned(dev_dax, val)) {
drivers/dax/bus.c
1122
rc = dev_dax_resize(dax_region, dev_dax, val);
drivers/dax/bus.c
1168
struct dev_dax *dev_dax = to_dev_dax(dev);
drivers/dax/bus.c
1169
struct dax_region *dax_region = dev_dax->region;
drivers/dax/bus.c
1192
if (alloc_is_aligned(dev_dax, to_alloc))
drivers/dax/bus.c
1193
rc = alloc_dev_dax_range(dev_dax, r.start, to_alloc);
drivers/dax/bus.c
1204
struct dev_dax *dev_dax = to_dev_dax(dev);
drivers/dax/bus.c
1206
return sysfs_emit(buf, "%d\n", dev_dax->align);
drivers/dax/bus.c
1209
static ssize_t dev_dax_validate_align(struct dev_dax *dev_dax)
drivers/dax/bus.c
1211
struct device *dev = &dev_dax->dev;
drivers/dax/bus.c
1214
for (i = 0; i < dev_dax->nr_range; i++) {
drivers/dax/bus.c
1215
size_t len = range_len(&dev_dax->ranges[i].range);
drivers/dax/bus.c
1217
if (!alloc_is_aligned(dev_dax, len)) {
drivers/dax/bus.c
1219
__func__, dev_dax->align, i);
drivers/dax/bus.c
1230
struct dev_dax *dev_dax = to_dev_dax(dev);
drivers/dax/bus.c
1231
struct dax_region *dax_region = dev_dax->region;
drivers/dax/bus.c
1260
align_save = dev_dax->align;
drivers/dax/bus.c
1261
dev_dax->align = val;
drivers/dax/bus.c
1262
rc = dev_dax_validate_align(dev_dax);
drivers/dax/bus.c
1264
dev_dax->align = align_save;
drivers/dax/bus.c
1272
static int dev_dax_target_node(struct dev_dax *dev_dax)
drivers/dax/bus.c
1274
struct dax_region *dax_region = dev_dax->region;
drivers/dax/bus.c
1282
struct dev_dax *dev_dax = to_dev_dax(dev);
drivers/dax/bus.c
1284
return sysfs_emit(buf, "%d\n", dev_dax_target_node(dev_dax));
drivers/dax/bus.c
1291
struct dev_dax *dev_dax = to_dev_dax(dev);
drivers/dax/bus.c
1292
struct dax_region *dax_region = dev_dax->region;
drivers/dax/bus.c
1295
if (dev_dax->nr_range < 1)
drivers/dax/bus.c
1298
start = dev_dax->ranges[0].range.start;
drivers/dax/bus.c
1325
struct dev_dax *dev_dax = to_dev_dax(dev);
drivers/dax/bus.c
1327
return sysfs_emit(buf, "%d\n", dev_dax->memmap_on_memory);
drivers/dax/bus.c
1334
struct dev_dax *dev_dax = to_dev_dax(dev);
drivers/dax/bus.c
1351
if (dev_dax->memmap_on_memory != val && dev->driver &&
drivers/dax/bus.c
1357
dev_dax->memmap_on_memory = val;
drivers/dax/bus.c
1367
struct dev_dax *dev_dax = to_dev_dax(dev);
drivers/dax/bus.c
1368
struct dax_region *dax_region = dev_dax->region;
drivers/dax/bus.c
1370
if (a == &dev_attr_target_node.attr && dev_dax_target_node(dev_dax) < 0)
drivers/dax/bus.c
1406
struct dev_dax *dev_dax = to_dev_dax(dev);
drivers/dax/bus.c
1407
struct dax_device *dax_dev = dev_dax->dax_dev;
drivers/dax/bus.c
1410
free_dev_dax_id(dev_dax);
drivers/dax/bus.c
1411
kfree(dev_dax->pgmap);
drivers/dax/bus.c
1412
kfree(dev_dax);
drivers/dax/bus.c
1420
static struct dev_dax *__devm_create_dev_dax(struct dev_dax_data *data)
drivers/dax/bus.c
1425
struct dev_dax *dev_dax;
drivers/dax/bus.c
1430
dev_dax = kzalloc_obj(*dev_dax);
drivers/dax/bus.c
1431
if (!dev_dax)
drivers/dax/bus.c
1434
dev_dax->region = dax_region;
drivers/dax/bus.c
1442
dev_dax->id = data->id;
drivers/dax/bus.c
1450
rc = alloc_dev_dax_id(dev_dax);
drivers/dax/bus.c
1455
dev = &dev_dax->dev;
drivers/dax/bus.c
1457
dev_set_name(dev, "dax%d.%d", dax_region->id, dev_dax->id);
drivers/dax/bus.c
1459
rc = alloc_dev_dax_range(dev_dax, dax_region->res.start, data->size);
drivers/dax/bus.c
1467
dev_dax->pgmap = kmemdup(data->pgmap,
drivers/dax/bus.c
1469
if (!dev_dax->pgmap) {
drivers/dax/bus.c
1479
dax_dev = alloc_dax(dev_dax, NULL);
drivers/dax/bus.c
1491
dev_dax->dax_dev = dax_dev;
drivers/dax/bus.c
1492
dev_dax->target_node = dax_region->target_node;
drivers/dax/bus.c
1493
dev_dax->align = dax_region->align;
drivers/dax/bus.c
1494
ida_init(&dev_dax->ida);
drivers/dax/bus.c
1496
dev_dax->memmap_on_memory = data->memmap_on_memory;
drivers/dax/bus.c
1506
kill_dev_dax(dev_dax);
drivers/dax/bus.c
1516
if (dev_dax->nr_range && range_len(&dev_dax->ranges[0].range)) {
drivers/dax/bus.c
1517
rc = devm_register_dax_mapping(dev_dax, 0);
drivers/dax/bus.c
1522
return dev_dax;
drivers/dax/bus.c
1525
kfree(dev_dax->pgmap);
drivers/dax/bus.c
1527
free_dev_dax_ranges(dev_dax);
drivers/dax/bus.c
1529
free_dev_dax_id(dev_dax);
drivers/dax/bus.c
1531
kfree(dev_dax);
drivers/dax/bus.c
1536
struct dev_dax *devm_create_dev_dax(struct dev_dax_data *data)
drivers/dax/bus.c
1538
struct dev_dax *dev_dax;
drivers/dax/bus.c
1541
dev_dax = __devm_create_dev_dax(data);
drivers/dax/bus.c
1544
return dev_dax;
drivers/dax/bus.c
181
bool static_dev_dax(struct dev_dax *dev_dax)
drivers/dax/bus.c
183
return is_static(dev_dax->region);
drivers/dax/bus.c
187
static u64 dev_dax_size(struct dev_dax *dev_dax)
drivers/dax/bus.c
194
for (i = 0; i < dev_dax->nr_range; i++)
drivers/dax/bus.c
195
size += range_len(&dev_dax->ranges[i].range);
drivers/dax/bus.c
203
struct dev_dax *dev_dax = to_dev_dax(dev);
drivers/dax/bus.c
204
struct dax_region *dax_region = dev_dax->region;
drivers/dax/bus.c
211
size = dev_dax_size(dev_dax);
drivers/dax/bus.c
214
if (size == 0 || dev_dax->id < 0)
drivers/dax/bus.c
217
rc = dax_drv->probe(dev_dax);
drivers/dax/bus.c
235
struct dev_dax *dev_dax = to_dev_dax(dev);
drivers/dax/bus.c
238
dax_drv->remove(dev_dax);
drivers/dax/bus.c
367
static struct dev_dax *__devm_create_dev_dax(struct dev_dax_data *data);
drivers/dax/bus.c
399
struct dev_dax *dev_dax = __devm_create_dev_dax(&data);
drivers/dax/bus.c
401
if (IS_ERR(dev_dax))
drivers/dax/bus.c
402
rc = PTR_ERR(dev_dax);
drivers/dax/bus.c
412
dax_region->seed = &dev_dax->dev;
drivers/dax/bus.c
413
dax_region->youngest = &dev_dax->dev;
drivers/dax/bus.c
423
void kill_dev_dax(struct dev_dax *dev_dax)
drivers/dax/bus.c
425
struct dax_device *dax_dev = dev_dax->dax_dev;
drivers/dax/bus.c
436
if (!static_dev_dax(dev_dax))
drivers/dax/bus.c
437
dev_dax->pgmap = NULL;
drivers/dax/bus.c
441
static void trim_dev_dax_range(struct dev_dax *dev_dax)
drivers/dax/bus.c
443
int i = dev_dax->nr_range - 1;
drivers/dax/bus.c
444
struct range *range = &dev_dax->ranges[i].range;
drivers/dax/bus.c
445
struct dax_region *dax_region = dev_dax->region;
drivers/dax/bus.c
448
dev_dbg(&dev_dax->dev, "delete range[%d]: %#llx:%#llx\n", i,
drivers/dax/bus.c
453
if (--dev_dax->nr_range == 0) {
drivers/dax/bus.c
454
kfree(dev_dax->ranges);
drivers/dax/bus.c
455
dev_dax->ranges = NULL;
drivers/dax/bus.c
459
static void free_dev_dax_ranges(struct dev_dax *dev_dax)
drivers/dax/bus.c
461
while (dev_dax->nr_range)
drivers/dax/bus.c
462
trim_dev_dax_range(dev_dax);
drivers/dax/bus.c
467
struct dev_dax *dev_dax = to_dev_dax(dev);
drivers/dax/bus.c
472
kill_dev_dax(dev_dax);
drivers/dax/bus.c
474
free_dev_dax_ranges(dev_dax);
drivers/dax/bus.c
493
static int __free_dev_dax_id(struct dev_dax *dev_dax)
drivers/dax/bus.c
496
int rc = dev_dax->id;
drivers/dax/bus.c
500
if (!dev_dax->dyn_id || dev_dax->id < 0)
drivers/dax/bus.c
502
dax_region = dev_dax->region;
drivers/dax/bus.c
503
ida_free(&dax_region->ida, dev_dax->id);
drivers/dax/bus.c
505
dev_dax->id = -1;
drivers/dax/bus.c
509
static int free_dev_dax_id(struct dev_dax *dev_dax)
drivers/dax/bus.c
516
rc = __free_dev_dax_id(dev_dax);
drivers/dax/bus.c
521
static int alloc_dev_dax_id(struct dev_dax *dev_dax)
drivers/dax/bus.c
523
struct dax_region *dax_region = dev_dax->region;
drivers/dax/bus.c
530
dev_dax->dyn_id = true;
drivers/dax/bus.c
531
dev_dax->id = id;
drivers/dax/bus.c
539
struct dev_dax *dev_dax;
drivers/dax/bus.c
553
dev_dax = to_dev_dax(victim);
drivers/dax/bus.c
555
if (victim->driver || dev_dax_size(dev_dax))
drivers/dax/bus.c
564
if (dev_dax->id > 0) {
drivers/dax/bus.c
565
do_del = __free_dev_dax_id(dev_dax) >= 0;
drivers/dax/bus.c
685
struct dev_dax *dev_dax = to_dev_dax(parent);
drivers/dax/bus.c
687
ida_free(&dev_dax->ida, mapping->id);
drivers/dax/bus.c
696
struct dev_dax *dev_dax = to_dev_dax(dev->parent);
drivers/dax/bus.c
700
dev_dax->ranges[mapping->range_id].mapping = NULL;
drivers/dax/bus.c
709
struct dev_dax *dev_dax = to_dev_dax(dev->parent);
drivers/dax/bus.c
71
struct dev_dax *dev_dax = to_dev_dax(dev);
drivers/dax/bus.c
720
return &dev_dax->ranges[mapping->range_id];
drivers/dax/bus.c
73
if (dev_dax->region->res.flags & IORESOURCE_DAX_KMEM)
drivers/dax/bus.c
797
static int devm_register_dax_mapping(struct dev_dax *dev_dax, int range_id)
drivers/dax/bus.c
799
struct dax_region *dax_region = dev_dax->region;
drivers/dax/bus.c
806
if (dev_WARN_ONCE(&dev_dax->dev, !dax_region->dev->driver,
drivers/dax/bus.c
814
mapping->id = ida_alloc(&dev_dax->ida, GFP_KERNEL);
drivers/dax/bus.c
819
dev_dax->ranges[range_id].mapping = mapping;
drivers/dax/bus.c
822
dev->parent = &dev_dax->dev;
drivers/dax/bus.c
839
static int alloc_dev_dax_range(struct dev_dax *dev_dax, u64 start,
drivers/dax/bus.c
842
struct dax_region *dax_region = dev_dax->region;
drivers/dax/bus.c
844
struct device *dev = &dev_dax->dev;
drivers/dax/bus.c
854
if (dev_WARN_ONCE(dev, dev_dax->nr_range,
drivers/dax/bus.c
865
ranges = krealloc(dev_dax->ranges, sizeof(*ranges)
drivers/dax/bus.c
866
* (dev_dax->nr_range + 1), GFP_KERNEL);
drivers/dax/bus.c
872
for (i = 0; i < dev_dax->nr_range; i++)
drivers/dax/bus.c
874
dev_dax->ranges = ranges;
drivers/dax/bus.c
875
ranges[dev_dax->nr_range++] = (struct dev_dax_range) {
drivers/dax/bus.c
883
dev_dbg(dev, "alloc range[%d]: %pa:%pa\n", dev_dax->nr_range - 1,
drivers/dax/bus.c
890
if (!device_is_registered(&dev_dax->dev))
drivers/dax/bus.c
893
rc = devm_register_dax_mapping(dev_dax, dev_dax->nr_range - 1);
drivers/dax/bus.c
895
trim_dev_dax_range(dev_dax);
drivers/dax/bus.c
900
static int adjust_dev_dax_range(struct dev_dax *dev_dax, struct resource *res, resource_size_t size)
drivers/dax/bus.c
902
int last_range = dev_dax->nr_range - 1;
drivers/dax/bus.c
903
struct dev_dax_range *dax_range = &dev_dax->ranges[last_range];
drivers/dax/bus.c
906
struct device *dev = &dev_dax->dev;
drivers/dax/bus.c
933
struct dev_dax *dev_dax = to_dev_dax(dev);
drivers/dax/bus.c
940
size = dev_dax_size(dev_dax);
drivers/dax/bus.c
946
static bool alloc_is_aligned(struct dev_dax *dev_dax, resource_size_t size)
drivers/dax/bus.c
952
return IS_ALIGNED(size, max_t(unsigned long, dev_dax->align, memremap_compat_align()));
drivers/dax/bus.c
955
static int dev_dax_shrink(struct dev_dax *dev_dax, resource_size_t size)
drivers/dax/bus.c
957
resource_size_t to_shrink = dev_dax_size(dev_dax) - size;
drivers/dax/bus.c
958
struct dax_region *dax_region = dev_dax->region;
drivers/dax/bus.c
959
struct device *dev = &dev_dax->dev;
drivers/dax/bus.c
962
for (i = dev_dax->nr_range - 1; i >= 0; i--) {
drivers/dax/bus.c
963
struct range *range = &dev_dax->ranges[i].range;
drivers/dax/bus.c
964
struct dax_mapping *mapping = dev_dax->ranges[i].mapping;
drivers/dax/bus.c
972
trim_dev_dax_range(dev_dax);
drivers/dax/bus.c
986
if (dev_WARN_ONCE(dev, !adjust || i != dev_dax->nr_range - 1,
drivers/dax/bus.c
989
return adjust_dev_dax_range(dev_dax, adjust, range_len(range)
drivers/dax/bus.c
999
static bool adjust_ok(struct dev_dax *dev_dax, struct resource *res)
drivers/dax/bus.h
29
struct dev_dax *devm_create_dev_dax(struct dev_dax_data *data);
drivers/dax/bus.h
40
int (*probe)(struct dev_dax *dev);
drivers/dax/bus.h
41
void (*remove)(struct dev_dax *dev);
drivers/dax/bus.h
49
void kill_dev_dax(struct dev_dax *dev_dax);
drivers/dax/bus.h
50
bool static_dev_dax(struct dev_dax *dev_dax);
drivers/dax/bus.h
8
struct dev_dax;
drivers/dax/dax-private.h
105
static inline struct dev_dax *to_dev_dax(struct device *dev)
drivers/dax/dax-private.h
107
return container_of(dev, struct dev_dax, dev);
drivers/dax/dax-private.h
115
phys_addr_t dax_pgoff_to_phys(struct dev_dax *dev_dax, pgoff_t pgoff, unsigned long size);
drivers/dax/device.c
109
static vm_fault_t __dev_dax_pte_fault(struct dev_dax *dev_dax,
drivers/dax/device.c
112
struct device *dev = &dev_dax->dev;
drivers/dax/device.c
117
if (check_vma(dev_dax, vmf->vma, __func__))
drivers/dax/device.c
120
if (dev_dax->align > PAGE_SIZE) {
drivers/dax/device.c
122
dev_dax->align, fault_size);
drivers/dax/device.c
126
if (fault_size != dev_dax->align)
drivers/dax/device.c
129
phys = dax_pgoff_to_phys(dev_dax, vmf->pgoff, PAGE_SIZE);
drivers/dax/device.c
143
static vm_fault_t __dev_dax_pmd_fault(struct dev_dax *dev_dax,
drivers/dax/device.c
147
struct device *dev = &dev_dax->dev;
drivers/dax/device.c
153
if (check_vma(dev_dax, vmf->vma, __func__))
drivers/dax/device.c
156
if (dev_dax->align > PMD_SIZE) {
drivers/dax/device.c
158
dev_dax->align, fault_size);
drivers/dax/device.c
16
static int __check_vma(struct dev_dax *dev_dax, vma_flags_t flags,
drivers/dax/device.c
162
if (fault_size < dev_dax->align)
drivers/dax/device.c
164
else if (fault_size > dev_dax->align)
drivers/dax/device.c
173
phys = dax_pgoff_to_phys(dev_dax, pgoff, PMD_SIZE);
drivers/dax/device.c
188
static vm_fault_t __dev_dax_pud_fault(struct dev_dax *dev_dax,
drivers/dax/device.c
192
struct device *dev = &dev_dax->dev;
drivers/dax/device.c
199
if (check_vma(dev_dax, vmf->vma, __func__))
drivers/dax/device.c
20
struct device *dev = &dev_dax->dev;
drivers/dax/device.c
202
if (dev_dax->align > PUD_SIZE) {
drivers/dax/device.c
204
dev_dax->align, fault_size);
drivers/dax/device.c
208
if (fault_size < dev_dax->align)
drivers/dax/device.c
210
else if (fault_size > dev_dax->align)
drivers/dax/device.c
219
phys = dax_pgoff_to_phys(dev_dax, pgoff, PUD_SIZE);
drivers/dax/device.c
23
if (!dax_alive(dev_dax->dax_dev))
drivers/dax/device.c
233
static vm_fault_t __dev_dax_pud_fault(struct dev_dax *dev_dax,
drivers/dax/device.c
245
struct dev_dax *dev_dax = filp->private_data;
drivers/dax/device.c
247
dev_dbg(&dev_dax->dev, "%s: op=%s addr=%#lx order=%d\n", current->comm,
drivers/dax/device.c
253
rc = __dev_dax_pte_fault(dev_dax, vmf);
drivers/dax/device.c
255
rc = __dev_dax_pmd_fault(dev_dax, vmf);
drivers/dax/device.c
257
rc = __dev_dax_pud_fault(dev_dax, vmf);
drivers/dax/device.c
274
struct dev_dax *dev_dax = filp->private_data;
drivers/dax/device.c
276
if (!IS_ALIGNED(addr, dev_dax->align))
drivers/dax/device.c
284
struct dev_dax *dev_dax = filp->private_data;
drivers/dax/device.c
286
return dev_dax->align;
drivers/dax/device.c
299
struct dev_dax *dev_dax = filp->private_data;
drivers/dax/device.c
302
dev_dbg(&dev_dax->dev, "trace\n");
drivers/dax/device.c
309
rc = __check_vma(dev_dax, desc->vma_flags, desc->start, desc->end, filp,
drivers/dax/device.c
326
struct dev_dax *dev_dax = filp ? filp->private_data : NULL;
drivers/dax/device.c
328
if (!dev_dax || addr)
drivers/dax/device.c
331
align = dev_dax->align;
drivers/dax/device.c
34
mask = dev_dax->align - 1;
drivers/dax/device.c
360
struct dev_dax *dev_dax = dax_get_private(dax_dev);
drivers/dax/device.c
362
dev_dbg(&dev_dax->dev, "trace\n");
drivers/dax/device.c
369
filp->private_data = dev_dax;
drivers/dax/device.c
377
struct dev_dax *dev_dax = filp->private_data;
drivers/dax/device.c
379
dev_dbg(&dev_dax->dev, "trace\n");
drivers/dax/device.c
398
static void dev_dax_kill(void *dev_dax)
drivers/dax/device.c
400
kill_dev_dax(dev_dax);
drivers/dax/device.c
403
static int dev_dax_probe(struct dev_dax *dev_dax)
drivers/dax/device.c
405
struct dax_device *dax_dev = dev_dax->dax_dev;
drivers/dax/device.c
406
struct device *dev = &dev_dax->dev;
drivers/dax/device.c
413
if (static_dev_dax(dev_dax)) {
drivers/dax/device.c
414
if (dev_dax->nr_range > 1) {
drivers/dax/device.c
420
pgmap = dev_dax->pgmap;
drivers/dax/device.c
422
if (dev_dax->pgmap) {
drivers/dax/device.c
429
struct_size(pgmap, ranges, dev_dax->nr_range - 1),
drivers/dax/device.c
434
pgmap->nr_range = dev_dax->nr_range;
drivers/dax/device.c
435
dev_dax->pgmap = pgmap;
drivers/dax/device.c
437
for (i = 0; i < dev_dax->nr_range; i++) {
drivers/dax/device.c
438
struct range *range = &dev_dax->ranges[i].range;
drivers/dax/device.c
443
for (i = 0; i < dev_dax->nr_range; i++) {
drivers/dax/device.c
444
struct range *range = &dev_dax->ranges[i].range;
drivers/dax/device.c
455
if (dev_dax->align > PAGE_SIZE)
drivers/dax/device.c
457
order_base_2(dev_dax->align >> PAGE_SHIFT);
drivers/dax/device.c
476
return devm_add_action_or_reset(dev, dev_dax_kill, dev_dax);
drivers/dax/device.c
53
static int check_vma(struct dev_dax *dev_dax, struct vm_area_struct *vma,
drivers/dax/device.c
56
return __check_vma(dev_dax, vma->flags, vma->vm_start, vma->vm_end,
drivers/dax/device.c
61
__weak phys_addr_t dax_pgoff_to_phys(struct dev_dax *dev_dax, pgoff_t pgoff,
drivers/dax/device.c
66
for (i = 0; i < dev_dax->nr_range; i++) {
drivers/dax/device.c
67
struct dev_dax_range *dax_range = &dev_dax->ranges[i];
drivers/dax/device.c
88
struct dev_dax *dev_dax = filp->private_data;
drivers/dax/device.c
92
if (dev_dax->pgmap->vmemmap_shift)
drivers/dax/kmem.c
100
orig_len += range_len(&dev_dax->ranges[i].range);
drivers/dax/kmem.c
101
rc = dax_kmem_range(dev_dax, i, &range);
drivers/dax/kmem.c
124
data = kzalloc_flex(*data, res, dev_dax->nr_range);
drivers/dax/kmem.c
137
for (i = 0; i < dev_dax->nr_range; i++) {
drivers/dax/kmem.c
141
rc = dax_kmem_range(dev_dax, i, &range);
drivers/dax/kmem.c
170
if (dev_dax->memmap_on_memory)
drivers/dax/kmem.c
209
static void dev_dax_kmem_remove(struct dev_dax *dev_dax)
drivers/dax/kmem.c
212
int node = dev_dax->target_node;
drivers/dax/kmem.c
213
struct device *dev = &dev_dax->dev;
drivers/dax/kmem.c
222
for (i = 0; i < dev_dax->nr_range; i++) {
drivers/dax/kmem.c
226
rc = dax_kmem_range(dev_dax, i, &range);
drivers/dax/kmem.c
244
if (success >= dev_dax->nr_range) {
drivers/dax/kmem.c
260
static void dev_dax_kmem_remove(struct dev_dax *dev_dax)
drivers/dax/kmem.c
31
static int dax_kmem_range(struct dev_dax *dev_dax, int i, struct range *r)
drivers/dax/kmem.c
33
struct dev_dax_range *dax_range = &dev_dax->ranges[i];
drivers/dax/kmem.c
68
static int dev_dax_kmem_probe(struct dev_dax *dev_dax)
drivers/dax/kmem.c
70
struct device *dev = &dev_dax->dev;
drivers/dax/kmem.c
85
numa_node = dev_dax->target_node;
drivers/dax/kmem.c
97
for (i = 0; i < dev_dax->nr_range; i++) {
drivers/dax/pmem.c
9
static struct dev_dax *__dax_pmem_probe(struct device *dev)
tools/testing/nvdimm/dax-dev.c
14
for (i = 0; i < dev_dax->nr_range; i++) {
tools/testing/nvdimm/dax-dev.c
15
struct dev_dax_range *dax_range = &dev_dax->ranges[i];
tools/testing/nvdimm/dax-dev.c
28
if (dev_dax->region->align > PAGE_SIZE)
tools/testing/nvdimm/dax-dev.c
9
phys_addr_t dax_pgoff_to_phys(struct dev_dax *dev_dax, pgoff_t pgoff,