Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 6 files:
- kernel/irq/irqdesc.c, line 179
- lib/alloc_tag.c
- lib/maple_tree.c
- lib/test_maple_tree.c
- mm/alloc_tag.c
- mm/vma.h, line 647
Smatch caller information:
lib/maple_tree.c mas_alloc_cyclic() -> mas_empty_area()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mas | 490740092738199552,3625433611361931264 |
| PARAM_VALUE | 0 | mas->sheaf->capacity | s32min-4294967295 |
| PARAM_VALUE | 0 | mas->sheaf->node | s32min-s32max |
| PARAM_VALUE | 0 | mas->sheaf->pfmemalloc | 0-1 |
| PARAM_VALUE | 0 | mas->sheaf->size | s32min-4294967295 |
| PARAM_VALUE | 1 | min | 2-u64max |
| PARAM_VALUE | 2 | max | 1024,2147483646,u64max |
| PARAM_VALUE | 3 | size | 1 |
| CAPPED_DATA | 1 | min | 1 |
| CAPPED_DATA | 1 | min | 1 |
| CAPPED_DATA | 2 | max | 1 |
| CAPPED_DATA | 2 | max | 1 |
| DATA_SOURCE | 0 | mas | $0 |
| DATA_SOURCE | 2 | max | $4 |
| HARD_MAX | 2 | max | u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 1 | min | unit_byte |
| LOCK2 | &mt->ma_lock | ||
| TYPE_LOCK | (struct maple_tree)->ma_lock |
lib/maple_tree.c mas_alloc_cyclic() -> mas_empty_area()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mas | 490740092738199552,3625433611361931264 |
| PARAM_VALUE | 0 | mas->node | 0 |
| PARAM_VALUE | 0 | mas->sheaf->capacity | s32min-4294967295 |
| PARAM_VALUE | 0 | mas->sheaf->node | s32min-s32max |
| PARAM_VALUE | 0 | mas->sheaf->pfmemalloc | 0-1 |
| PARAM_VALUE | 0 | mas->sheaf->size | s32min-4294967295 |
| PARAM_VALUE | 0 | mas->status | 1 |
| PARAM_VALUE | 1 | min | 2-3 |
| PARAM_VALUE | 2 | max | 1024,2147483646,u64max |
| PARAM_VALUE | 3 | size | 1 |
| CAPPED_DATA | 1 | min | 1 |
| CAPPED_DATA | 1 | min | 1 |
| CAPPED_DATA | 2 | max | 1 |
| CAPPED_DATA | 2 | max | 1 |
| DATA_SOURCE | 0 | mas | $0 |
| DATA_SOURCE | 2 | max | $4 |
| PARAM_COMPARE | 1 | min | <= $2 |
| PARAM_COMPARE | 1 | min | <= $2 |
| PARAM_COMPARE | 2 | max | >= $1 |
| HARD_MAX | 2 | max | u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 1 | min | unit_byte |
| LOCK2 | &mt->ma_lock | ||
| TYPE_LOCK | (struct maple_tree)->ma_lock |
lib/maple_tree.c mtree_alloc_range() -> mas_empty_area()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mas | 51657533444714496 |
| PARAM_VALUE | 0 | mas->node | 0 |
| PARAM_VALUE | 0 | mas->status | 1 |
| PARAM_VALUE | 1 | min | 0-4503599627370495 |
| PARAM_VALUE | 3 | size | 0-4503599627370495 |
| CAPPED_DATA | 1 | min | 1 |
| CAPPED_DATA | 1 | min | 1 |
| CAPPED_DATA | 3 | size | 1 |
| CAPPED_DATA | 3 | size | 1 |
| DATA_SOURCE | 1 | min | $4 |
| DATA_SOURCE | 2 | max | $5 |
| DATA_SOURCE | 3 | size | $3 |
| PREEMPT_ADD | <- disables preempt | ||
| UNITS | 1 | min | unit_byte |
| UNITS | 3 | size | unit_byte |
| LOCK2 | &mt->ma_lock | ||
| TYPE_LOCK | (struct maple_tree)->ma_lock |
mm/vma.c vma_iter_area_lowest() -> mas_empty_area()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mas | 4000179264148541440 |
| PARAM_VALUE | 0 | mas->node | 0 |
| PARAM_VALUE | 0 | mas->status | 1 |
| CAPPED_DATA | 1 | min | 1 |
| DATA_SOURCE | 1 | min | $1 |
| DATA_SOURCE | 3 | size | $3 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 3 | size | 0-2147487743[c] |
| NO_OVERFLOW_SIMPLE | 0 | mas->index | |
| NO_OVERFLOW_SIMPLE | 1 | min | |
| UNITS | 1 | min | unit_byte |
| UNITS | 2 | max | unit_byte |
| UNITS | 3 | size | unit_byte |
| HALF_LOCKED2 | &mm->mmap_lock |
lib/test_maple_tree.c check_alloc_range() -> mas_empty_area()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mas | 4096-ptr_max |
| PARAM_VALUE | 0 | mas->alloc | 0 |
| PARAM_VALUE | 0 | mas->depth | 0 |
| PARAM_VALUE | 0 | mas->node | 0 |
| PARAM_VALUE | 0 | mas->sheaf | 0 |
| PARAM_VALUE | 0 | mas->status | 1 |
| PARAM_VALUE | 0 | mas->tree | 697437168751288320 |
| PARAM_VALUE | 1 | min | 0-4503599627370495 |
| PARAM_VALUE | 2 | max | 0-4503599627370495 |
| PARAM_VALUE | 3 | size | 0-4503599627370495 |
| PREEMPT_ADD | <- disables preempt | ||
| LOCK2 | &(&mas)->tree->ma_lock |
lib/test_maple_tree.c check_alloc_range() -> mas_empty_area()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mas | 4096-ptr_max |
| PARAM_VALUE | 0 | mas->alloc | 0 |
| PARAM_VALUE | 0 | mas->depth | 0 |
| PARAM_VALUE | 0 | mas->sheaf | 0 |
| PARAM_VALUE | 0 | mas->status | 1-2,7 |
| PARAM_VALUE | 0 | mas->tree | 697437168751288320 |
| PARAM_VALUE | 1 | min | 0-4503599627370495 |
| PARAM_VALUE | 2 | max | 0-4503599627370495 |
| PARAM_VALUE | 3 | size | 0-4503599627370495 |
| PREEMPT_ADD | <- disables preempt | ||
| LOCK2 | &(&mas)->tree->ma_lock |
lib/test_maple_tree.c check_empty_area_fill() -> mas_empty_area()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mas | 7973555732508303360 |
| PARAM_VALUE | 0 | mas->alloc | 0 |
| PARAM_VALUE | 0 | mas->index | 0 |
| PARAM_VALUE | 0 | mas->last | 0 |
| PARAM_VALUE | 0 | mas->mas_flags | 0,2-254 |
| PARAM_VALUE | 0 | mas->node | 0 |
| PARAM_VALUE | 0 | mas->sheaf | 0 |
| PARAM_VALUE | 0 | mas->status | 1 |
| PARAM_VALUE | 1 | min | 0 |
| PARAM_VALUE | 2 | max | 634880000 |
| PARAM_VALUE | 3 | size | 0-s32max,18446744071562067968-u64max |
| BIT_INFO | 3 | size | 0x0,0xffffffff |
| BIT_INFO | 3 | size | 0x0,0xffffffff |
| PREEMPT_ADD | <- disables preempt | ||
| LOCK2 | &(&mas)->tree->ma_lock |
lib/test_maple_tree.c check_empty_area_fill() -> mas_empty_area()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mas | 7973555732508303360 |
| PARAM_VALUE | 0 | mas->alloc | 0 |
| PARAM_VALUE | 0 | mas->index | 0 |
| PARAM_VALUE | 0 | mas->last | 0,634880000 |
| PARAM_VALUE | 0 | mas->mas_flags | 0,2-254 |
| PARAM_VALUE | 0 | mas->sheaf | 0 |
| PARAM_VALUE | 0 | mas->status | 1-2,7 |
| PARAM_VALUE | 1 | min | 0 |
| PARAM_VALUE | 2 | max | 634880000 |
| PARAM_VALUE | 3 | size | 0-s32max,18446744071562067968-u64max |
| BIT_INFO | 3 | size | 0x0,0xffffffff |
| BIT_INFO | 3 | size | 0x0,0xffffffff |
| PREEMPT_ADD | <- disables preempt | ||
| LOCK2 | &(&mas)->tree->ma_lock |
lib/test_maple_tree.c check_empty_area_fill() -> mas_empty_area()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mas | 7973555732508303360 |
| PARAM_VALUE | 0 | mas->alloc | 0 |
| PARAM_VALUE | 0 | mas->mas_flags | 0,2-254 |
| PARAM_VALUE | 0 | mas->node | 0 |
| PARAM_VALUE | 0 | mas->sheaf | 0 |
| PARAM_VALUE | 0 | mas->status | 1 |
| PARAM_VALUE | 1 | min | 0 |
| PARAM_VALUE | 2 | max | 634880000 |
| PARAM_VALUE | 3 | size | 4096 |
| LOCK2 | rcu_read |
lib/test_maple_tree.c check_empty_area_fill() -> mas_empty_area()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mas | 7973555732508303360 |
| PARAM_VALUE | 0 | mas->alloc | 0 |
| PARAM_VALUE | 0 | mas->mas_flags | 0,2-254 |
| PARAM_VALUE | 0 | mas->sheaf | 0 |
| PARAM_VALUE | 1 | min | 0 |
| PARAM_VALUE | 2 | max | 634880000 |
| PARAM_VALUE | 3 | size | 4096 |
| LOCK2 | rcu_read |
lib/test_maple_tree.c check_empty_area_fill() -> mas_empty_area()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mas | 7973555732508303360 |
| PARAM_VALUE | 0 | mas->alloc | 0 |
| PARAM_VALUE | 0 | mas->mas_flags | 0,2-254 |
| PARAM_VALUE | 0 | mas->node | 0 |
| PARAM_VALUE | 0 | mas->sheaf | 0 |
| PARAM_VALUE | 0 | mas->status | 1 |
| PARAM_VALUE | 1 | min | 629506048 |
| PARAM_VALUE | 2 | max | 690000000 |
| PARAM_VALUE | 3 | size | 20480 |
| LOCK2 | rcu_read |
lib/test_maple_tree.c check_empty_area_fill() -> mas_empty_area()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mas | 7973555732508303360 |
| PARAM_VALUE | 0 | mas->alloc | 0 |
| PARAM_VALUE | 0 | mas->mas_flags | 0,2-254 |
| PARAM_VALUE | 0 | mas->node | 0,18446744073709535238-18446744073709551614 |
| PARAM_VALUE | 0 | mas->sheaf | 0 |
| PARAM_VALUE | 0 | mas->status | 1,7 |
| PARAM_VALUE | 1 | min | 629506048 |
| PARAM_VALUE | 2 | max | 690000000 |
| PARAM_VALUE | 3 | size | 20480 |
| LOCK2 | rcu_read |
lib/test_maple_tree.c check_empty_area_window() -> mas_empty_area()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mas | 4141346736029859840 |
| PARAM_VALUE | 0 | mas->alloc | 0 |
| PARAM_VALUE | 0 | mas->depth | 0 |
| PARAM_VALUE | 0 | mas->node | 0 |
| PARAM_VALUE | 0 | mas->sheaf | 0 |
| PARAM_VALUE | 0 | mas->status | 1 |
| PARAM_VALUE | 1 | min | 0 |
| PARAM_VALUE | 2 | max | 100 |
| PARAM_VALUE | 3 | size | 9 |
| LOCK2 | rcu_read |
lib/test_maple_tree.c check_empty_area_window() -> mas_empty_area()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mas | 4141346736029859840 |
| PARAM_VALUE | 0 | mas->alloc | 0 |
| PARAM_VALUE | 0 | mas->depth | 0 |
| PARAM_VALUE | 0 | mas->sheaf | 0 |
| PARAM_VALUE | 0 | mas->status | 1-2,7 |
| PARAM_VALUE | 1 | min | 0 |
| PARAM_VALUE | 2 | max | 100 |
| PARAM_VALUE | 3 | size | 9 |
| LOCK2 | rcu_read |
lib/test_maple_tree.c check_empty_area_window() -> mas_empty_area()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mas | 4141346736029859840 |
| PARAM_VALUE | 0 | mas->alloc | 0 |
| PARAM_VALUE | 0 | mas->depth | 0 |
| PARAM_VALUE | 0 | mas->node | 0 |
| PARAM_VALUE | 0 | mas->sheaf | 0 |
| PARAM_VALUE | 0 | mas->status | 1 |
| PARAM_VALUE | 1 | min | 0 |
| PARAM_VALUE | 2 | max | 100 |
| PARAM_VALUE | 3 | size | 4 |
| LOCK2 | rcu_read |
lib/test_maple_tree.c check_empty_area_window() -> mas_empty_area()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mas | 4141346736029859840 |
| PARAM_VALUE | 0 | mas->alloc | 0 |
| PARAM_VALUE | 0 | mas->depth | 0 |
| PARAM_VALUE | 0 | mas->sheaf | 0 |
| PARAM_VALUE | 0 | mas->status | 1-2,7 |
| PARAM_VALUE | 1 | min | 0 |
| PARAM_VALUE | 2 | max | 100 |
| PARAM_VALUE | 3 | size | 4 |
| LOCK2 | rcu_read |
lib/test_maple_tree.c check_empty_area_window() -> mas_empty_area()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mas | 4141346736029859840 |
| PARAM_VALUE | 0 | mas->alloc | 0 |
| PARAM_VALUE | 0 | mas->depth | 0 |
| PARAM_VALUE | 0 | mas->node | 0 |
| PARAM_VALUE | 0 | mas->sheaf | 0 |
| PARAM_VALUE | 0 | mas->status | 1 |
| PARAM_VALUE | 1 | min | 0 |
| PARAM_VALUE | 2 | max | 100 |
| PARAM_VALUE | 3 | size | 11 |
| LOCK2 | rcu_read |
lib/test_maple_tree.c check_empty_area_window() -> mas_empty_area()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mas | 4141346736029859840 |
| PARAM_VALUE | 0 | mas->alloc | 0 |
| PARAM_VALUE | 0 | mas->depth | 0 |
| PARAM_VALUE | 0 | mas->sheaf | 0 |
| PARAM_VALUE | 1 | min | 0 |
| PARAM_VALUE | 2 | max | 100 |
| PARAM_VALUE | 3 | size | 11 |
| LOCK2 | rcu_read |
lib/test_maple_tree.c check_empty_area_window() -> mas_empty_area()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mas | 4141346736029859840 |
| PARAM_VALUE | 0 | mas->alloc | 0 |
| PARAM_VALUE | 0 | mas->depth | 0 |
| PARAM_VALUE | 0 | mas->node | 0 |
| PARAM_VALUE | 0 | mas->sheaf | 0 |
| PARAM_VALUE | 0 | mas->status | 1 |
| PARAM_VALUE | 1 | min | 5 |
| PARAM_VALUE | 2 | max | 100 |
| PARAM_VALUE | 3 | size | 6 |
| LOCK2 | rcu_read |
lib/test_maple_tree.c check_empty_area_window() -> mas_empty_area()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mas | 4141346736029859840 |
| PARAM_VALUE | 0 | mas->alloc | 0 |
| PARAM_VALUE | 0 | mas->depth | 0 |
| PARAM_VALUE | 0 | mas->sheaf | 0 |
| PARAM_VALUE | 1 | min | 5 |
| PARAM_VALUE | 2 | max | 100 |
| PARAM_VALUE | 3 | size | 6 |
| LOCK2 | rcu_read |
lib/test_maple_tree.c check_empty_area_window() -> mas_empty_area()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mas | 4141346736029859840 |
| PARAM_VALUE | 0 | mas->alloc | 0 |
| PARAM_VALUE | 0 | mas->depth | 0 |
| PARAM_VALUE | 0 | mas->node | 0 |
| PARAM_VALUE | 0 | mas->sheaf | 0 |
| PARAM_VALUE | 0 | mas->status | 1 |
| PARAM_VALUE | 1 | min | 0 |
| PARAM_VALUE | 2 | max | 8 |
| PARAM_VALUE | 3 | size | 10 |
| LOCK2 | rcu_read |
lib/test_maple_tree.c check_empty_area_window() -> mas_empty_area()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mas | 4141346736029859840 |
| PARAM_VALUE | 0 | mas->alloc | 0 |
| PARAM_VALUE | 0 | mas->depth | 0 |
| PARAM_VALUE | 0 | mas->sheaf | 0 |
| PARAM_VALUE | 0 | mas->status | 0,2-u32max |
| PARAM_VALUE | 1 | min | 0 |
| PARAM_VALUE | 2 | max | 8 |
| PARAM_VALUE | 3 | size | 10 |
| LOCK2 | rcu_read |
lib/test_maple_tree.c check_empty_area_window() -> mas_empty_area()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mas | 4141346736029859840 |
| PARAM_VALUE | 0 | mas->alloc | 0 |
| PARAM_VALUE | 0 | mas->depth | 0 |
| PARAM_VALUE | 0 | mas->node | 0 |
| PARAM_VALUE | 0 | mas->sheaf | 0 |
| PARAM_VALUE | 0 | mas->status | 1 |
| PARAM_VALUE | 1 | min | 100 |
| PARAM_VALUE | 2 | max | 165 |
| PARAM_VALUE | 3 | size | 3 |
| NOCHECK_CALL | |||
| LOCK2 | rcu_read |
lib/test_maple_tree.c check_empty_area_window() -> mas_empty_area()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mas | 4141346736029859840 |
| PARAM_VALUE | 0 | mas->alloc | 0 |
| PARAM_VALUE | 0 | mas->depth | 0 |
| PARAM_VALUE | 0 | mas->node | 0 |
| PARAM_VALUE | 0 | mas->sheaf | 0 |
| PARAM_VALUE | 0 | mas->status | 1 |
| PARAM_VALUE | 1 | min | 100 |
| PARAM_VALUE | 2 | max | 163 |
| PARAM_VALUE | 3 | size | 6 |
| LOCK2 | rcu_read |
lib/test_maple_tree.c check_empty_area_window() -> mas_empty_area()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mas | 4141346736029859840 |
| PARAM_VALUE | 0 | mas->alloc | 0 |
| PARAM_VALUE | 0 | mas->depth | 0 |
| PARAM_VALUE | 0 | mas->sheaf | 0 |
| PARAM_VALUE | 1 | min | 100 |
| PARAM_VALUE | 2 | max | 163 |
| PARAM_VALUE | 3 | size | 6 |
| LOCK2 | rcu_read |
kernel/irq/irqdesc.c irq_find_free_area() -> mas_empty_area()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mas | 6762558707453030400 |
| PARAM_VALUE | 0 | mas->alloc | 0 |
| PARAM_VALUE | 0 | mas->depth | 0 |
| PARAM_VALUE | 0 | mas->end | 0 |
| PARAM_VALUE | 0 | mas->index | 0 |
| PARAM_VALUE | 0 | mas->last | 0 |
| PARAM_VALUE | 0 | mas->ld_seq | 0 |
| PARAM_VALUE | 0 | mas->max | u64max |
| PARAM_VALUE | 0 | mas->min | 0 |
| PARAM_VALUE | 0 | mas->node | 0 |
| PARAM_VALUE | 0 | mas->offset | 0 |
| PARAM_VALUE | 0 | mas->sheaf | 0 |
| PARAM_VALUE | 0 | mas->status | 1 |
| PARAM_VALUE | 0 | mas->tree | 384540098826899456 |
| PARAM_VALUE | 2 | max | s32max |
| PARAM_VALUE | 3 | size | 1-u32max |
| DATA_SOURCE | 1 | min | $0 |
| DATA_SOURCE | 3 | size | $1 |
| STR_LEN | 0 | mas | (-1),6,8,11-12 |
| NOSPEC | 3 | size | |
| NOSPEC | 3 | size | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HOST_DATA | 1 | min | 0[c] |
| HOST_DATA | 3 | size | 2-s32max[c] |
| USER_DATA | 3 | size | 2-2147483646[c] |
| NO_OVERFLOW_SIMPLE | 3 | size | |
| UNITS | 1 | min | unit_array_size |
| UNITS | 3 | size | unit_array_size |
| LOCK2 | _T->lock | ||
| HALF_LOCKED2 | &_T->lock->msi.data->mutex | ||
| HALF_LOCKED2 | &domain->root->mutex | ||
| HALF_LOCKED2 | global &irq_mapping_update_lock |