Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 3 files:
Smatch caller information:
fs/btrfs/tree-log.c drop_inode_items() -> btrfs_bin_search()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | eb | 4096-ptr_max |
| PARAM_VALUE | 1 | first_slot | 0 |
| PARAM_VALUE | 2 | key | 3616706802028257280 |
| PARAM_VALUE | 2 | key->offset | 0 |
| PARAM_VALUE | 2 | key->type | 0 |
| PARAM_VALUE | 3 | slot | 3910136303358746624 |
fs/btrfs/relocation.c do_relocation() -> btrfs_bin_search()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | eb | 1-u64max |
| PARAM_VALUE | 0 | eb->lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | eb->lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 1 | first_slot | 0 |
| PARAM_VALUE | 2 | key | 3702667145525493760 |
| PARAM_VALUE | 3 | slot | 2087009034786799616 |
| DATA_SOURCE | 2 | key | $3 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &fs_info->cleaner_mutex | ||
| HALF_LOCKED2 | &eb->lock | ||
| HALF_LOCKED2 | &fs_info->reclaim_bgs_lock | ||
| TYPE_LOCK | (struct btrfs_fs_info)->cleaner_mutex | ||
| TYPE_LOCK | (struct btrfs_fs_info)->reclaim_bgs_lock |
fs/btrfs/relocation.c do_relocation() -> btrfs_bin_search()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | eb | 1-u64max |
| PARAM_VALUE | 0 | eb->lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | eb->lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 1 | first_slot | 0 |
| PARAM_VALUE | 2 | key | 40,4096-ptr_max |
| PARAM_VALUE | 3 | slot | 2087009034786799616 |
| DATA_SOURCE | 2 | key | $3 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &fs_info->cleaner_mutex | ||
| HALF_LOCKED2 | &cow->lock | ||
| HALF_LOCKED2 | &eb->lock | ||
| HALF_LOCKED2 | &fs_info->reclaim_bgs_lock | ||
| TYPE_LOCK | (struct btrfs_fs_info)->cleaner_mutex | ||
| TYPE_LOCK | (struct btrfs_fs_info)->reclaim_bgs_lock |
fs/btrfs/relocation.c replace_path() -> btrfs_bin_search()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | eb | 4096-ptr_max |
| PARAM_VALUE | 0 | eb->lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | eb->lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | eb->lock.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 1 | first_slot | 0 |
| PARAM_VALUE | 2 | key | 9033377712807821312 |
| PARAM_VALUE | 3 | slot | 1516019089273573376 |
| BUF_SIZE | 0 | eb | (-1)-s32max |
| BUF_SIZE | 0 | eb | (-1)-s32max |
| NO_OVERFLOW_SIMPLE | 0 | eb->len | |
| NO_OVERFLOW_SIMPLE | 0 | eb->start | |
| HALF_LOCKED2 | &cow->lock | ||
| HALF_LOCKED2 | &eb->lock |
fs/btrfs/ctree.c btrfs_search_forward() -> btrfs_bin_search()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | eb | 4096-ptr_max |
| PARAM_VALUE | 0 | eb->lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | eb->lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | eb->lock.first_waiter->list.next | 2212933610777083904 |
| PARAM_VALUE | 0 | eb->lock.first_waiter->list.prev | 2212933610777083904 |
| PARAM_VALUE | 0 | eb->lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 1 | first_slot | 0 |
| PARAM_VALUE | 2 | key | 607953117779128320,2407305197628338176,3531071578656346112,6261413631930257408,7217413690763591680,8829450759068741632 |
| PARAM_VALUE | 3 | slot | 540207836763242496 |
| CAPPED_DATA | 0 | eb | 1 |
| DATA_SOURCE | 2 | key | $1 |
| NOSPEC | 2 | key->offset | |
| USER_DATA | 2 | key->objectid | 0-u64max |
| USER_DATA | 2 | key->offset | 0-u64max |
| USER_DATA | 2 | key->type | 0-255 |
| HALF_LOCKED2 | &inode->vfs_inode.i_rwsem | ||
| HALF_LOCKED2 | 0 | &eb->lock |
fs/btrfs/ctree.c btrfs_search_old_slot() -> btrfs_bin_search()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | eb | 4096-ptr_max |
| PARAM_VALUE | 0 | eb->lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | eb->lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | eb->lock.first_waiter->list.next | 2212933610777083904 |
| PARAM_VALUE | 0 | eb->lock.first_waiter->list.prev | 2212933610777083904 |
| PARAM_VALUE | 0 | eb->lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 1 | first_slot | 0 |
| PARAM_VALUE | 2 | key | 3632415684022796288,6107121730777239552 |
| PARAM_VALUE | 3 | slot | 3769272375107145728 |
| BUF_SIZE | 0 | eb | (-1)-s32max |
| BUF_SIZE | 0 | eb | (-1)-s32max |
| DATA_SOURCE | 2 | key | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &ctx->fs_info->commit_root_sem | ||
| HALF_LOCKED2 | 0 | &eb->lock |
fs/btrfs/ctree.c search_for_key_slot() -> btrfs_bin_search()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | first_slot | 0-1 |
| PARAM_VALUE | 3 | slot | 4096-ptr_max |
| BUF_SIZE | 3 | slot | 32 |
| BUF_SIZE | 3 | slot | 32 |
| DATA_SOURCE | 0 | eb | $0 |
| DATA_SOURCE | 1 | first_slot | $1 |
| DATA_SOURCE | 2 | key | $2 |
| DATA_SOURCE | 3 | slot | $4 |
| FUZZY_MAX | 1 | first_slot | 1 |
| HARD_MAX | 1 | first_slot | 1 |