Defined in 1 files as a function:

Referenced in 31 files:

Smatch caller information:

kernel/irq/matrix.c matrix_alloc_area() -> bitmap_find_next_zero_area()

Type Parameter Key Value
PARAM_VALUE 3 nr 1
PARAM_VALUE 4 align_mask 0
DATA_SOURCE 3 nr $2
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &vector_lock
HALF_LOCKED2 flags

drivers/crypto/ccp/ccp-dev-v5.c ccp_lsb_alloc() -> bitmap_find_next_zero_area()

Type Parameter Key Value
PARAM_VALUE 1 size 16
PARAM_VALUE 2 start 0
PARAM_VALUE 3 nr 0-64
PARAM_VALUE 4 align_mask 0
CAPPED_DATA 3 nr 1
DATA_SOURCE 3 nr $1
RX_PATH
TASK_NOT_RUNNING

drivers/crypto/ccp/ccp-dev-v5.c ccp_lsb_alloc() -> bitmap_find_next_zero_area()

Type Parameter Key Value
PARAM_VALUE 1 size 128
PARAM_VALUE 2 start 0
PARAM_VALUE 3 nr 0-64
PARAM_VALUE 4 align_mask 0
BUF_SIZE 0 map 16
CAPPED_DATA 3 nr 1
DATA_SOURCE 3 nr $1
RX_PATH
TASK_NOT_RUNNING
LOCK2 &ccp->sb_mutex
TYPE_LOCK (struct ccp_device)->sb_mutex

drivers/net/ethernet/mellanox/mlx5/core/lib/dm.c mlx5_dm_sw_icm_alloc() -> bitmap_find_next_zero_area()

Type Parameter Key Value
PARAM_VALUE 0 map 1-u64max
PARAM_VALUE 2 start 0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &dm->lock
HALF_LOCKED2 &pool->mutex
TYPE_LOCK (struct mlx5_dm)->lock

drivers/infiniband/hw/mlx5/dm.c mlx5_cmd_alloc_memic() -> bitmap_find_next_zero_area()

Type Parameter Key Value
PARAM_VALUE 1 size 1-1048575
PARAM_VALUE 2 start 0-1048574
PARAM_VALUE 4 align_mask 0
BUF_SIZE 0 map 32
CAPPED_DATA 1 size 1
CAPPED_DATA 1 size 1
CAPPED_DATA 2 start 1
CAPPED_DATA 2 start 1
PARAM_COMPARE 1 size > $2
PARAM_COMPARE 1 size > $2
PARAM_COMPARE 2 start < $1
PREEMPT_ADD <- disables preempt
UNITS 1 size unit_page
UNITS 2 start unit_page
LOCK2 &dm->lock
TYPE_LOCK (struct mlx5_dm)->lock

drivers/net/ethernet/marvell/octeontx2/af/cn20k/npc.c __npc_subbank_contig_alloc() -> bitmap_find_next_zero_area()

Type Parameter Key Value
PARAM_VALUE 1 size 0-s32max,18446744071562067968-u64max
PARAM_VALUE 2 start 0-s32max,18446744071562067968-u64max
PARAM_VALUE 4 align_mask 0
BUF_SIZE 0 map 32
BUF_SIZE 0 map 32
CAPPED_DATA 3 nr 1
DATA_SOURCE 0 map $9
DATA_SOURCE 3 nr $6
RX_PATH
NO_OVERFLOW_SIMPLE 3 nr
UNITS 1 size unit_bit
UNITS 2 start unit_bit
UNITS 3 nr unit_bit
LOCK2 &sb->lock
TYPE_LOCK (struct npc_subbank)->lock

drivers/gpu/drm/xe/xe_guc_id_mgr.c idm_reserve_chunk_locked() -> bitmap_find_next_zero_area()

Type Parameter Key Value
PARAM_VALUE 1 size 1-u32max
PARAM_VALUE 2 start 0
PARAM_VALUE 4 align_mask 0
DATA_SOURCE 3 nr $1
FUZZY_MAX 1 size 2
RX_PATH
TASK_NOT_RUNNING
USER_DATA 3 nr 0-u32max
UNITS 3 nr unit_array_size

drivers/gpu/drm/xe/xe_guc_db_mgr.c dbm_reserve_chunk_locked() -> bitmap_find_next_zero_area()

Type Parameter Key Value
PARAM_VALUE 1 size 1-u32max
PARAM_VALUE 2 start 0
PARAM_VALUE 4 align_mask 0
DATA_SOURCE 3 nr $1
NOSPEC 3 nr
NOSPEC 3 nr
RX_PATH
TASK_NOT_RUNNING
USER_DATA 3 nr 0-u32max

drivers/net/ethernet/chelsio/libcxgb/libcxgb_ppm.c ppm_find_unused_entries() -> bitmap_find_next_zero_area()

Type Parameter Key Value
PARAM_VALUE 3 nr 1-16384
PARAM_VALUE 4 align_mask 0
CAPPED_DATA 3 nr 1
DATA_SOURCE 0 map $0
DATA_SOURCE 1 size $1
DATA_SOURCE 2 start $2
DATA_SOURCE 3 nr $3
DATA_SOURCE 4 align_mask $4
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 1 size unit_bit
UNITS 2 start unit_bit
LOCK2 bh
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &ppm->map_lock

drivers/net/ethernet/chelsio/libcxgb/libcxgb_ppm.c ppm_find_unused_entries() -> bitmap_find_next_zero_area()

Type Parameter Key Value
PARAM_VALUE 2 start 0
PARAM_VALUE 4 align_mask 0
CAPPED_DATA 1 size 1
DATA_SOURCE 0 map $0
DATA_SOURCE 1 size $1
DATA_SOURCE 4 align_mask $4
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 1 size unit_bit
UNITS 3 nr unit_bit
LOCK2 bh
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &ppm->map_lock

drivers/media/platform/samsung/s5p-mfc/s5p_mfc_opr.c s5p_mfc_alloc_priv_buf() -> bitmap_find_next_zero_area()

Type Parameter Key Value
PARAM_VALUE 2 start 0
PARAM_VALUE 4 align_mask 15
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 size 0-u32max
UNITS 1 size unit_page
UNITS 3 nr unit_page
UNITS 4 align_mask unit_page

drivers/media/common/videobuf2/videobuf2-core.c __vb2_queue_alloc() -> bitmap_find_next_zero_area()

Type Parameter Key Value
PARAM_VALUE 0 map 1-u64max
PARAM_VALUE 2 start 0
PARAM_VALUE 3 nr 1-u32max
PARAM_VALUE 4 align_mask 0
DATA_SOURCE 3 nr $2 [m]
NOSPEC 3 nr
RX_PATH
TASK_NOT_RUNNING
USER_DATA 3 nr 1-s32max[c]
NO_OVERFLOW_SIMPLE 1 size
NO_OVERFLOW_SIMPLE 3 nr
UNITS 3 nr unit_array_size

lib/iommu-helper.c iommu_area_alloc() -> bitmap_find_next_zero_area()

Type Parameter Key Value
DATA_SOURCE 0 map $0
DATA_SOURCE 1 size $1 [m]
DATA_SOURCE 2 start $2 [m]
DATA_SOURCE 3 nr $3
DATA_SOURCE 4 align_mask $6
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 2 start 0-9007199254745086,18442240474082181121-u64max[c]
HOST_DATA 3 nr 2-1048578[c]
UNITS 2 start unit_page
LOCK2 flags
LOCK2 global &iommu_bitmap_lock

drivers/net/ethernet/marvell/octeontx2/af/rvu.c rvu_alloc_rsrc_contig() -> bitmap_find_next_zero_area()

Type Parameter Key Value
PARAM_VALUE 0 map 1-u64max
PARAM_VALUE 2 start 0
PARAM_VALUE 4 align_mask 0
DATA_SOURCE 3 nr $1
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 1 size 1-4096[c]
HOST_DATA 3 nr 0-256
NO_OVERFLOW_SIMPLE 1 size
UNITS 1 size unit_array_size

drivers/net/ethernet/marvell/octeontx2/af/rvu.c rvu_rsrc_check_contig() -> bitmap_find_next_zero_area()

Type Parameter Key Value
PARAM_VALUE 0 map 1-u64max
PARAM_VALUE 2 start 0
PARAM_VALUE 4 align_mask 0
DATA_SOURCE 3 nr $1
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 3 nr 0-256
UNITS 1 size unit_array_size
HALF_LOCKED2 &rvu->rsrc_lock

drivers/usb/mtu3/mtu3_core.c ep_fifo_alloc() -> bitmap_find_next_zero_area()

Type Parameter Key Value
PARAM_VALUE 2 start 0
PARAM_VALUE 4 align_mask 0
BUF_SIZE 0 map 16
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &mtu->lock
HALF_LOCKED2 &cdev->lock
HALF_LOCKED2 &data->dev->lock
HALF_LOCKED2 &data->lock
HALF_LOCKED2 &dev->lock
HALF_LOCKED2 &func->ffs->eps_lock
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &port->lock
HALF_LOCKED2 &udc->connect_lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct mtu3)->lock

drivers/usb/dwc2/hcd_queue.c pmap_schedule() -> bitmap_find_next_zero_area()

Type Parameter Key Value
PARAM_VALUE 1 size 0-s32max,18446744071562067968-u64max
PARAM_VALUE 2 start 0-s32max,18446744071562067968-u64max
PARAM_VALUE 3 nr 0-100,2147483648-u32max
PARAM_VALUE 4 align_mask 0
BUF_SIZE 0 map (-1),104
BUF_SIZE 0 map (-1),104
CAPPED_DATA 3 nr 1
DATA_SOURCE 0 map $0
DATA_SOURCE 2 start $5 [m]
DATA_SOURCE 3 nr $3
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &hsotg->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct dwc2_hsotg)->lock

drivers/usb/dwc2/hcd_queue.c pmap_schedule() -> bitmap_find_next_zero_area()

Type Parameter Key Value
PARAM_VALUE 1 size 0-s32max,18446744071562067968-u64max
PARAM_VALUE 2 start 0-s32max,18446744071562067968-u64max
PARAM_VALUE 3 nr 0-100,2147483648-u32max
PARAM_VALUE 4 align_mask 0
BUF_SIZE 0 map (-1),104
BUF_SIZE 0 map (-1),104
CAPPED_DATA 3 nr 1
DATA_SOURCE 0 map $0
DATA_SOURCE 3 nr $3
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &hsotg->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct dwc2_hsotg)->lock

drivers/usb/dwc2/hcd_queue.c pmap_schedule() -> bitmap_find_next_zero_area()

Type Parameter Key Value
PARAM_VALUE 1 size 0-s32max,18446744071562067968-u64max
PARAM_VALUE 2 start 0-s32max,18446744071562067968-u64max
PARAM_VALUE 3 nr 0-100,2147483648-u32max
PARAM_VALUE 4 align_mask 0
BUF_SIZE 0 map (-1),104
BUF_SIZE 0 map (-1),104
CAPPED_DATA 3 nr 1
DATA_SOURCE 0 map $0
DATA_SOURCE 3 nr $3
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &hsotg->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct dwc2_hsotg)->lock

lib/region_alloc_benchmark.c benchmark_bitmap() -> bitmap_find_next_zero_area()

Type Parameter Key Value
PARAM_VALUE 1 size 0-18446744073709551614
PARAM_VALUE 2 start 0
PARAM_VALUE 3 nr 0-255
PARAM_VALUE 4 align_mask 0
CAPPED_DATA 1 size 1
CAPPED_DATA 1 size 1
DATA_SOURCE 1 size $0
MEM_ZERO 0 map

drivers/infiniband/hw/irdma/utils.c irdma_prm_get_pbles() -> bitmap_find_next_zero_area()

Type Parameter Key Value
PARAM_VALUE 2 start 0
PARAM_VALUE 3 nr 0-67108864
PARAM_VALUE 4 align_mask 0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &pble_rsrc->pble_mutex_lock
LOCK2 &pprm->prm_lock
LOCK2 flags
TYPE_LOCK (struct irdma_hmc_pble_rsrc)->pble_mutex_lock
TYPE_LOCK (struct irdma_pble_prm)->prm_lock

drivers/net/ethernet/marvell/octeontx2/af/rvu_nix.c nix_txsch_alloc() -> bitmap_find_next_zero_area()

Type Parameter Key Value
PARAM_VALUE 2 start 0-s32max,18446744071562067968-u64max
PARAM_VALUE 3 nr 1-u16max
PARAM_VALUE 4 align_mask 0
DATA_SOURCE 2 start $4
UNITS 1 size unit_array_size
LOCK2 &rvu->rsrc_lock
TYPE_LOCK (struct rvu)->rsrc_lock

lib/genalloc.c gen_pool_best_fit() -> bitmap_find_next_zero_area()

Type Parameter Key Value
PARAM_VALUE 2 start 0-18446744073709551614
PARAM_VALUE 4 align_mask 0
CAPPED_DATA 2 start 1
CAPPED_DATA 2 start 1
DATA_SOURCE 0 map $0
DATA_SOURCE 1 size $1
DATA_SOURCE 2 start $2
DATA_SOURCE 3 nr $3
FUZZY_MAX 2 start 0
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 2 start 1-4097[c]
HOST_DATA 3 nr 0-u32max[c]
USER_DATA 2 start 1-s32max[c]
USER_DATA 3 nr 0-u32max[c]
UNITS 2 start unit_bit
LOCK2 rcu_read
HALF_LOCKED2 &chan->lock
HALF_LOCKED2 &ipc->lock
HALF_LOCKED2 flags
HALF_LOCKED2 global &cpm_muram_lock

lib/genalloc.c gen_pool_best_fit() -> bitmap_find_next_zero_area()

Type Parameter Key Value
PARAM_VALUE 1 size 1-u64max
PARAM_VALUE 2 start 1-65
PARAM_VALUE 4 align_mask 0
CAPPED_DATA 1 size 1
CAPPED_DATA 1 size 1
CAPPED_DATA 2 start 1
DATA_SOURCE 0 map $0
DATA_SOURCE 1 size $1
DATA_SOURCE 3 nr $3
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 3 nr 0-u32max[c]
USER_DATA 3 nr 0-u32max[c]
LOCK2 rcu_read
HALF_LOCKED2 &chan->lock
HALF_LOCKED2 &ipc->lock
HALF_LOCKED2 flags
HALF_LOCKED2 global &cpm_muram_lock

lib/genalloc.c gen_pool_first_fit() -> bitmap_find_next_zero_area()

Type Parameter Key Value
PARAM_VALUE 2 start 0-18446744073709551614
PARAM_VALUE 4 align_mask 0
CAPPED_DATA 2 start 1
CAPPED_DATA 2 start 1
DATA_SOURCE 0 map $0
DATA_SOURCE 1 size $1
DATA_SOURCE 2 start $2
DATA_SOURCE 3 nr $3
FUZZY_MAX 2 start 0
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 2 start 1-4097[c]
HOST_DATA 3 nr 0-u32max[c]
USER_DATA 2 start 1-s32max[c]
USER_DATA 3 nr 0-u32max[c]
UNITS 2 start unit_bit
LOCK2 rcu_read
HALF_LOCKED2 &chan->lock
HALF_LOCKED2 &ipc->lock
HALF_LOCKED2 flags
HALF_LOCKED2 global &cpm_muram_lock

lib/genalloc.c gen_pool_first_fit_order_align() -> bitmap_find_next_zero_area()

Type Parameter Key Value
PARAM_VALUE 2 start 0-18446744073709551614
CAPPED_DATA 2 start 1
CAPPED_DATA 2 start 1
DATA_SOURCE 0 map $0
DATA_SOURCE 1 size $1
DATA_SOURCE 2 start $2
DATA_SOURCE 3 nr $3
FUZZY_MAX 2 start 0
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 2 start 1-4097[c]
HOST_DATA 3 nr 0-u32max[c]
USER_DATA 2 start 1-s32max[c]
USER_DATA 3 nr 0-u32max[c]
UNITS 2 start unit_bit
LOCK2 rcu_read
HALF_LOCKED2 &chan->lock
HALF_LOCKED2 &ipc->lock
HALF_LOCKED2 flags
HALF_LOCKED2 global &cpm_muram_lock

lib/genalloc.c gen_pool_fixed_alloc() -> bitmap_find_next_zero_area()

Type Parameter Key Value
PARAM_VALUE 4 align_mask 0
DATA_SOURCE 0 map $0
DATA_SOURCE 1 size $1
DATA_SOURCE 3 nr $3
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 3 nr 0-u32max[c]
USER_DATA 3 nr 0-u32max[c]
UNITS 2 start unit_bit
LOCK2 rcu_read
HALF_LOCKED2 &chan->lock
HALF_LOCKED2 &ipc->lock
HALF_LOCKED2 flags
HALF_LOCKED2 global &cpm_muram_lock

drivers/soc/qcom/rpmh-rsc.c find_slots() -> bitmap_find_next_zero_area()

Type Parameter Key Value
PARAM_VALUE 1 size 48
PARAM_VALUE 2 start 0-s32max
PARAM_VALUE 4 align_mask 0
CAPPED_DATA 2 start 1
LOCK2 &ctrlr->cache_lock
HALF_LOCKED2 &drv->lock
TYPE_LOCK (struct rpmh_ctrlr)->cache_lock

drivers/leds/rgb/leds-qcom-lpg.c lpg_lut_store() -> bitmap_find_next_zero_area()

Type Parameter Key Value
PARAM_VALUE 2 start 0
PARAM_VALUE 3 nr 1-s32max
PARAM_VALUE 4 align_mask 0
DATA_SOURCE 3 nr $2
RX_PATH
TASK_NOT_RUNNING
LOCK2 &data->lock
LOCK2 &lpg->lock
HALF_LOCKED2 &cdev->led_access
HALF_LOCKED2 &cdev->trigger_lock
HALF_LOCKED2 &of->mutex
TYPE_LOCK (struct lpg)->lock
TYPE_LOCK (struct pattern_trig_data)->lock

drivers/leds/rgb/leds-qcom-lpg.c lpg_lut_store_sdam() -> bitmap_find_next_zero_area()

Type Parameter Key Value
PARAM_VALUE 1 size 2-u32max
PARAM_VALUE 2 start 0
PARAM_VALUE 3 nr 2-s32max
PARAM_VALUE 4 align_mask 0
CAPPED_DATA 3 nr 1
DATA_SOURCE 3 nr $2
PARAM_COMPARE 1 size >= $3
PARAM_COMPARE 3 nr <= $1
RX_PATH
TASK_NOT_RUNNING
LOCK2 &data->lock
LOCK2 &lpg->lock
HALF_LOCKED2 &cdev->led_access
HALF_LOCKED2 &cdev->trigger_lock
HALF_LOCKED2 &of->mutex
TYPE_LOCK (struct lpg)->lock
TYPE_LOCK (struct pattern_trig_data)->lock

drivers/net/ethernet/marvell/octeontx2/af/mcs.c mcs_alloc_ctrlpktrule() -> bitmap_find_next_zero_area()

Type Parameter Key Value
PARAM_VALUE 0 map 1-u64max
PARAM_VALUE 3 nr 1
PARAM_VALUE 4 align_mask 0
DATA_SOURCE 2 start $2
UNITS 1 size unit_array_size
LOCK2 &rvu->rsrc_lock
TYPE_LOCK (struct rvu)->rsrc_lock

drivers/gpu/drm/omapdrm/tcm-sita.c l2r_t2b() -> bitmap_find_next_zero_area()

Type Parameter Key Value
PARAM_VALUE 1 size 1-u64max
PARAM_VALUE 2 start 0-18446744073709551614
PARAM_VALUE 3 nr 1-u16max
PARAM_VALUE 4 align_mask 0-4350
BUF_SIZE 0 map 4096
BUF_SIZE 0 map 4096
CAPPED_DATA 2 start 1
CAPPED_DATA 2 start 1
CAPPED_DATA 3 nr 1
DATA_SOURCE 0 map $6
DATA_SOURCE 1 size $7
DATA_SOURCE 3 nr $0
PARAM_COMPARE 1 size > $2
PARAM_COMPARE 2 start < $1
PARAM_COMPARE 2 start < $1
PARAM_COMPARE 4 align_mask < $4
POWER_OF_TWO 4 align_mask
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &tcm->lock
HALF_LOCKED2 &omap_obj->lock
TYPE_LOCK (struct tcm)->lock

drivers/net/ethernet/intel/ice/ice_base.c __ice_vsi_get_qs_contig() -> bitmap_find_next_zero_area()

Type Parameter Key Value
PARAM_VALUE 1 size 0-u16max
PARAM_VALUE 2 start 0
PARAM_VALUE 3 nr 0-u16max
PARAM_VALUE 4 align_mask 0
NOSPEC 3 nr
NOSPEC 3 nr
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 1 size 0-64[c]
USER_DATA 3 nr 1-u16max[c]
NO_OVERFLOW_SIMPLE 3 nr
UNITS 3 nr unit_array_size
LOCK2 qs_cfg->qs_mutex
HALF_LOCKED2 &vsi->xdp_state_lock

drivers/infiniband/hw/usnic/usnic_transport.c usnic_transport_rsrv_port() -> bitmap_find_next_zero_area()

Type Parameter Key Value
PARAM_VALUE 1 size 8192
PARAM_VALUE 3 nr 1
PARAM_VALUE 4 align_mask 0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &roce_bitmap_lock
HALF_LOCKED2 &qp_grp->lock
HALF_LOCKED2 &qp_grp->vf->pf->usdev_lock
HALF_LOCKED2 &us_ibdev->usdev_lock
HALF_LOCKED2 &vf->lock
TYPE_LOCK (struct usnic_ib_dev)->usdev_lock

drivers/net/ethernet/intel/ice/ice_irq.c ice_virt_get_irqs() -> bitmap_find_next_zero_area()

Type Parameter Key Value
PARAM_VALUE 2 start 0
PARAM_VALUE 4 align_mask 0
DATA_SOURCE 3 nr $1
RX_PATH
TASK_NOT_RUNNING
USER_DATA 3 nr 0-u16max
NO_OVERFLOW_SIMPLE 3 nr
UNITS 3 nr unit_array_size
LOCK2 &of->mutex
LOCK2 &pdev->dev.mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pf->vfs.table_lock
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &vf_dev->dev.mutex
HALF_LOCKED2 global &pci_rescan_remove_lock
TYPE_LOCK (struct device)->mutex
TYPE_LOCK (struct kernfs_open_file)->mutex

drivers/crypto/ccp/ccp-dev-v3.c ccp_alloc_ksb() -> bitmap_find_next_zero_area()

Type Parameter Key Value
PARAM_VALUE 3 nr 0-64
PARAM_VALUE 4 align_mask 0
CAPPED_DATA 3 nr 1
DATA_SOURCE 3 nr $1
LOCK2 &ccp->sb_mutex
TYPE_LOCK (struct ccp_device)->sb_mutex

kernel/bpf/core.c bpf_prog_pack_alloc() -> bitmap_find_next_zero_area()

Type Parameter Key Value
PARAM_VALUE 1 size 0-s32max,18446744071562067968-u64max
PARAM_VALUE 2 start 0
PARAM_VALUE 4 align_mask 0
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &pack_mutex
HALF_LOCKED2 &d->mutex

kernel/bpf/core.c bpf_prog_pack_free() -> bitmap_find_next_zero_area()

Type Parameter Key Value
PARAM_VALUE 1 size 0-s32max,18446744071562067968-u64max
PARAM_VALUE 2 start 0
PARAM_VALUE 4 align_mask 0
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &pack_mutex
HALF_LOCKED2 &d->mutex