Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

fs/jffs2/erase.c jffs2_erase_pending_blocks() -> jffs2_free_jeb_node_refs()

Type Parameter Key Value
PARAM_VALUE 0 c 4096-ptr_max
PARAM_VALUE 0 c->erase_complete_list.next 4096-ptr_max
PARAM_VALUE 0 c->erase_completion_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 c->erase_free_sem.dep_map->name 0-255
PARAM_VALUE 0 c->erase_free_sem.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 c->erase_free_sem.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 c->erase_free_sem.first_waiter->task->blocked_on (-1)-0
PARAM_VALUE 0 c->erase_free_sem.osq.tail.counter 0-s32max
PARAM_VALUE 0 c->erase_free_sem.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 c->erase_free_sem.wait_lock.owner (-1)
PARAM_VALUE 0 c->erase_free_sem.wait_lock.owner_cpu u32max
PARAM_VALUE 0 c->wbuf_dwork.wq->dfl_pwq 0-s64max
PARAM_VALUE 0 c->wbuf_dwork.wq->saved_max_active s32min-s32max
PARAM_VALUE 0 c->wbuf_dwork.wq->saved_min_active s32min-s32max
PARAM_VALUE 0 c->wbuf_sem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 c->wbuf_sem.first_waiter->type 0-1
PARAM_VALUE 0 c->xattr_sem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 c->xattr_sem.first_waiter->type 0-1
PARAM_VALUE 0 *c->summary->sum_list_head->d.name 0-255
PARAM_VALUE 1 jeb 4096-ptr_max
PARAM_VALUE 1 jeb->dirty_size 0
PARAM_VALUE 1 jeb->free_size 0
PARAM_VALUE 1 jeb->used_size 0
PARAM_VALUE 1 jeb->wasted_size 0
BUF_SIZE 0 c (-1),1-s32max
BUF_SIZE 0 c (-1),1-s32max
CAPPED_DATA 0 &c->erase_complete_list 1
CAPPED_DATA 0 &c->erase_free_sem 1
CAPPED_DATA 0 &c->erase_pending_list 1
DATA_SOURCE 0 c $0
STR_LEN 0 c (-1)-254
STR_LEN 0 c (-1)-254
PARAM_COMPARE 0 &c->erase_complete_list == $0->erase_complete_list.next
PARAM_COMPARE 0 &c->erase_pending_list != $0->erase_pending_list.next
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 c unit_byte
LOCK2 0 &c->erase_completion_lock
LOCK2 0 &c->erase_free_sem
HALF_LOCKED2 0 &c->alloc_sem
HALF_LOCKED2 0 &c->wbuf_sem
HALF_LOCKED2 0 &c->xattr_sem
TYPE_LOCK (struct jffs2_sb_info)->erase_completion_lock
TYPE_LOCK (struct jffs2_sb_info)->erase_free_sem

fs/jffs2/summary.c jffs2_sum_process_sum_data() -> jffs2_free_jeb_node_refs()

Type Parameter Key Value
PARAM_VALUE 0 c 4096-ptr_max
PARAM_VALUE 0 c->bad_list.next->next 4096-ptr_max
PARAM_VALUE 0 c->bad_list.prev->next 4096-ptr_max
PARAM_VALUE 0 c->bad_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 c->bad_used_list.prev->next 4096-ptr_max
PARAM_VALUE 0 c->bad_used_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 c->blocks 4096-ptr_max
PARAM_VALUE 0 c->clean_list.next->next 4096-ptr_max
PARAM_VALUE 0 c->clean_list.prev->next 4096-ptr_max
PARAM_VALUE 0 c->clean_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 c->dirty_list.next->next 4096-ptr_max
PARAM_VALUE 0 c->dirty_list.prev->next 4096-ptr_max
PARAM_VALUE 0 c->dirty_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 c->erasable_list.next->next 4096-ptr_max
PARAM_VALUE 0 c->erasable_list.prev->next 4096-ptr_max
PARAM_VALUE 0 c->erasable_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 c->erasable_pending_wbuf_list.next->next 4096-ptr_max
PARAM_VALUE 0 c->erasable_pending_wbuf_list.prev->next 4096-ptr_max
PARAM_VALUE 0 c->erasable_pending_wbuf_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 c->erase_checking_list.next->next 4096-ptr_max
PARAM_VALUE 0 c->erase_checking_list.prev->next 4096-ptr_max
PARAM_VALUE 0 c->erase_checking_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 c->erase_complete_list.next->next 4096-ptr_max
PARAM_VALUE 0 c->erase_complete_list.prev->next 4096-ptr_max
PARAM_VALUE 0 c->erase_complete_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 c->erase_pending_list.next->next 4096-ptr_max
PARAM_VALUE 0 c->erase_pending_list.prev->next 4096-ptr_max
PARAM_VALUE 0 c->erase_pending_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 c->erasing_list.next->next 4096-ptr_max
PARAM_VALUE 0 c->erasing_list.prev->next 4096-ptr_max
PARAM_VALUE 0 c->erasing_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 c->free_list.next->next 4096-ptr_max
PARAM_VALUE 0 c->free_list.prev->next 4096-ptr_max
PARAM_VALUE 0 c->free_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 c->mtd 4096-ptr_max
PARAM_VALUE 0 c->mtd->parent 0
PARAM_VALUE 0 c->nr_blocks 1-u32max
PARAM_VALUE 0 c->summary->sum_buf 16,4096-ptr_max
PARAM_VALUE 0 c->very_dirty_list.next->next 4096-ptr_max
PARAM_VALUE 0 c->very_dirty_list.prev->next 4096-ptr_max
PARAM_VALUE 0 c->very_dirty_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 c->wbuf_sem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 c->wbuf_sem.first_waiter->list.prev 2212933610777083904
PARAM_VALUE 0 c->wbuf_sem.first_waiter->type 0-1
PARAM_VALUE 0 c->xattr_dead_list.next->next 4096-ptr_max
PARAM_VALUE 0 c->xattr_dead_list.prev->next 4096-ptr_max
PARAM_VALUE 0 c->xattr_dead_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 c->xattr_unchecked.next->next 4096-ptr_max
PARAM_VALUE 0 c->xattr_unchecked.prev->next 4096-ptr_max
PARAM_VALUE 0 c->xattr_unchecked.prev->prev 4096-ptr_max
PARAM_VALUE 1 jeb 4096-ptr_max
PARAM_VALUE 1 jeb->allocated_refs 2
PARAM_VALUE 1 jeb->dirty_size 0
PARAM_VALUE 1 jeb->used_size 0
PARAM_VALUE 1 jeb->wasted_size 0
BUF_SIZE 0 c 1-s32max
BUF_SIZE 0 c 1-s32max
BUF_SIZE 0 c->inocache_list (-1),1024-8192
CAPPED_DATA 0 c->mtd 1
DATA_SOURCE 0 c $0
DATA_SOURCE 1 jeb $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 c->inocache_hashsize
NO_OVERFLOW_SIMPLE 0 c->oobavail
UNITS 0 c unit_byte
HALF_LOCKED2 &fc->uapi_mutex