Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 13 files:

Smatch caller information:

drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv35.c nv35_fb_tile_comp() -> nvkm_mm_head()

Type Parameter Key Value
PARAM_VALUE 0 mm 4096-ptr_max
PARAM_VALUE 1 heap 0
PARAM_VALUE 2 type 1
PARAM_VALUE 5 align 1
PARAM_VALUE 6 pnode 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 bo->base.resv

drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv40.c nv40_instobj_new() -> nvkm_mm_head()

Type Parameter Key Value
PARAM_VALUE 0 mm 4096-ptr_max
PARAM_VALUE 1 heap 0
PARAM_VALUE 2 type 1
PARAM_VALUE 5 align 1-u32max
PARAM_VALUE 6 pnode 4096-ptr_max
DATA_SOURCE 3 size_max $1
DATA_SOURCE 4 size_min $1
FUZZY_MAX 5 align 1
RX_PATH
TASK_NOT_RUNNING
USER_DATA 3 size_max 4097-s32max
USER_DATA 4 size_min 4097-s32max
NO_OVERFLOW_SIMPLE 3 size_max
NO_OVERFLOW_SIMPLE 4 size_min
LOCK2 &imem->base.mutex
HALF_LOCKED2 &cgrp->mutex
HALF_LOCKED2 &gr->fecs.mutex
HALF_LOCKED2 &subdev->use.mutex
TYPE_LOCK (struct nvkm_instmem)->mutex

drivers/gpu/drm/nouveau/nvkm/subdev/instmem/gk20a.c gk20a_instobj_ctor_iommu() -> nvkm_mm_head()

Type Parameter Key Value
PARAM_VALUE 1 heap 0
PARAM_VALUE 2 type 1
PARAM_VALUE 3 size_max 0-1048575
PARAM_VALUE 4 size_min 0-1048575
PARAM_VALUE 6 pnode 5664288282113359872
CAPPED_DATA 3 size_max 1
CAPPED_DATA 4 size_min 1
DATA_SOURCE 3 size_max $1
DATA_SOURCE 4 size_min $1
FUZZY_MAX 3 size_max 1
FUZZY_MAX 4 size_min 1
NOSPEC 3 size_max
NOSPEC 3 size_max
NOSPEC 4 size_min
NOSPEC 4 size_min
RX_PATH
TASK_NOT_RUNNING
USER_DATA 3 size_max 2-524288[c]
USER_DATA 4 size_min 2-524288[c]
UNITS 3 size_max unit_page
UNITS 4 size_min unit_page
LOCK2 imem->mm_mutex
HALF_LOCKED2 &cgrp->mutex
HALF_LOCKED2 &gr->fecs.mutex
HALF_LOCKED2 &subdev->use.mutex

drivers/gpu/drm/nouveau/nvkm/core/memory.c nvkm_memory_tags_get() -> nvkm_mm_head()

Type Parameter Key Value
PARAM_VALUE 0 mm 4096-ptr_max
PARAM_VALUE 1 heap 0
PARAM_VALUE 2 type 1
PARAM_VALUE 5 align 1
PARAM_VALUE 6 pnode 4096-ptr_max
DATA_SOURCE 3 size_max $2
DATA_SOURCE 4 size_min $2
RX_PATH
TASK_NOT_RUNNING
LOCK2 &fb->tags.mutex
HALF_LOCKED2 &cgrp->mutex
HALF_LOCKED2 &gr->fecs.mutex
HALF_LOCKED2 &imem->mutex
HALF_LOCKED2 &subdev->use.mutex
HALF_LOCKED2 &vmm->mutex.vmm
TYPE_LOCK (struct nvkm_fb)->tags.mutex

drivers/gpu/drm/nouveau/nvkm/core/gpuobj.c nvkm_gpuobj_ctor() -> nvkm_mm_head()

Type Parameter Key Value
PARAM_VALUE 0 mm 4096-ptr_max
PARAM_VALUE 1 heap 0
PARAM_VALUE 2 type 1
PARAM_VALUE 5 align 1-s32max
PARAM_VALUE 6 pnode 4096-ptr_max
DATA_SOURCE 3 size_max $1
DATA_SOURCE 4 size_min $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &cgrp->mutex
HALF_LOCKED2 &subdev->use.mutex

drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv20.c nv20_fb_tile_comp() -> nvkm_mm_head()

Type Parameter Key Value
PARAM_VALUE 0 mm 4096-ptr_max
PARAM_VALUE 1 heap 0
PARAM_VALUE 2 type 1
PARAM_VALUE 5 align 1
PARAM_VALUE 6 pnode 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 bo->base.resv

drivers/gpu/drm/nouveau/nouveau_abi16.c nouveau_abi16_ioctl_notifierobj_alloc() -> nvkm_mm_head()

Type Parameter Key Value
PARAM_VALUE 0 mm 4096-ptr_max
PARAM_VALUE 1 heap 0
PARAM_VALUE 2 type 1
PARAM_VALUE 5 align 1
PARAM_VALUE 6 pnode 4096-ptr_max
USER_DATA 3 size_max 0-u32max[u]
USER_DATA 4 size_min 0-u32max[u]
LOCK2 &file_priv->driver_priv->mutex

drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv30.c nv30_fb_tile_comp() -> nvkm_mm_head()

Type Parameter Key Value
PARAM_VALUE 0 mm 4096-ptr_max
PARAM_VALUE 1 heap 0
PARAM_VALUE 2 type 1
PARAM_VALUE 5 align 1
PARAM_VALUE 6 pnode 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 bo->base.resv

drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv04.c nv04_instobj_new() -> nvkm_mm_head()

Type Parameter Key Value
PARAM_VALUE 0 mm 4096-ptr_max
PARAM_VALUE 1 heap 0
PARAM_VALUE 2 type 1
PARAM_VALUE 5 align 1-u32max
PARAM_VALUE 6 pnode 4096-ptr_max
DATA_SOURCE 3 size_max $1
DATA_SOURCE 4 size_min $1
FUZZY_MAX 5 align 1
RX_PATH
TASK_NOT_RUNNING
USER_DATA 3 size_max 4097-s32max
USER_DATA 4 size_min 4097-s32max
NO_OVERFLOW_SIMPLE 3 size_max
NO_OVERFLOW_SIMPLE 4 size_min
LOCK2 &imem->base.mutex
HALF_LOCKED2 &cgrp->mutex
HALF_LOCKED2 &gr->fecs.mutex
HALF_LOCKED2 &subdev->use.mutex
TYPE_LOCK (struct nvkm_instmem)->mutex

drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv40.c nv40_fb_tile_comp() -> nvkm_mm_head()

Type Parameter Key Value
PARAM_VALUE 0 mm 4096-ptr_max
PARAM_VALUE 1 heap 0
PARAM_VALUE 2 type 1
PARAM_VALUE 5 align 1
PARAM_VALUE 6 pnode 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 bo->base.resv

drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv25.c nv25_fb_tile_comp() -> nvkm_mm_head()

Type Parameter Key Value
PARAM_VALUE 0 mm 4096-ptr_max
PARAM_VALUE 1 heap 0
PARAM_VALUE 2 type 1
PARAM_VALUE 5 align 1
PARAM_VALUE 6 pnode 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 bo->base.resv

drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv36.c nv36_fb_tile_comp() -> nvkm_mm_head()

Type Parameter Key Value
PARAM_VALUE 0 mm 4096-ptr_max
PARAM_VALUE 1 heap 0
PARAM_VALUE 2 type 1
PARAM_VALUE 5 align 1
PARAM_VALUE 6 pnode 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 bo->base.resv

drivers/gpu/drm/nouveau/nvkm/subdev/fb/ram.c nvkm_ram_get() -> nvkm_mm_head()

Type Parameter Key Value
PARAM_VALUE 0 mm 4096-ptr_max
PARAM_VALUE 1 heap 1-3
PARAM_VALUE 2 type 1-2
PARAM_VALUE 5 align 0-524287
PARAM_VALUE 6 pnode 4010310517204893696
BUF_SIZE 0 mm 40
CAPPED_DATA 1 heap 1
CAPPED_DATA 2 type 1
CAPPED_DATA 4 size_min 1
DATA_SOURCE 1 heap $1
DATA_SOURCE 2 type $2
RX_PATH
TASK_NOT_RUNNING
USER_DATA 3 size_max 0-u32max[c]
USER_DATA 4 size_min 0-u32max[c]
LOCK2 &ram->mutex
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &svmm->mutex
TYPE_LOCK (struct nvkm_ram)->mutex