Defined in 2 files as a function:
- drivers/gpu/buddy.c, line 202 (as a function)
- drivers/gpu/drm/i915/i915_gem_evict.c, line 96 (as a function)
Referenced in 2 files:
Smatch caller information:
drivers/gpu/buddy.c __gpu_buddy_free() -> mark_free()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 1 | block | 4096-ptr_max |
| PARAM_VALUE | 1 | block->parent | 0,4096-ptr_max |
| DATA_SOURCE | 0 | mm | $0 |
| DATA_SOURCE | 1 | block | $1 [m] |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| NO_OVERFLOW_SIMPLE | 0 | mm->avail | |
| NO_OVERFLOW_SIMPLE | 0 | mm->chunk_size | |
| NO_OVERFLOW_SIMPLE | 0 | mm->n_roots | |
| NO_OVERFLOW_SIMPLE | 0 | mm->size |
drivers/gpu/buddy.c gpu_buddy_block_trim() -> mark_free()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 1 | block | 4096-ptr_max |
| BUF_SIZE | 0 | mm | (-1),80 |
| BUF_SIZE | 0 | mm | (-1),80 |
| DATA_SOURCE | 0 | mm | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| NO_OVERFLOW_SIMPLE | 0 | mm->avail | |
| NO_OVERFLOW_SIMPLE | 0 | mm->chunk_size | |
| NO_OVERFLOW_SIMPLE | 0 | mm->size | |
| HALF_LOCKED2 | &mgr->lock |
drivers/gpu/buddy.c gpu_buddy_init() -> mark_free()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->chunk_size | 4096-u32max |
| PARAM_VALUE | 0 | mm->clear_avail | 0 |
| PARAM_VALUE | 0 | mm->free_scoreboard | 16,4096-ptr_max |
| PARAM_VALUE | 0 | mm->free_trees | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->max_order | 0-51 |
| PARAM_VALUE | 0 | mm->n_roots | 0-64 |
| PARAM_VALUE | 0 | mm->roots | 16,4096-ptr_max |
| PARAM_VALUE | 0 | mm->used_scoreboard | 16,4096-ptr_max |
| PARAM_VALUE | 1 | block | 4096-ptr_max |
| PARAM_VALUE | 1 | block->parent | 0 |
| BUF_SIZE | 0 | mm->free_scoreboard | 8 |
| BUF_SIZE | 0 | mm->free_trees | 8 |
| BUF_SIZE | 0 | mm->roots | 8 |
| BUF_SIZE | 0 | mm->used_scoreboard | 8 |
| CAPPED_DATA | 0 | mm->avail | 1 |
| CAPPED_DATA | 0 | mm->chunk_size | 1 |
| CAPPED_DATA | 0 | mm->max_order | 1 |
| CAPPED_DATA | 0 | mm->size | 1 |
| DATA_SOURCE | 0 | mm | $0 |
| DATA_SOURCE | 1 | block | r gpu_block_alloc |
| FUZZY_MAX | 0 | mm->max_order | 51 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HOST_DATA | 0 | mm->avail | 0-4503599626321920[c] |
| HOST_DATA | 0 | mm->size | 0-4503599626321920[c] |
| NO_OVERFLOW_SIMPLE | 0 | mm->avail | |
| NO_OVERFLOW_SIMPLE | 0 | mm->chunk_size | |
| NO_OVERFLOW_SIMPLE | 0 | mm->n_roots | |
| NO_OVERFLOW_SIMPLE | 0 | mm->size |
drivers/gpu/buddy.c split_block() -> mark_free()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->free_scoreboard | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->free_trees | 4096-ptr_max |
| PARAM_VALUE | 1 | block | 4096-ptr_max |
| PARAM_VALUE | 1 | block->parent | 4096-ptr_max |
| DATA_SOURCE | 0 | mm | $0 |
| DATA_SOURCE | 1 | block | r gpu_block_alloc |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| NO_OVERFLOW_SIMPLE | 0 | mm->avail | |
| NO_OVERFLOW_SIMPLE | 0 | mm->chunk_size | |
| NO_OVERFLOW_SIMPLE | 0 | mm->n_roots | |
| NO_OVERFLOW_SIMPLE | 0 | mm->size | |
| HALF_LOCKED2 | &mgr->lock |
drivers/gpu/buddy.c split_block() -> mark_free()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->free_scoreboard | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->free_trees | 4096-ptr_max |
| PARAM_VALUE | 1 | block | 4096-ptr_max |
| PARAM_VALUE | 1 | block->parent | 4096-ptr_max |
| PARAM_VALUE | 1 | block->parent->left | 4096-ptr_max |
| DATA_SOURCE | 0 | mm | $0 |
| DATA_SOURCE | 1 | block | r gpu_block_alloc |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| NO_OVERFLOW_SIMPLE | 0 | mm->avail | |
| NO_OVERFLOW_SIMPLE | 0 | mm->chunk_size | |
| NO_OVERFLOW_SIMPLE | 0 | mm->n_roots | |
| NO_OVERFLOW_SIMPLE | 0 | mm->size | |
| HALF_LOCKED2 | &mgr->lock |
drivers/gpu/drm/i915/i915_gem_evict.c i915_gem_evict_something() -> mark_free()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 5371436544845045760 |
| PARAM_VALUE | 0 | mm->alignment | 0,4097-u64max |
| PARAM_VALUE | 0 | mm->hit_end | 0 |
| PARAM_VALUE | 0 | mm->hit_start | u64max |
| PARAM_VALUE | 0 | mm->mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mode | 0-2 |
| PARAM_VALUE | 0 | mm->range_end | 1-u64max |
| PARAM_VALUE | 0 | mm->range_start | 0,4096-18446744073709551614 |
| PARAM_VALUE | 0 | mm->remainder_mask | 0 |
| PARAM_VALUE | 0 | mm->size | 1-u64max |
| PARAM_VALUE | 2 | vma | 4096-ptr_max |
| PARAM_VALUE | 4 | unwind | 8003613806582538240 |
| PARAM_VALUE | 4 | unwind->next | 4096-ptr_max |
| PARAM_VALUE | 4 | unwind->prev | 8003613806582538240 |
| CAPPED_DATA | 2 | vma | 1 |
| CAPPED_DATA | 2 | &vma->vm_link | 1 |
| DATA_SOURCE | 1 | block | $1 |
| DATA_SOURCE | 3 | flags | $7 [m] |
| BIT_INFO | 3 | flags | 0x0,0xffffff7c |
| NOSPEC | 0 | mm->range_start | |
| NOSPEC | 0 | mm->size | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 0 | mm->alignment | 65537-u64max[u] |
| USER_DATA | 0 | mm->range_start | 0,4096-s32max[c] |
| USER_DATA | 0 | mm->size | 1-2149580798[c] |
| USER_DATA | 3 | flags | 0-u32max |
| NO_OVERFLOW_SIMPLE | 0 | mm->range_end | |
| NO_OVERFLOW_SIMPLE | 1 | block->contended->base.size | |
| HALF_LOCKED2 | &ggtt->vm.mutex | ||
| TYPE_LOCK | (struct i915_address_space)->mutex |