Symbol: mmo
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1025
struct i915_mmap_offset *mmo, *mn;
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1030
spin_lock(&obj->mmo.lock);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1031
rbtree_postorder_for_each_entry_safe(mmo, mn,
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1032
&obj->mmo.offsets, offset) {
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1037
if (mmo->mmap_type == I915_MMAP_TYPE_GTT)
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1040
spin_unlock(&obj->mmo.lock);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1042
drm_vma_node_unmap(&mmo->vma_node,
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1045
spin_lock(&obj->mmo.lock);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1047
spin_unlock(&obj->mmo.lock);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1056
spin_lock(&obj->mmo.lock);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1057
rb = obj->mmo.offsets.rb_node;
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1059
struct i915_mmap_offset *mmo =
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1060
rb_entry(rb, typeof(*mmo), offset);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1062
if (mmo->mmap_type == mmap_type) {
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1063
spin_unlock(&obj->mmo.lock);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1064
return mmo;
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1067
if (mmo->mmap_type < mmap_type)
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1072
spin_unlock(&obj->mmo.lock);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1078
insert_mmo(struct drm_i915_gem_object *obj, struct i915_mmap_offset *mmo)
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1082
spin_lock(&obj->mmo.lock);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1084
p = &obj->mmo.offsets.rb_node;
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1091
if (pos->mmap_type == mmo->mmap_type) {
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1092
spin_unlock(&obj->mmo.lock);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1094
&mmo->vma_node);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1095
kfree(mmo);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1099
if (pos->mmap_type < mmo->mmap_type)
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1104
rb_link_node(&mmo->offset, rb, p);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1105
rb_insert_color(&mmo->offset, &obj->mmo.offsets);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1106
spin_unlock(&obj->mmo.lock);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1108
return mmo;
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1117
struct i915_mmap_offset *mmo;
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1122
mmo = lookup_mmo(obj, mmap_type);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1123
if (mmo)
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1126
mmo = kmalloc(sizeof(*mmo), GFP_KERNEL);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1127
if (!mmo)
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1130
mmo->obj = obj;
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1131
mmo->mmap_type = mmap_type;
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1132
drm_vma_node_reset(&mmo->vma_node);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1135
&mmo->vma_node, obj->base.size / PAGE_SIZE);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1147
&mmo->vma_node, obj->base.size / PAGE_SIZE);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1152
mmo = insert_mmo(obj, mmo);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1153
GEM_BUG_ON(lookup_mmo(obj, mmap_type) != mmo);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1156
drm_vma_node_allow_once(&mmo->vma_node, file);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1157
return mmo;
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1160
kfree(mmo);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1169
struct i915_mmap_offset *mmo;
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1190
mmo = mmap_offset_attach(obj, mmap_type, file);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1191
if (IS_ERR(mmo))
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1192
return PTR_ERR(mmo);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1194
*offset = drm_vma_node_offset_addr(&mmo->vma_node);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1318
struct i915_mmap_offset *mmo = vma->vm_private_data;
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1319
struct drm_i915_gem_object *obj = mmo->obj;
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1327
struct i915_mmap_offset *mmo = vma->vm_private_data;
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1328
struct drm_i915_gem_object *obj = mmo->obj;
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1386
struct i915_mmap_offset *mmo,
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1428
vma->vm_private_data = mmo;
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1430
switch (mmo->mmap_type) {
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1474
struct i915_mmap_offset *mmo = NULL;
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1491
mmo = container_of(node, struct i915_mmap_offset, vma_node);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1492
obj = i915_gem_object_get_rcu(mmo->obj);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1508
return i915_gem_object_mmap(obj, mmo, vma);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1527
struct i915_mmap_offset *mmo = NULL;
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1544
mmo = container_of(node, struct i915_mmap_offset, vma_node);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1545
obj = i915_gem_object_get_rcu(mmo->obj);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1581
struct i915_mmap_offset *mmo = NULL;
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1598
mmo = mmap_offset_attach(obj, mmap_type, NULL);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1599
if (IS_ERR(mmo))
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1600
return PTR_ERR(mmo);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1602
vma->vm_pgoff += drm_vma_node_start(&mmo->vma_node);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
1612
return i915_gem_object_mmap(obj, mmo, vma);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
289
struct i915_mmap_offset *mmo = area->vm_private_data;
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
290
struct drm_i915_gem_object *obj = mmo->obj;
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
313
obj_offset = area->vm_pgoff - drm_vma_node_start(&mmo->vma_node);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
376
struct i915_mmap_offset *mmo = area->vm_private_data;
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
377
struct drm_i915_gem_object *obj = mmo->obj;
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
393
obj_offset = area->vm_pgoff - drm_vma_node_start(&mmo->vma_node);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
510
vma->mmo = mmo;
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
545
struct i915_mmap_offset *mmo = area->vm_private_data;
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
546
struct drm_i915_gem_object *obj = mmo->obj;
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
626
vm_fault_cpu(struct i915_mmap_offset *mmo, struct uvm_faultinfo *ufi,
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
630
struct drm_i915_gem_object *obj = mmo->obj;
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
657
switch (mmo->mmap_type) {
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
746
vm_fault_gtt(struct i915_mmap_offset *mmo, struct uvm_faultinfo *ufi,
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
751
struct drm_i915_gem_object *obj = mmo->obj;
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
767
obj_offset = (entry->offset >> PAGE_SHIFT) - drm_vma_node_start(&mmo->vma_node);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
883
vma->mmo = mmo;
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
924
struct i915_mmap_offset *mmo = NULL;
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
931
mmo = container_of(node, struct i915_mmap_offset, vma_node);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
933
if (!mmo) {
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
938
KASSERT(gem_obj == &mmo->obj->base);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
940
if (mmo->mmap_type == I915_MMAP_TYPE_GTT)
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
941
return vm_fault_gtt(mmo, ufi, vaddr, access_type);
sys/dev/pci/drm/i915/gem/i915_gem_mman.c
943
return vm_fault_cpu(mmo, ufi, access_type);
sys/dev/pci/drm/i915/gem/i915_gem_object.c
125
mtx_init(&obj->mmo.lock, IPL_NONE);
sys/dev/pci/drm/i915/gem/i915_gem_object.c
126
obj->mmo.offsets = RB_ROOT;
sys/dev/pci/drm/i915/gem/i915_gem_object.c
251
struct i915_mmap_offset *mmo, *mn;
sys/dev/pci/drm/i915/gem/i915_gem_object.c
274
spin_lock(&obj->mmo.lock);
sys/dev/pci/drm/i915/gem/i915_gem_object.c
275
rbtree_postorder_for_each_entry_safe(mmo, mn, &obj->mmo.offsets, offset)
sys/dev/pci/drm/i915/gem/i915_gem_object.c
276
drm_vma_node_revoke(&mmo->vma_node, file);
sys/dev/pci/drm/i915/gem/i915_gem_object.c
277
spin_unlock(&obj->mmo.lock);
sys/dev/pci/drm/i915/gem/i915_gem_object.c
331
if (!RB_EMPTY_ROOT(&obj->mmo.offsets)) {
sys/dev/pci/drm/i915/gem/i915_gem_object.c
332
struct i915_mmap_offset *mmo, *mn;
sys/dev/pci/drm/i915/gem/i915_gem_object.c
336
rbtree_postorder_for_each_entry_safe(mmo, mn,
sys/dev/pci/drm/i915/gem/i915_gem_object.c
337
&obj->mmo.offsets,
sys/dev/pci/drm/i915/gem/i915_gem_object.c
340
&mmo->vma_node);
sys/dev/pci/drm/i915/gem/i915_gem_object.c
341
kfree(mmo);
sys/dev/pci/drm/i915/gem/i915_gem_object.c
343
obj->mmo.offsets = RB_ROOT;
sys/dev/pci/drm/i915/gem/i915_gem_object_types.h
335
} mmo;
sys/dev/pci/drm/i915/gt/intel_reset.c
860
if (!vma->mmo)
sys/dev/pci/drm/i915/gt/intel_reset.c
863
node = &vma->mmo->vma_node;
sys/dev/pci/drm/i915/i915_vma.c
1948
node = &vma->mmo->vma_node;
sys/dev/pci/drm/i915/i915_vma_types.h
156
struct i915_mmap_offset *mmo;
sys/dev/sbus/cgsix.c
503
struct mmo *mo;
sys/dev/sbus/cgsix.c
507
static struct mmo mmo[] = {
sys/dev/sbus/cgsix.c
519
#define NMMO (sizeof mmo / sizeof *mmo)
sys/dev/sbus/cgsix.c
526
for (mo = mmo; mo < &mmo[NMMO]; mo++) {