Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

mm/kmemleak.c __find_and_get_object() -> get_object()

Type Parameter Key Value
PARAM_VALUE 0 object 4096-ptr_max
DATA_SOURCE 0 object r __lookup_object
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 global &scan_mutex

mm/kmemleak.c __kmemleak_scan() -> get_object()

Type Parameter Key Value
PARAM_VALUE 0 object 4096-ptr_max
PARAM_COMPARE 0 object->count >= $0->min_count
PREEMPT_ADD <- disables preempt
LOCK2 global &scan_mutex
LOCK2 irq
LOCK2 rcu_read
LOCK2 0 &object->lock
TYPE_LOCK (struct kmemleak_object)->lock

mm/kmemleak.c __kmemleak_scan() -> get_object()

Type Parameter Key Value
PARAM_VALUE 0 object 4096-ptr_max
CAPPED_DATA 0 object->count 1
CAPPED_DATA 0 object->min_count 1
PARAM_COMPARE 0 object->count < $0->min_count
BIT_INFO 0 object->flags 0x1,0xffffffffffffffff
PREEMPT_ADD <- disables preempt
LOCK2 global &scan_mutex
LOCK2 irq
LOCK2 rcu_read
LOCK2 0 &object->lock
TYPE_LOCK (struct kmemleak_object)->lock

mm/kmemleak.c dedup_record() -> get_object()

Type Parameter Key Value
PARAM_VALUE 0 object 4096-ptr_max
CAPPED_DATA 0 object->count 1
CAPPED_DATA 0 object->min_count 1
DATA_SOURCE 0 object $1
LOCK2 global &scan_mutex
LOCK2 rcu_read

mm/kmemleak.c kmemleak_cond_resched() -> get_object()

Type Parameter Key Value
PARAM_VALUE 0 object 4096-ptr_max
DATA_SOURCE 0 object $0
LOCK2 global &scan_mutex
LOCK2 rcu_read

mm/kmemleak.c kmemleak_seq_next() -> get_object()

Type Parameter Key Value
PARAM_VALUE 0 object 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 &seq->lock
TYPE_LOCK (struct seq_file)->lock

mm/kmemleak.c kmemleak_seq_start() -> get_object()

Type Parameter Key Value
PARAM_VALUE 0 object 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 &seq->lock
LOCK2 global &scan_mutex
LOCK2 rcu_read
TYPE_LOCK (struct seq_file)->lock

mm/kmemleak.c update_refs() -> get_object()

Type Parameter Key Value
PARAM_VALUE 0 object 4096-ptr_max
CAPPED_DATA 0 object->count 1
CAPPED_DATA 0 object->min_count 1
DATA_SOURCE 0 object $0
PARAM_COMPARE 0 object->count == $0->min_count
BIT_INFO 0 object->flags 0x0,0xffffffbf
PREEMPT_ADD
LOCK2 global &kmemleak_lock
LOCK2 0 &object->lock
HALF_LOCKED2 &scanned->lock
HALF_LOCKED2 flags
HALF_LOCKED2 global &scan_mutex
TYPE_LOCK (struct kmemleak_object)->lock