Documented in 2 files:
Defined in 2 files as a function:
- include/linux/rbtree.h, line 351 (as a function)
- tools/include/linux/rbtree.h, line 234 (as a function)
Referenced in 9 files:
- drivers/infiniband/core/frmr_pools.c, line 386
- drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c, line 4136
- drivers/iommu/intel/iommu.c, line 144
- fs/btrfs/defrag.c, line 85
- fs/btrfs/disk-io.c, line 739
- fs/btrfs/misc.h, line 204
- fs/btrfs/qgroup.c
- fs/btrfs/ref-verify.c
- fs/btrfs/ulist.c, line 173
Smatch caller information:
drivers/iommu/intel/iommu.c device_rbtree_insert() -> rb_find_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | node | 4096-ptr_max |
| PARAM_VALUE | 1 | tree | 4096-ptr_max |
| PARAM_VALUE | 2 | cmp | 1170162467248615424 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &iommu->device_rbtree_lock | ||
| LOCK2 | flags | ||
| LOCK2 | global &iommu_probe_device_lock | ||
| TYPE_LOCK | (struct intel_iommu)->device_rbtree_lock |
drivers/infiniband/core/frmr_pools.c create_frmr_pool() -> rb_find_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | node | 4096-ptr_max |
| PARAM_VALUE | 1 | tree | 4096-ptr_max |
| PARAM_VALUE | 2 | cmp | 5855166905789849600 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &pools->rb_lock | ||
| TYPE_LOCK | (struct ib_frmr_pools)->rb_lock |
fs/btrfs/ulist.c ulist_rbtree_insert() -> rb_find_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | node | 4096-ptr_max |
| PARAM_VALUE | 1 | tree | 4096-ptr_max |
| PARAM_VALUE | 2 | cmp | 4724561544440360960 |
| RX_PATH | |||
| TASK_NOT_RUNNING |
fs/btrfs/qgroup.c add_qgroup_rb() -> rb_find_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | node | 4096-ptr_max |
| PARAM_VALUE | 1 | tree | 4096-ptr_max |
| PARAM_VALUE | 2 | cmp | 5015180557153632256 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &fs_info->qgroup_ioctl_lock | ||
| HALF_LOCKED2 | &fs_info->qgroup_lock | ||
| HALF_LOCKED2 | &fs_info->subvol_sem |
fs/btrfs/qgroup.c btrfs_qgroup_add_swapped_blocks() -> rb_find_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | node | 4096-ptr_max |
| PARAM_VALUE | 1 | tree | 4096-ptr_max |
| PARAM_VALUE | 2 | cmp | 4755830587324207104 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &blocks->lock | ||
| LOCK2 | &fs_info->cleaner_mutex | ||
| HALF_LOCKED2 | &cow->lock | ||
| TYPE_LOCK | (struct btrfs_fs_info)->cleaner_mutex | ||
| TYPE_LOCK | (struct btrfs_qgroup_swapped_blocks)->lock |
fs/btrfs/relocation.c rb_simple_insert() -> rb_find_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | node | 4096-ptr_max |
| PARAM_VALUE | 1 | tree | 4096-ptr_max |
| PARAM_VALUE | 2 | cmp | 1081502203863638016 |
| DATA_SOURCE | 1 | tree | $0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &fs_info->cleaner_mutex | ||
| HALF_LOCKED2 | &rc->reloc_root_tree.lock |
fs/btrfs/defrag.c btrfs_insert_inode_defrag() -> rb_find_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | node | 4096-ptr_max |
| PARAM_VALUE | 1 | tree | 4096-ptr_max |
| PARAM_VALUE | 2 | cmp | 2684145406068563968 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &fs_info->defrag_inodes_lock | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct btrfs_fs_info)->defrag_inodes_lock |
fs/btrfs/disk-io.c btrfs_global_root_insert() -> rb_find_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | node | 4096-ptr_max |
| PARAM_VALUE | 1 | tree | 4096-ptr_max |
| PARAM_VALUE | 2 | cmp | 5661571196681777152 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &fs_info->global_root_lock | ||
| TYPE_LOCK | (struct btrfs_fs_info)->global_root_lock |
fs/btrfs/ref-verify.c insert_block_entry() -> rb_find_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | node | 4096-ptr_max |
| PARAM_VALUE | 1 | tree | 4096-ptr_max |
| PARAM_VALUE | 2 | cmp | 3581726723089702912 |
| DATA_SOURCE | 1 | tree | $0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &fs_info->ref_verify_lock | ||
| TYPE_LOCK | (struct btrfs_fs_info)->ref_verify_lock |
fs/btrfs/ref-verify.c insert_ref_entry() -> rb_find_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | node | 4096-ptr_max |
| PARAM_VALUE | 1 | tree | 4096-ptr_max |
| PARAM_VALUE | 2 | cmp | 6157328164396535808 |
| DATA_SOURCE | 1 | tree | $0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &fs_info->ref_verify_lock | ||
| TYPE_LOCK | (struct btrfs_fs_info)->ref_verify_lock |
fs/btrfs/ref-verify.c insert_root_entry() -> rb_find_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | node | 4096-ptr_max |
| PARAM_VALUE | 1 | tree | 4096-ptr_max |
| PARAM_VALUE | 2 | cmp | 6264827443713314816 |
| DATA_SOURCE | 1 | tree | $0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &fs_info->ref_verify_lock | ||
| TYPE_LOCK | (struct btrfs_fs_info)->ref_verify_lock |
fs/btrfs/backref.c rb_simple_insert() -> rb_find_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | node | 4096-ptr_max |
| PARAM_VALUE | 1 | tree | 4096-ptr_max |
| PARAM_VALUE | 2 | cmp | 7609787829942095872 |
| DATA_SOURCE | 1 | tree | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &fs_info->cleaner_mutex | ||
| HALF_LOCKED2 | &fs_info->reclaim_bgs_lock | ||
| TYPE_LOCK | (struct btrfs_fs_info)->cleaner_mutex | ||
| TYPE_LOCK | (struct btrfs_fs_info)->reclaim_bgs_lock |