Defined in 2 files as a prototype:

Defined in 2 files as a function:

Referenced in 10 files:

Smatch caller information:

mm/kfence/kfence_test.c test_free_bulk() -> kmem_cache_free_bulk()

Type Parameter Key Value
PARAM_VALUE 1 size 5
PARAM_VALUE 2 p 4096-ptr_max
BUF_SIZE 2 p 40
NOCHECK_CALL
UNITS 1 size unit_array_size

mm/kfence/kfence_test.c test_memcache_alloc_bulk() -> kmem_cache_free_bulk()

Type Parameter Key Value
PARAM_VALUE 0 s 4096-ptr_max
PARAM_VALUE 1 size 100
PARAM_VALUE 2 p 7036214771860512768
BUF_SIZE 2 p 800
CAPPED_DATA 0 s 1
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 s->object_size
UNITS 1 size unit_array_size

lib/maple_tree.c mt_free_bulk() -> kmem_cache_free_bulk()

Type Parameter Key Value
BUF_SIZE 2 p (-1),24,80,128,248
BUF_SIZE 2 p (-1),24,80,128,248
DATA_SOURCE 1 size $0
DATA_SOURCE 2 p $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

mm/slub.c memcg_slab_post_alloc_hook() -> kmem_cache_free_bulk()

Type Parameter Key Value
PARAM_VALUE 0 s 4096-ptr_max
PARAM_VALUE 1 size 2-8813306445821
PARAM_VALUE 2 p 4096-ptr_max
PARAM_VALUE 2 *p 1-u64max
BUF_SIZE 2 p (-1)-s32max
BUF_SIZE 2 p (-1)-s32max
CAPPED_DATA 0 s 1
CAPPED_DATA 1 size 1
CAPPED_DATA 1 size 1
DATA_SOURCE 0 s $0
DATA_SOURCE 1 size $2
DATA_SOURCE 2 p $3
NOSPEC 1 size
NOSPEC 1 size
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 1 size 2-s32max[c]
NO_OVERFLOW_SIMPLE 0 s->object_size
UNITS 1 size unit_array_size

mm/slab_common.c kfree_bulk() -> kmem_cache_free_bulk()

Type Parameter Key Value
PARAM_VALUE 0 s 0
PARAM_VALUE 1 size 0-s32max
CAPPED_DATA 1 size 1
CAPPED_DATA 1 size 1
DATA_SOURCE 1 size $0
DATA_SOURCE 2 p $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 rcu

net/core/skbuff.c kfree_skb_add_bulk() -> kmem_cache_free_bulk()

Type Parameter Key Value
PARAM_VALUE 1 size 16
PARAM_VALUE 2 p 4096-ptr_max
BUF_SIZE 2 p 128
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 rcu_read

net/core/skbuff.c kfree_skb_list_reason() -> kmem_cache_free_bulk()

Type Parameter Key Value
PARAM_VALUE 1 size 1-2
BUF_SIZE 2 p 128
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 rcu_read

net/core/skbuff.c napi_skb_cache_put() -> kmem_cache_free_bulk()

Type Parameter Key Value
PARAM_VALUE 1 size 32
BUF_SIZE 2 p 256
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

mm/kasan/kasan_test_c.c kmem_cache_bulk() -> kmem_cache_free_bulk()

Type Parameter Key Value
PARAM_VALUE 0 s 4096-ptr_max
PARAM_VALUE 1 size 10
PARAM_VALUE 2 p 3878332839798845440
PARAM_VALUE 2 *p 4096-ptr_max
BUF_SIZE 2 p 80
CAPPED_DATA 0 s 1
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 s->object_size
UNITS 1 size unit_array_size

drivers/gpu/drm/msm/msm_iommu.c msm_iommu_pagetable_prealloc_cleanup() -> kmem_cache_free_bulk()

Type Parameter Key Value
DATA_SOURCE 0 s r get_pt_cache
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &adev->reset_domain->sem
HALF_LOCKED2 &attr->mutex
HALF_LOCKED2 &sched->job_list_lock

lib/test_meminit.c do_kmem_cache_size() -> kmem_cache_free_bulk()

Type Parameter Key Value
PARAM_VALUE 0 s 4096-ptr_max
PARAM_VALUE 1 size 100
PARAM_VALUE 2 p 5804877478849916928
BUF_SIZE 2 p 800
CAPPED_DATA 0 s 1
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 s->object_size

lib/test_meminit.c do_kmem_cache_size_bulk() -> kmem_cache_free_bulk()

Type Parameter Key Value
PARAM_VALUE 0 s 4096-ptr_max
PARAM_VALUE 1 size 10
PARAM_VALUE 2 p 3653192296877342720
BUF_SIZE 2 p 80
CAPPED_DATA 0 s 1
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 s->object_size
UNITS 1 size unit_array_size

drivers/gpu/drm/panthor/panthor_mmu.c panthor_vm_cleanup_op_ctx() -> kmem_cache_free_bulk()

Type Parameter Key Value
PARAM_VALUE 1 size 1-u32max
PARAM_VALUE 2 p 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 global &drm_unplug_srcu