Documented in 1 files:
Defined in 1 files as a function:
Referenced in 2 files:
Smatch caller information:
mm/swapfile.c __try_to_reclaim_swap() -> swap_cluster_lock()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | si | 4096-ptr_max |
| PARAM_VALUE | 0 | *si->global_cluster->next | 0-4294967295 |
| PARAM_VALUE | 1 | offset | 0-288230376151711743 |
| CAPPED_DATA | 1 | offset | 1 |
| CAPPED_DATA | 1 | offset | 1 |
| DATA_SOURCE | 0 | si | $0 |
| DATA_SOURCE | 1 | offset | r swp_offset |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 1 | offset | unit_page |
| HALF_LOCKED2 | global &system_transition_mutex | ||
| HALF_LOCKED2 | 0 | &si->global_cluster_lock |
mm/swapfile.c cluster_alloc_swap_entry() -> swap_cluster_lock()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | si | 4096-ptr_max |
| PARAM_VALUE | 0 | si->global_cluster | 4096-ptr_max |
| PARAM_VALUE | 0 | si->global_cluster->next | 4096-ptr_max |
| PARAM_VALUE | 0 | si->global_cluster_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | *si->global_cluster->next | 0-4294967295 |
| PARAM_VALUE | 1 | offset | 1-512 |
| DATA_SOURCE | 0 | si | $0 |
| BIT_INFO | 0 | si->flags | 0x0,0xffffffffffffffef |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | 0 | &si->global_cluster_lock | |
| HALF_LOCKED2 | global &device_hotplug_lock | ||
| HALF_LOCKED2 | global &system_transition_mutex | ||
| TYPE_LOCK | (struct swap_info_struct)->global_cluster_lock |
mm/swapfile.c swap_alloc_fast() -> swap_cluster_lock()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | si | 4096-ptr_max |
| PARAM_VALUE | 0 | si->users.percpu_count_ptr | 1-u64max |
| PARAM_VALUE | 1 | offset | 1-512 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING |
mm/swapfile.c swap_alloc_hibernation_slot() -> swap_cluster_lock()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | si | r swap_type_to_info |
| BIT_INFO | 1 | offset | 0x0,0x0 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | global &device_hotplug_lock | ||
| LOCK2 | global &system_transition_mutex |
mm/swapfile.c swap_dup_entries_cluster() -> swap_cluster_lock()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | offset | 0-288230376151711743 |
| DATA_SOURCE | 0 | si | $0 |
| DATA_SOURCE | 1 | offset | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &mm->mmap_lock | ||
| HALF_LOCKED2 | &oldmm->mmap_lock | ||
| HALF_LOCKED2 | dst_ptl | ||
| HALF_LOCKED2 | rcu_read | ||
| HALF_LOCKED2 | src_ptl |
mm/swapfile.c swap_entry_swapped() -> swap_cluster_lock()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | si | 1-u64max |
| PARAM_VALUE | 1 | offset | 0-288230376151711743 |
| DATA_SOURCE | 0 | si | $0 |
| DATA_SOURCE | 1 | offset | r swp_offset |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &mm->mmap_lock | ||
| LOCK2 | &oldmm->mmap_lock | ||
| LOCK2 | dst_ptl | ||
| LOCK2 | rcu_read | ||
| LOCK2 | src_ptl | ||
| TYPE_LOCK | (struct mm_struct)->mmap_lock |
mm/swapfile.c swap_free_hibernation_slot() -> swap_cluster_lock()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | si | 4096-ptr_max |
| PARAM_VALUE | 1 | offset | 0-288230376151711743 |
| DATA_SOURCE | 0 | si | r __swap_entry_to_info |
| DATA_SOURCE | 1 | offset | r swp_offset |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | global &system_transition_mutex | ||
| HALF_LOCKED2 | global &device_hotplug_lock |
mm/swapfile.c swap_put_entries_cluster() -> swap_cluster_lock()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | si | 4096-ptr_max |
| PARAM_VALUE | 1 | offset | 0-288230376151711743 |
| CAPPED_DATA | 1 | offset | 1 |
| CAPPED_DATA | 1 | offset | 1 |
| DATA_SOURCE | 0 | si | $0 |
| DATA_SOURCE | 1 | offset | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 1 | offset | unit_page |
| HALF_LOCKED2 | ptl |
mm/swapfile.c swp_swapcount() -> swap_cluster_lock()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | si | 4096-ptr_max |
| PARAM_VALUE | 0 | si->max | 1-u32max |
| PARAM_VALUE | 0 | si->users.percpu_count_ptr | 1-u64max |
| PARAM_VALUE | 1 | offset | 0-288230376151711743 |
| DATA_SOURCE | 0 | si | r get_swap_device |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | ptl | ||
| HALF_LOCKED2 | &mm->mmap_lock |
mm/swapfile.c wait_for_allocation() -> swap_cluster_lock()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | si | 4096-ptr_max |
| PARAM_VALUE | 0 | si->avail_list.node_list.next->prev | 4096-ptr_max |
| PARAM_VALUE | 0 | si->avail_list.node_list.prev->next | 4096-ptr_max |
| PARAM_VALUE | 0 | si->avail_list.prio_list.next->next | 4096-ptr_max |
| PARAM_VALUE | 0 | si->avail_list.prio_list.prev->next | 4096-ptr_max |
| PARAM_VALUE | 0 | si->list.node_list.next | 4096-ptr_max |
| PARAM_VALUE | 0 | si->list.node_list.next->next | 4096-ptr_max |
| PARAM_VALUE | 0 | si->list.node_list.next->prev | 4096-ptr_max |
| PARAM_VALUE | 0 | si->list.node_list.prev | 4096-ptr_max |
| PARAM_VALUE | 0 | si->list.node_list.prev->next | 4096-ptr_max |
| PARAM_VALUE | 0 | si->list.node_list.prev->prev | 4096-ptr_max |
| PARAM_VALUE | 0 | si->list.prio_list.next | 4096-ptr_max |
| PARAM_VALUE | 0 | si->list.prio_list.next->next | 4096-ptr_max |
| PARAM_VALUE | 0 | si->list.prio_list.prev | 4096-ptr_max |
| PARAM_VALUE | 0 | si->list.prio_list.prev->next | 4096-ptr_max |
| PARAM_VALUE | 0 | si->list.prio_list.prev->prev | 4096-ptr_max |
| PARAM_VALUE | 0 | si->lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | si->swap_file | 4096-ptr_max |
| PARAM_VALUE | 1 | offset | 0,512-4294967294 |
| CAPPED_DATA | 0 | si->pages | 1 |
| CAPPED_DATA | 0 | si->swap_file->f_mapping | 1 |
| CAPPED_DATA | 1 | offset | 1 |
| CAPPED_DATA | 1 | offset | 1 |
| DATA_SOURCE | 0 | si | $0 |
| CAPABLE | 0 | 21 | |
| BIT_INFO | 0 | si->flags | 0x0,0xfffffffffffffffd |
mm/swap_state.c swap_cache_del_folio() -> swap_cluster_lock()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | si | 4096-ptr_max |
| PARAM_VALUE | 1 | offset | 0-288230376151711743 |
| BIT_INFO | 1 | offset | 0x0,0x3ffffffffffffff |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | global &mf_mutex | ||
| HALF_LOCKED2 | vmf->ptl |