Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

net/hsr/hsr_framereg.c find_last_bit() -> _find_last_bit()

Type Parameter Key Value
PARAM_VALUE 1 size 128
BUF_SIZE 0 addr 16
BUF_SIZE 0 addr 16
DATA_SOURCE 0 addr $0
DATA_SOURCE 1 size $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &node->seq_out_lock
LOCK2 bh
LOCK2 rcu_read
HALF_LOCKED2 &dev->lock
HALF_LOCKED2 &devlink->lock
HALF_LOCKED2 &net->xfrm.xfrm_cfg_mutex
HALF_LOCKED2 global &audit_cmd_mutex.lock
HALF_LOCKED2 global &cb_lock
HALF_LOCKED2 global &crypto_cfg_mutex
HALF_LOCKED2 global &dpll_lock
HALF_LOCKED2 global &hwsim_phys_lock
HALF_LOCKED2 global &net_dm_mutex
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 global &rx_queue_mutex
TYPE_LOCK (struct hsr_node)->seq_out_lock

lib/pldmfw/pldmfw.c find_last_bit() -> _find_last_bit()

Type Parameter Key Value
PARAM_VALUE 0 addr 4096-ptr_max
DATA_SOURCE 0 addr $0
DATA_SOURCE 1 size $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &devlink->lock

drivers/bus/mhi/host/pm.c find_last_bit() -> _find_last_bit()

Type Parameter Key Value
PARAM_VALUE 0 addr 5009756916632145920
PARAM_VALUE 0 *addr 0-u32max
PARAM_VALUE 1 size 32
DATA_SOURCE 0 addr $0
DATA_SOURCE 1 size $1
RX_PATH
TASK_NOT_RUNNING
LOCK2 &mhi_cntrl->pm_lock
LOCK2 irq
HALF_LOCKED2 &mhi_cntrl->pm_mutex
TYPE_LOCK (struct mhi_controller)->pm_lock

arch/x86/hyperv/hv_apic.c find_last_bit() -> _find_last_bit()

Type Parameter Key Value
BUF_SIZE 0 addr 1024
BUF_SIZE 0 addr 1024
DATA_SOURCE 0 addr $0
DATA_SOURCE 1 size $1

net/netfilter/ipvs/ip_vs_est.c find_last_bit() -> _find_last_bit()

Type Parameter Key Value
PARAM_VALUE 1 size 0-s32max,18446744071562067968-u64max
DATA_SOURCE 0 addr $0
DATA_SOURCE 1 size $1
LOCK2 &ipvs->service_mutex
TYPE_LOCK (struct netns_ipvs)->service_mutex

fs/file.c find_last_bit() -> _find_last_bit()

Type Parameter Key Value
BUF_SIZE 0 addr 8,64-264192
BUF_SIZE 0 addr 8,64-264192
DATA_SOURCE 0 addr $0
DATA_SOURCE 1 size $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 size 0-s32max[c]
UNITS 1 size unit_long
LOCK2 &oldf->file_lock
TYPE_LOCK (struct files_struct)->file_lock

drivers/hwmon/peci/cputemp.c find_last_bit() -> _find_last_bit()

Type Parameter Key Value
PARAM_VALUE 0 addr 0
PARAM_VALUE 1 size 64
DATA_SOURCE 0 addr $0
DATA_SOURCE 1 size $1
RX_PATH
TASK_NOT_RUNNING

drivers/net/ethernet/mellanox/mlx5/core/en/htb.c find_last_bit() -> _find_last_bit()

Type Parameter Key Value
PARAM_VALUE 1 size 0-256,18446744071562067968-u64max
BUF_SIZE 0 addr 32
BUF_SIZE 0 addr 32
CAPPED_DATA 1 size 1
CAPPED_DATA 1 size 1
DATA_SOURCE 0 addr $0
DATA_SOURCE 1 size $1
FUZZY_MAX 1 size 65
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &priv->state_lock

fs/ocfs2/cluster/heartbeat.c find_last_bit() -> _find_last_bit()

Type Parameter Key Value
PARAM_VALUE 0 addr 5210140510161469440
PARAM_VALUE 1 size 255
BUF_SIZE 0 addr 32
BUF_SIZE 0 addr 32
DATA_SOURCE 0 addr $0
DATA_SOURCE 1 size $1

drivers/net/ethernet/chelsio/cxgb4/cxgb4_filter.c find_last_bit() -> _find_last_bit()

Type Parameter Key Value
PARAM_VALUE 1 size 0-4294967294
CAPPED_DATA 1 size 1
CAPPED_DATA 1 size 1
DATA_SOURCE 0 addr $0
DATA_SOURCE 1 size $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 1 size unit_array_size
LOCK2 &t->ftid_lock
LOCK2 bh
TYPE_LOCK (struct tid_info)->ftid_lock

mm/percpu.c find_last_bit() -> _find_last_bit()

Type Parameter Key Value
PARAM_VALUE 1 size 0-1023
DATA_SOURCE 0 addr $0
DATA_SOURCE 1 size $1
PREEMPT_ADD
LOCK2 flags
LOCK2 global &pcpu_lock
HALF_LOCKED2 global &pcpu_alloc_mutex

kernel/smp.c find_last_bit() -> _find_last_bit()

Type Parameter Key Value
PARAM_VALUE 1 size 8192
BUF_SIZE 0 addr 1024
BUF_SIZE 0 addr 1024
DATA_SOURCE 0 addr $0
DATA_SOURCE 1 size $1
LOCK2 irq

fs/nfs/nfs4session.c find_last_bit() -> _find_last_bit()

Type Parameter Key Value
PARAM_VALUE 0 addr 4096-ptr_max
BUF_SIZE 0 addr 128
BUF_SIZE 0 addr 128
CAPPED_DATA 1 size 1
CAPPED_DATA 1 size 1
DATA_SOURCE 0 addr $0
DATA_SOURCE 1 size $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &tbl->slot_tbl_lock
TYPE_LOCK (struct nfs4_slot_table)->slot_tbl_lock

drivers/android/binder.c find_last_bit() -> _find_last_bit()

Type Parameter Key Value
PARAM_VALUE 1 size 65-u32max
DATA_SOURCE 0 addr $0
DATA_SOURCE 1 size $1
PREEMPT_ADD
TASK_NOT_RUNNING
LOCK2 &proc->outer_lock
TYPE_LOCK (struct binder_proc)->outer_lock

lib/tests/cpumask_kunit.c find_last_bit() -> _find_last_bit()

Type Parameter Key Value
BUF_SIZE 0 addr 1024
BUF_SIZE 0 addr 1024
DATA_SOURCE 0 addr $0
DATA_SOURCE 1 size $1

mm/mm_init.c find_last_bit() -> _find_last_bit()

Type Parameter Key Value
PARAM_VALUE 1 size 1024
BUF_SIZE 0 addr 128
BUF_SIZE 0 addr 128
DATA_SOURCE 0 addr $0
DATA_SOURCE 1 size $1
LOCK2 irq

drivers/ntb/hw/amd/ntb_hw_amd.c find_last_bit() -> _find_last_bit()

Type Parameter Key Value
PARAM_VALUE 0 addr 4096-ptr_max
PARAM_VALUE 0 *addr 1,u16max
PARAM_VALUE 1 size 0-64
DATA_SOURCE 0 addr $0
DATA_SOURCE 1 size $1
FUZZY_MAX 1 size 0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &pool->lock

drivers/net/dsa/microchip/ksz9477_acl.c find_last_bit() -> _find_last_bit()

Type Parameter Key Value
PARAM_VALUE 0 addr 5669875187788881920
PARAM_VALUE 0 *addr 1-u16max
PARAM_VALUE 1 size 16
DATA_SOURCE 0 addr $0
DATA_SOURCE 1 size $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &block->cb_lock
HALF_LOCKED2 &flowtable->flow_block_lock

lib/test_bitmap.c find_last_bit() -> _find_last_bit()

Type Parameter Key Value
PARAM_VALUE 0 addr 0
PARAM_VALUE 1 size 0
DATA_SOURCE 0 addr $0
DATA_SOURCE 1 size $1

drivers/gpu/drm/xe/xe_eu_stall.c find_last_bit() -> _find_last_bit()

Type Parameter Key Value
PARAM_VALUE 0 addr 6703468023785394176
PARAM_VALUE 1 size 128
BUF_SIZE 0 addr 16
BUF_SIZE 0 addr 16
DATA_SOURCE 0 addr $0
DATA_SOURCE 1 size $1
LOCK2 &props.gt->eu_stall->stream_lock
TYPE_LOCK (struct xe_eu_stall_gt)->stream_lock

drivers/net/ethernet/marvell/octeontx2/nic/qos.c find_last_bit() -> _find_last_bit()

Type Parameter Key Value
DATA_SOURCE 0 addr $0
DATA_SOURCE 1 size $1
RX_PATH
TASK_NOT_RUNNING
UNITS 1 size unit_array_size
HALF_LOCKED2 global &rtnl_mutex

drivers/input/keyboard/adp5585-keys.c find_last_bit() -> _find_last_bit()

Type Parameter Key Value
PARAM_VALUE 0 addr 4096-ptr_max
DATA_SOURCE 0 addr $0
DATA_SOURCE 1 size $1
MEM_ZERO 0 addr
RX_PATH
TASK_NOT_RUNNING

arch/x86/kvm/vmx/nested.c find_last_bit() -> _find_last_bit()

Type Parameter Key Value
PARAM_VALUE 1 size 256
BUF_SIZE 0 addr 32
BUF_SIZE 0 addr 32
DATA_SOURCE 0 addr $0
DATA_SOURCE 1 size $1

drivers/target/target_core_user.c find_last_bit() -> _find_last_bit()

Type Parameter Key Value
DATA_SOURCE 0 addr $0
DATA_SOURCE 1 size $1
LOCK2 &udev->cmdr_lock
LOCK2 global &root_udev_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct tcmu_dev)->cmdr_lock

arch/x86/hyperv/mmu.c find_last_bit() -> _find_last_bit()

Type Parameter Key Value
BUF_SIZE 0 addr 1024
BUF_SIZE 0 addr 1024
DATA_SOURCE 0 addr $0
DATA_SOURCE 1 size $1
LOCK2 flags

kernel/sched/build_utility.c find_last_bit() -> _find_last_bit()

Type Parameter Key Value
PARAM_VALUE 0 addr 4096-ptr_max
BUF_SIZE 0 addr 1024
BUF_SIZE 0 addr 1024
DATA_SOURCE 0 addr $0
DATA_SOURCE 1 size $1
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &sched_domains_mutex

drivers/net/ethernet/mellanox/mlx5/core/en_tc.c find_last_bit() -> _find_last_bit()

Type Parameter Key Value
PARAM_VALUE 0 addr 3564755655570092032
PARAM_VALUE 0 *addr 1-u32max
PARAM_VALUE 1 size 8,16,32
DATA_SOURCE 0 addr $0
DATA_SOURCE 1 size $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &block->cb_lock
HALF_LOCKED2 &flowtable->flow_block_lock
HALF_LOCKED2 &priv->mdev->priv.eswitch->mode_lock

mm/percpu-stats.c find_last_bit() -> _find_last_bit()

Type Parameter Key Value
PARAM_VALUE 1 size 0-s32max,18446744071562067968-u64max
DATA_SOURCE 0 addr $0
DATA_SOURCE 1 size $1
FUZZY_MAX 1 size 65
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &m->lock
LOCK2 global &pcpu_lock
LOCK2 irq
TYPE_LOCK (struct seq_file)->lock

drivers/scsi/lpfc/lpfc_init.c find_last_bit() -> _find_last_bit()

Type Parameter Key Value
BUF_SIZE 0 addr 1024
BUF_SIZE 0 addr 1024
DATA_SOURCE 0 addr $0
DATA_SOURCE 1 size $1

lib/bitmap.c find_last_bit() -> _find_last_bit()

Type Parameter Key Value
PARAM_VALUE 0 addr 4096-ptr_max
DATA_SOURCE 0 addr $0
DATA_SOURCE 1 size $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 0 addr unit_long
HALF_LOCKED2 &ccp->sb_mutex
HALF_LOCKED2 &cma->lock
HALF_LOCKED2 &ctrlr->cache_lock
HALF_LOCKED2 &data->lock
HALF_LOCKED2 &dm->lock
HALF_LOCKED2 &hsotg->lock
HALF_LOCKED2 &lpg->lock
HALF_LOCKED2 &mtu->lock
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &pble_rsrc->pble_mutex_lock
HALF_LOCKED2 &pdev->dev.mutex
HALF_LOCKED2 &pprm->prm_lock
HALF_LOCKED2 &rvu->rsrc_lock
HALF_LOCKED2 &sb->lock
HALF_LOCKED2 &tcm->lock
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 global &iommu_bitmap_lock
HALF_LOCKED2 global &pack_mutex
HALF_LOCKED2 global &roce_bitmap_lock
HALF_LOCKED2 global &vector_lock
HALF_LOCKED2 irq
HALF_LOCKED2 qs_cfg->qs_mutex
HALF_LOCKED2 rcu_read

drivers/net/wireless/intel/iwlwifi/mvm/rs.c find_last_bit() -> _find_last_bit()

Type Parameter Key Value
PARAM_VALUE 0 *addr 1-u64max
PARAM_VALUE 1 size 64
DATA_SOURCE 0 addr $0
DATA_SOURCE 1 size $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 1 size unit_bit
LOCK2 &mvmsta->deflink.lq_sta.rs_drv.pers.lock
LOCK2 bh
HALF_LOCKED2 &mvm->mutex
HALF_LOCKED2 &sta->rate_ctrl_lock
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct lq_sta_pers)->lock

drivers/net/ethernet/airoha/airoha_eth.c find_last_bit() -> _find_last_bit()

Type Parameter Key Value
PARAM_VALUE 0 addr 4096-ptr_max
PARAM_VALUE 1 size 4
DATA_SOURCE 0 addr $0
DATA_SOURCE 1 size $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &rtnl_mutex

lib/find_bit_benchmark.c find_last_bit() -> _find_last_bit()

Type Parameter Key Value
PARAM_VALUE 0 addr 1969539149701128192
PARAM_VALUE 1 size 1-327680
BUF_SIZE 0 addr 40960
BUF_SIZE 0 addr 40960
DATA_SOURCE 0 addr $0
DATA_SOURCE 1 size $1
FUZZY_MAX 1 size 65

drivers/pci/controller/cadence/pcie-cadence-ep.c find_last_bit() -> _find_last_bit()

Type Parameter Key Value
PARAM_VALUE 0 addr 4096-ptr_max
PARAM_VALUE 1 size 64
DATA_SOURCE 0 addr $0
DATA_SOURCE 1 size $1
RX_PATH
TASK_NOT_RUNNING
UNITS 1 size unit_bit
LOCK2 &buffer->mutex
LOCK2 &epc->lock
LOCK2 &frag->frag_sem
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct configfs_buffer)->mutex
TYPE_LOCK (struct configfs_fragment)->frag_sem
TYPE_LOCK (struct pci_epc)->lock