Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

kernel/audit_tree.c audit_tree_freeing_mark() -> replace_mark_chunk()

Type Parameter Key Value
PARAM_VALUE 0 mark 4096-ptr_max
PARAM_VALUE 0 mark->flags 0,2-u32max
PARAM_VALUE 0 mark->group 4096-ptr_max
PARAM_VALUE 0 mark->group->mark_mutex.dep_map->name 0-255
PARAM_VALUE 0 mark->group->mark_mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 mark->group->mark_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 mark->group->mark_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 mark->group->ops 4096-ptr_max
PARAM_VALUE 0 mark->group->ops->freeing_mark 2212800610229145600,3292474124058923008,3405698242792390656
PARAM_VALUE 0 mark->group->owner_flags 0,262144
PARAM_VALUE 0 mark->lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 chunk 0
BUF_SIZE 0 mark (-1),136
BUF_SIZE 0 mark (-1),136
DATA_SOURCE 0 mark $0
BIT_INFO 0 mark->flags 0x0,0xfffffffe
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 mark->ignore_mask 0-u32max[c][u]
USER_DATA 0 mark->mask 0-u32max[c][u]
LOCK2 global &hash_lock
LOCK2 0 &mark->group->mark_mutex
HALF_LOCKED2 global &audit_cmd_mutex.lock
TYPE_LOCK (struct fsnotify_group)->mark_mutex

kernel/audit_tree.c create_chunk() -> replace_mark_chunk()

Type Parameter Key Value
PARAM_VALUE 0 mark 4096-ptr_max
PARAM_VALUE 0 mark->connector 4096-ptr_max
PARAM_VALUE 0 mark->connector->list.first 1-u64max
PARAM_VALUE 0 mark->connector->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 mark->connector->type 0-3,5-255
PARAM_VALUE 0 mark->flags 3,19,35,51,515,2051,2563,6147,6659
PARAM_VALUE 0 mark->g_list.next 0,4096-ptr_max
PARAM_VALUE 0 mark->g_list.prev 0,4096-ptr_max
PARAM_VALUE 0 mark->group 4096-ptr_max
PARAM_VALUE 0 mark->group->marks_list.next 4096-ptr_max
PARAM_VALUE 0 mark->group->marks_list.next->next 4096-ptr_max
PARAM_VALUE 0 mark->group->marks_list.next->prev 4096-ptr_max
PARAM_VALUE 0 mark->ignore_mask 0
PARAM_VALUE 0 mark->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 mark->mask 32768
PARAM_VALUE 0 mark->obj_list.next->pprev 4096-ptr_max
PARAM_VALUE 0 mark->obj_list.pprev 4096-ptr_max
PARAM_VALUE 1 chunk 4096-ptr_max
PARAM_VALUE 1 chunk->count 1
PARAM_VALUE 1 chunk->owners 4096-ptr_max
PARAM_VALUE 1 chunk->refs.counter 1
BUF_SIZE 0 mark 136
BUF_SIZE 1 chunk 112
BUF_SIZE 1 chunk 112
CAPPED_DATA 0 mark->group 1
DATA_SOURCE 0 mark r alloc_mark
DATA_SOURCE 1 chunk r alloc_chunk
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &audit_cmd_mutex.lock
LOCK2 global &audit_tree_group->mark_mutex
LOCK2 global &hash_lock
HALF_LOCKED2 global &hwsim_phys_lock
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 global &rx_queue_mutex
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct fsnotify_group)->mark_mutex

kernel/audit_tree.c replace_chunk() -> replace_mark_chunk()

Type Parameter Key Value
PARAM_VALUE 1 chunk 4096-ptr_max
PARAM_VALUE 1 chunk->owners 4096-ptr_max
PARAM_VALUE 1 chunk->refs.counter 1
PARAM_VALUE 1 chunk->trees.next->prev 4096-ptr_max
BUF_SIZE 1 chunk (-1),112-s32max
BUF_SIZE 1 chunk (-1),112-s32max
CAPPED_DATA 1 chunk->count 1
CAPPED_DATA 1 &chunk->trees 1
DATA_SOURCE 1 chunk $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &audit_cmd_mutex.lock
LOCK2 global &audit_tree_group->mark_mutex
LOCK2 global &hash_lock
TYPE_LOCK (struct fsnotify_group)->mark_mutex

kernel/audit_tree.c untag_chunk() -> replace_mark_chunk()

Type Parameter Key Value
PARAM_VALUE 0 mark 4096-ptr_max
PARAM_VALUE 0 mark->flags 2-u32max
PARAM_VALUE 1 chunk 0
DATA_SOURCE 0 mark $1
BIT_INFO 0 mark->flags 0x2,0xffffffffffffffff
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &audit_cmd_mutex.lock
LOCK2 global &audit_tree_group->mark_mutex
LOCK2 global &hash_lock
TYPE_LOCK (struct fsnotify_group)->mark_mutex