Defined in 1 files as a function:

Referenced in 7 files:

Smatch caller information:

drivers/acpi/platform_profile.c platform_profile_cycle() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 0 addr 4096-ptr_max
PARAM_VALUE 1 size 8
PARAM_VALUE 2 offset 1-6
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &wblock->notify_lock
HALF_LOCKED2 _T->lock

kernel/watchdog_buddy.c cpumask_next_wrap() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 2 offset 0-s32max,18446744071562067968-u64max
BUF_SIZE 0 addr 1024
RX_PATH
TASK_NOT_RUNNING

kernel/futex/core.c __futex_hash() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 2 offset 0-1024
BUF_SIZE 0 addr 128
CAPPED_DATA 2 offset 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 2 offset 1-1024[c]
HALF_LOCKED2 &curr->futex.exit_mutex
HALF_LOCKED2 &curr->pi_lock
HALF_LOCKED2 irq

kernel/rcu/rcutorture.c cpumask_next_wrap() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 2 offset 0-65
BUF_SIZE 0 addr 1024
CAPPED_DATA 2 offset 1

drivers/net/ethernet/intel/ice/ice_main.c ice_ll_ts_intr() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 2 offset 0-128,18446744073709551489-u64max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
UNITS 1 size unit_array_size
LOCK2 &tx->lock
LOCK2 flags
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 flags
TYPE_LOCK (struct ice_ptp_tx)->lock

drivers/net/ethernet/intel/ice/ice_ptp.c ice_ptp_ts_irq() -> find_next_bit_wrap()

Type Parameter Key Value
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
UNITS 1 size unit_array_size
LOCK2 &tx->lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct ice_ptp_tx)->lock

drivers/pci/controller/pci-hyperv.c cpumask_next_wrap() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 2 offset 0
BUF_SIZE 0 addr 1024
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &multi_msi_cpu_lock
LOCK2 flags
HALF_LOCKED2 &_T->lock->msi.data->mutex

lib/tests/cpumask_kunit.c test_cpumask_iterators() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 1 size 0-64
PARAM_VALUE 2 offset 0-32
BUF_SIZE 0 addr 1024
CAPPED_DATA 1 size 1
CAPPED_DATA 2 offset 1

lib/tests/cpumask_kunit.c test_cpumask_iterators() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 1 size 1-64
PARAM_VALUE 2 offset 0-32
BUF_SIZE 0 addr 1024
CAPPED_DATA 1 size 1
CAPPED_DATA 2 offset 1

lib/test_bitmap.c test_for_each_set_bit_wrap() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 0 addr 6496103338412326912
PARAM_VALUE 1 size 500
PARAM_VALUE 2 offset 0-499
BUF_SIZE 0 addr 64

drivers/scsi/storvsc_drv.c storvsc_do_io() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 1 size 0-8193
PARAM_VALUE 2 offset 1
BUF_SIZE 0 addr 1024
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sdev->state_mutex

drivers/scsi/storvsc_drv.c storvsc_do_io() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 1 size 0-8193
PARAM_VALUE 2 offset 1
BUF_SIZE 0 addr 1024
CAPPED_DATA 1 size 1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sdev->state_mutex

kernel/trace/rethook.c objpool_pop() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 1 size 0-8193
PARAM_VALUE 2 offset 0
BUF_SIZE 0 addr 1024
LOCK2 flags

lib/objpool.c objpool_pop() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 1 size 0-8193
PARAM_VALUE 2 offset 0
BUF_SIZE 0 addr 1024
RX_PATH
TASK_NOT_RUNNING
LOCK2 flags

lib/test_objpool.c objpool_pop() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 1 size 0-8193
PARAM_VALUE 2 offset 0
BUF_SIZE 0 addr 1024
RX_PATH
TASK_NOT_RUNNING
LOCK2 flags

kernel/sched/build_utility.c build_overlap_sched_groups() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 1 size 0-8193
PARAM_VALUE 2 offset 0-63
BUF_SIZE 0 addr 1024
CAPPED_DATA 2 offset 1
DATA_SOURCE 2 offset $1
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &sched_domains_mutex

kernel/sched/build_utility.c build_sched_groups() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 1 size 0-8193
PARAM_VALUE 2 offset 0-63
BUF_SIZE 0 addr 1024
CAPPED_DATA 2 offset 1
DATA_SOURCE 2 offset $1
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &sched_domains_mutex

kernel/sched/fair.c _nohz_idle_balance() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 1 size 0-8193
PARAM_VALUE 2 offset 0-s32max,18446744071562067968-u64max
BUF_SIZE 0 addr 1024
PREEMPT_ADD

kernel/sched/fair.c select_idle_capacity() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 1 size 0-8193
PARAM_VALUE 2 offset 0-s32max,18446744071562067968-u64max
BUF_SIZE 0 addr 1024
DATA_SOURCE 2 offset $2
RX_PATH
TASK_NOT_RUNNING
LOCK2 &p->pi_lock
HALF_LOCKED2 &p->sighand->siglock
HALF_LOCKED2 irq
TYPE_LOCK (struct task_struct)->pi_lock

kernel/sched/fair.c select_idle_cpu() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 1 size 0-8193
PARAM_VALUE 2 offset 0-s32max,18446744071562067968-u64max
BUF_SIZE 0 addr 1024
RX_PATH
TASK_NOT_RUNNING
LOCK2 &p->pi_lock
HALF_LOCKED2 &p->sighand->siglock
HALF_LOCKED2 irq
TYPE_LOCK (struct task_struct)->pi_lock

kernel/sched/fair.c select_idle_cpu() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 0 addr 4096-ptr_max
PARAM_VALUE 1 size 0-8193
PARAM_VALUE 2 offset 0-s32max,18446744071562067968-u64max
BUF_SIZE 0 addr 1024
RX_PATH
TASK_NOT_RUNNING
LOCK2 &p->pi_lock
HALF_LOCKED2 &p->sighand->siglock
HALF_LOCKED2 irq
TYPE_LOCK (struct task_struct)->pi_lock

kernel/sched/fair.c task_numa_assign() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 1 size 0-8193
PARAM_VALUE 2 offset 0-s32max,18446744071562067968-u64max
BUF_SIZE 0 addr 1024
CAPPED_DATA 2 offset 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 rcu_read

drivers/hv/hv.c hv_pick_new_cpu() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 1 size 0-8193
PARAM_VALUE 2 offset 0-s32max,18446744071562067968-u64max
BUF_SIZE 0 addr 1024
CAPPED_DATA 1 size 1
DATA_SOURCE 2 offset r get_random_u32_below
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &vmbus_connection.channel_mutex
HALF_LOCKED2 global &cpuhp_state_mutex
HALF_LOCKED2 irq
TYPE_LOCK (struct vmbus_connection)->channel_mutex

kernel/time/clocksource.c cpumask_next_wrap() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 2 offset 1-65
BUF_SIZE 0 addr 1024
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &watchdog_lock

drivers/scsi/lpfc/lpfc_init.c cpumask_next_wrap() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 2 offset 0-s32max,18446744071562067968-u64max
BUF_SIZE 0 addr 1024

drivers/scsi/lpfc/lpfc_nvmet.c cpumask_next_wrap() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 2 offset 1-65
BUF_SIZE 0 addr 1024
CAPPED_DATA 2 offset 1

drivers/scsi/lpfc/lpfc_sli.c lpfc_sli4_fcf_rr_next_index_get() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 1 size 32
PARAM_VALUE 2 offset 0-u16max
RX_PATH
TASK_NOT_RUNNING

kernel/padata.c cpumask_next_wrap() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 2 offset 0-s32max,18446744071562067968-u64max
BUF_SIZE 0 addr 1024
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 bh

lib/cpumask.c cpumask_next_wrap() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 2 offset 1-8193
BUF_SIZE 0 addr 1024
RX_PATH
TASK_NOT_RUNNING

drivers/md/raid5.c raid5_make_request() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 0 addr 0
PARAM_VALUE 1 size 0-s32max,18446744071562067968-u64max
PARAM_VALUE 2 offset 0-s32max,18446744071562067968-u64max
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 2 offset 0-s32max,18446744071562067968-u64max
USER_DATA 2 offset 0-s32max,18446744071562067968-u64max
HALF_LOCKED2 &bi->bi_bdev->bd_queue->queue_lock
HALF_LOCKED2 &md->io_barrier

kernel/bpf/percpu_freelist.c ___pcpu_freelist_pop() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 1 size 0-8193
PARAM_VALUE 2 offset 0
BUF_SIZE 0 addr 1024
PREEMPT_ADD
LOCK2 flags

kernel/bpf/percpu_freelist.c __pcpu_freelist_push() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 1 size 0-8193
PARAM_VALUE 2 offset 0
BUF_SIZE 0 addr 1024
PREEMPT_ADD
LOCK2 flags

drivers/net/virtio_net.c virtnet_set_affinity() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 1 size 0-8193
PARAM_VALUE 2 offset 0-64
BUF_SIZE 0 addr 1024
CAPPED_DATA 2 offset 1
PARAM_COMPARE 1 size >= $2
PARAM_COMPARE 2 offset <= $1
RX_PATH
TASK_NOT_RUNNING

kernel/trace/trace_hwlat.c cpumask_next_wrap() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 2 offset 1
BUF_SIZE 0 addr 1024

kernel/rcu/hazptrtorture.c cpumask_next_wrap() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 2 offset 1-8193
BUF_SIZE 0 addr 1024
CAPPED_DATA 2 offset 1
PREEMPT_ADD

kernel/bpf/bpf_lru_list.c cpumask_next_wrap() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 2 offset 1-65536
BUF_SIZE 0 addr 1024
CAPPED_DATA 2 offset 1

drivers/crypto/caam/qi.c cpumask_next_wrap() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 0 addr 4096-ptr_max
PARAM_VALUE 2 offset 0-s32max,18446744071562067968-u64max
BUF_SIZE 0 addr 1024
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &ctx->lock
TYPE_LOCK (struct caam_ctx)->lock

kernel/sched/core.c pick_next_task() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 1 size 0-8193
PARAM_VALUE 2 offset 0-s32max
BUF_SIZE 0 addr 1024
CAPPED_DATA 2 offset 1
RX_PATH
TASK_NOT_RUNNING
LOCK2 irq

kernel/sched/core.c steal_cookie_task() -> find_next_bit_wrap()

Type Parameter Key Value
PARAM_VALUE 1 size 0-8193
PARAM_VALUE 2 offset 0-s32max,18446744071562067968-u64max
BUF_SIZE 0 addr 1024
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 flags