Defined in 1 files as a function:
Referenced in 1 files:
Smatch caller information:
fs/f2fs/node.c add_free_nid() -> __lookup_nat_cache()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | nm_i | 4096-ptr_max |
| PARAM_VALUE | 0 | nm_i->nid_list_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | n | 1-4294967294 |
| PARAM_VALUE | 2 | for_dirty | 0 |
| BUF_SIZE | 0 | nm_i | (-1),992 |
| BUF_SIZE | 0 | nm_i | (-1),992 |
| CAPPED_DATA | 1 | n | 1 |
| DATA_SOURCE | 1 | n | $1 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 1 | n | unit_byte |
| LOCK2 | &nm_i->nat_tree_lock.internal_rwsem | ||
| LOCK2 | 0 | &nm_i->nid_list_lock | |
| HALF_LOCKED2 | &curseg->journal_rwsem | ||
| TYPE_LOCK | (struct f2fs_nm_info)->nid_list_lock | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem |
fs/f2fs/node.c cache_nat_entry() -> __lookup_nat_cache()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | nm_i | 4096-ptr_max |
| PARAM_VALUE | 0 | nm_i->nat_tree_lock.internal_rwsem.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | nm_i->nat_tree_lock.internal_rwsem.first_waiter->list.next | 2624917664208203776 |
| PARAM_VALUE | 0 | nm_i->nat_tree_lock.internal_rwsem.first_waiter->list.prev | 2624917664208203776 |
| PARAM_VALUE | 0 | nm_i->nat_tree_lock.internal_rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | nm_i->nat_tree_lock.internal_rwsem.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 2 | for_dirty | 0 |
| DATA_SOURCE | 1 | n | $1 |
| NOSPEC | 1 | n | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NO_OVERFLOW_SIMPLE | 1 | n | |
| LOCK2 | 0 | &nm_i->nat_tree_lock.internal_rwsem | |
| HALF_LOCKED2 | &inode->i_rwsem | ||
| HALF_LOCKED2 | &sbi->cp_global_sem.internal_rwsem | ||
| HALF_LOCKED2 | &sbi->cp_rwsem.internal_rwsem | ||
| HALF_LOCKED2 | &sbi->cp_rwsem.internal_rwsem | ||
| HALF_LOCKED2 | &sbi->gc_lock.internal_rwsem | ||
| HALF_LOCKED2 | &sbi->gc_lock.internal_rwsem | ||
| HALF_LOCKED2 | &sbi->pin_sem.internal_rwsem | ||
| HALF_LOCKED2 | &src_inode->i_rwsem | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem |
fs/f2fs/node.c f2fs_get_node_info() -> __lookup_nat_cache()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | nm_i | 4096-ptr_max |
| PARAM_VALUE | 0 | nm_i->nat_tree_lock.internal_rwsem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | nm_i->nat_tree_lock.internal_rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 2 | for_dirty | 0 |
| DATA_SOURCE | 1 | n | $1 |
| NOSPEC | 1 | n | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NO_OVERFLOW_SIMPLE | 1 | n | |
| LOCK2 | 0 | &nm_i->nat_tree_lock.internal_rwsem | |
| HALF_LOCKED2 | &inode->i_rwsem | ||
| HALF_LOCKED2 | &sbi->cp_global_sem.internal_rwsem | ||
| HALF_LOCKED2 | &sbi->cp_rwsem.internal_rwsem | ||
| HALF_LOCKED2 | &sbi->gc_lock.internal_rwsem | ||
| HALF_LOCKED2 | &sbi->gc_lock.internal_rwsem | ||
| HALF_LOCKED2 | &src_inode->i_rwsem | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem |
fs/f2fs/node.c f2fs_is_checkpointed_node() -> __lookup_nat_cache()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | nm_i | 4096-ptr_max |
| PARAM_VALUE | 0 | nm_i->nat_tree_lock.read_waiters.head.prev->next | 4096-ptr_max |
| PARAM_VALUE | 0 | nm_i->nat_tree_lock.read_waiters.head.prev->next->next | 4096-ptr_max |
| PARAM_VALUE | 2 | for_dirty | 0 |
| DATA_SOURCE | 1 | n | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 1 | n | unit_byte |
| LOCK2 | 0 | &nm_i->nat_tree_lock.internal_rwsem | |
| HALF_LOCKED2 | &inode->i_rwsem | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem |
fs/f2fs/node.c f2fs_need_dentry_mark() -> __lookup_nat_cache()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | nm_i | 4096-ptr_max |
| PARAM_VALUE | 0 | nm_i->nat_tree_lock.read_waiters.head.prev->next | 4096-ptr_max |
| PARAM_VALUE | 0 | nm_i->nat_tree_lock.read_waiters.head.prev->next->next | 4096-ptr_max |
| PARAM_VALUE | 2 | for_dirty | 0 |
| DATA_SOURCE | 1 | n | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | 0 | &nm_i->nat_tree_lock.internal_rwsem | |
| HALF_LOCKED2 | &sbi->node_write.internal_rwsem | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem |
fs/f2fs/node.c f2fs_need_inode_block_update() -> __lookup_nat_cache()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | nm_i | 4096-ptr_max |
| PARAM_VALUE | 0 | nm_i->nat_tree_lock.read_waiters.head.prev->next | 4096-ptr_max |
| PARAM_VALUE | 0 | nm_i->nat_tree_lock.read_waiters.head.prev->next->next | 4096-ptr_max |
| PARAM_VALUE | 2 | for_dirty | 0 |
| DATA_SOURCE | 1 | n | $1 |
| NOSPEC | 1 | n | |
| NOSPEC | 1 | n | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 1 | n | 0-4294967294[c] |
| LOCK2 | &sbi->node_write.internal_rwsem | ||
| LOCK2 | 0 | &nm_i->nat_tree_lock.internal_rwsem | |
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem |
fs/f2fs/node.c remove_nats_in_journal() -> __lookup_nat_cache()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | n | 0-4294967294 |
| PARAM_VALUE | 2 | for_dirty | 1 |
| CAPPED_DATA | 1 | n | 1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 1 | n | unit_byte |
| LOCK2 | &curseg->journal_rwsem | ||
| LOCK2 | &nm_i->nat_tree_lock.internal_rwsem | ||
| LOCK2 | &sbi->cp_global_sem.internal_rwsem | ||
| HALF_LOCKED2 | &sbi->gc_lock.internal_rwsem | ||
| HALF_LOCKED2 | &sbi->pin_sem.internal_rwsem | ||
| HALF_LOCKED2 | &sbi->umount_mutex | ||
| TYPE_LOCK | (struct curseg_info)->journal_rwsem | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem |
fs/f2fs/node.c set_node_addr() -> __lookup_nat_cache()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | nm_i | 4096-ptr_max |
| PARAM_VALUE | 0 | nm_i->nat_tree_lock.internal_rwsem.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | nm_i->nat_tree_lock.internal_rwsem.first_waiter->list.next | 2624917664208203776 |
| PARAM_VALUE | 0 | nm_i->nat_tree_lock.internal_rwsem.first_waiter->list.prev | 2624917664208203776 |
| PARAM_VALUE | 0 | nm_i->nat_tree_lock.internal_rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | nm_i->nat_tree_lock.internal_rwsem.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 2 | for_dirty | 1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NO_OVERFLOW_SIMPLE | 1 | n | |
| UNITS | 1 | n | unit_byte |
| LOCK2 | 0 | &nm_i->nat_tree_lock.internal_rwsem | |
| HALF_LOCKED2 | &sbi->cp_global_sem.internal_rwsem | ||
| HALF_LOCKED2 | &sbi->node_write.internal_rwsem | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem |
fs/f2fs/node.c set_node_addr() -> __lookup_nat_cache()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | nm_i | 4096-ptr_max |
| PARAM_VALUE | 0 | nm_i->nat_list_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | nm_i->nat_tree_lock.internal_rwsem.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | nm_i->nat_tree_lock.internal_rwsem.first_waiter->list.next | 2624917664208203776 |
| PARAM_VALUE | 0 | nm_i->nat_tree_lock.internal_rwsem.first_waiter->list.prev | 2624917664208203776 |
| PARAM_VALUE | 0 | nm_i->nat_tree_lock.internal_rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | nm_i->nat_tree_lock.internal_rwsem.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 2 | for_dirty | 0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NO_OVERFLOW_SIMPLE | 1 | n | |
| UNITS | 1 | n | unit_byte |
| LOCK2 | 0 | &nm_i->nat_tree_lock.internal_rwsem | |
| HALF_LOCKED2 | &sbi->cp_global_sem.internal_rwsem | ||
| HALF_LOCKED2 | &sbi->node_write.internal_rwsem | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem |