Documented in 2 files:

Defined in 2 files as a function:

Referenced in 2 files:

Smatch caller information:

drivers/mtd/ubi/io.c torture_peb() -> do_sync_erase()

Type Parameter Key Value
PARAM_VALUE 0 ubi 4096-ptr_max
PARAM_VALUE 0 ubi->bgt_thread->delays->blkio_count 0-4294967295
PARAM_VALUE 0 ubi->bgt_thread->delays->blkio_delay_max 0-s64max
PARAM_VALUE 0 ubi->bgt_thread->delays->blkio_delay_min 0-s64max
PARAM_VALUE 0 ubi->bgt_thread->kcov->mode 0-4294967295
PARAM_VALUE 0 ubi->bgt_thread->kcov->remote 0-1
PARAM_VALUE 0 ubi->bgt_thread->kcov->remote_size 0-4294967295
PARAM_VALUE 0 ubi->bgt_thread->kcov_remote->mode 0-4294967295
PARAM_VALUE 0 ubi->bgt_thread->kcov_remote->remote 0-1
PARAM_VALUE 0 ubi->bgt_thread->kcov_remote->remote_size 0-4294967295
PARAM_VALUE 0 ubi->bgt_thread->ptracer_cred->process_keyring->user->qnbytes s32min-s32max
PARAM_VALUE 0 ubi->bgt_thread->ptracer_cred->process_keyring->user->qnkeys s32min-s32max
PARAM_VALUE 0 ubi->bgt_thread->ptracer_cred->request_key_auth->user->qnbytes s32min-s32max
PARAM_VALUE 0 ubi->bgt_thread->ptracer_cred->request_key_auth->user->qnkeys s32min-s32max
PARAM_VALUE 0 ubi->bgt_thread->ptracer_cred->session_keyring->user->qnbytes s32min-s32max
PARAM_VALUE 0 ubi->bgt_thread->ptracer_cred->session_keyring->user->qnkeys s32min-s32max
PARAM_VALUE 0 ubi->bgt_thread->ptracer_cred->thread_keyring->user->qnbytes s32min-s32max
PARAM_VALUE 0 ubi->bgt_thread->ptracer_cred->thread_keyring->user->qnkeys s32min-s32max
PARAM_VALUE 0 ubi->bgt_thread->sched_class->set_cpus_allowed 0,1927640468783054848,5094656021401329664,7127180339355369472
PARAM_VALUE 0 ubi->bgt_thread->sched_task_group->idle s32min-s32max
PARAM_VALUE 0 ubi->bgt_thread->sched_task_group->parent 0-s64max
PARAM_VALUE 0 ubi->bgt_thread->thread_pid->attr->exit_code s32min-s32max
PARAM_VALUE 0 ubi->buf_mutex.dep_map->name 0-255
PARAM_VALUE 0 ubi->buf_mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 ubi->buf_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 ubi->buf_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 ubi->buf_mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 ubi->buf_mutex.wait_lock.owner (-1)
PARAM_VALUE 0 ubi->buf_mutex.wait_lock.owner_cpu u32max
PARAM_VALUE 0 ubi->dev.dma_io_tlb_mem->phys_limit 0-s64max
PARAM_VALUE 0 ubi->dev.iommu_group->owner_cnt 0-4294967295
PARAM_VALUE 0 ubi->dev.kobj.parent->kset->kobj.release.wq->dfl_pwq 0-s64max
PARAM_VALUE 0 ubi->dev.kobj.parent->kset->kobj.release.wq->saved_max_active s32min-s32max
PARAM_VALUE 0 ubi->dev.kobj.parent->kset->kobj.release.wq->saved_min_active s32min-s32max
PARAM_VALUE 0 ubi->dev.kobj.parent->release.wq->dfl_pwq 0-s64max
PARAM_VALUE 0 ubi->dev.kobj.parent->release.wq->saved_max_active s32min-s32max
PARAM_VALUE 0 ubi->dev.kobj.parent->release.wq->saved_min_active s32min-s32max
PARAM_VALUE 0 ubi->dev.kobj.parent->sd->attr.open->nr_mmapped 0-4294967295
PARAM_VALUE 0 ubi->dev.kobj.release.wq->dfl_pwq 0-s64max
PARAM_VALUE 0 ubi->dev.kobj.release.wq->saved_max_active s32min-s32max
PARAM_VALUE 0 ubi->dev.kobj.release.wq->saved_min_active s32min-s32max
PARAM_VALUE 0 ubi->dev.kobj.sd->attr.open->nr_mmapped 0-4294967295
PARAM_VALUE 0 ubi->dev.p->dead 0-1
PARAM_VALUE 0 ubi->dev.p->deferred_probe_reason 0-s64max
PARAM_VALUE 0 ubi->dev.parent->kobj.release.wq->dfl_pwq 0-s64max
PARAM_VALUE 0 ubi->dev.parent->kobj.release.wq->saved_max_active s32min-s32max
PARAM_VALUE 0 ubi->dev.parent->kobj.release.wq->saved_min_active s32min-s32max
PARAM_VALUE 0 ubi->dev.power.wakeirq->status 0-4294967295
PARAM_VALUE 0 ubi->ec_hdr_alsize 0-4000000
PARAM_VALUE 0 ubi->fm_eba_sem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 ubi->fm_eba_sem.first_waiter->type 0-1
PARAM_VALUE 0 ubi->fm_protect.first_waiter->handoff_set 0-1
PARAM_VALUE 0 ubi->fm_protect.first_waiter->type 0-1
PARAM_VALUE 0 ubi->mtd 4096-ptr_max
PARAM_VALUE 0 ubi->ro_mode 0
PARAM_VALUE 0 ubi->work_sem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 ubi->work_sem.first_waiter->type 0-1
BUF_SIZE 0 ubi (-1),128
BUF_SIZE 0 ubi (-1),128
BUF_SIZE 0 ubi->dev.class (-1),96
BUF_SIZE 0 ubi->dev.groups (-1),16
BUF_SIZE 0 ubi->dev.parent (-1),1616
BUF_SIZE 0 ubi->lookuptbl (-1),8
BUF_SIZE 0 ubi->peb_buf s32min-(-1),1-s32max
CAPPED_DATA 0 ubi->mtd 1
CAPPED_DATA 0 &ubi->buf_mutex 1
DATA_SOURCE 0 ubi $0
DATA_SOURCE 1 e $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 ubi->ubi_num 0-31
USER_DATA 0 ubi->vid_hdr_aloffset 0-s32max[c]
USER_DATA 0 ubi->vid_hdr_offset 1-s32max
USER_DATA 0 *ubi->peb_buf 0-255
NO_OVERFLOW_SIMPLE 0 ubi->bgt_thread->dl.pi_se->dl_runtime
NO_OVERFLOW_SIMPLE 0 ubi->ec_hdr_alsize
NO_OVERFLOW_SIMPLE 0 ubi->fm_anchor->pnum
NO_OVERFLOW_SIMPLE 0 ubi->fm_size
NO_OVERFLOW_SIMPLE 0 ubi->leb_size
NO_OVERFLOW_SIMPLE 0 ubi->mtd->erasesize
NO_OVERFLOW_SIMPLE 0 ubi->peb_count
NO_OVERFLOW_SIMPLE 0 ubi->peb_size
NO_OVERFLOW_SIMPLE 0 ubi->vid_hdr_alsize
NO_OVERFLOW_SIMPLE 0 ubi->vtbl_size
NO_OVERFLOW_SIMPLE 1 e
LOCK2 0 &ubi->buf_mutex
HALF_LOCKED2 global &ubi_devices_mutex
HALF_LOCKED2 0 &ubi->device_mutex
HALF_LOCKED2 0 &ubi->fm_eba_sem
HALF_LOCKED2 0 &ubi->fm_protect
HALF_LOCKED2 0 &ubi->move_mutex
HALF_LOCKED2 0 &ubi->work_sem
TYPE_LOCK (struct ubi_device)->buf_mutex

drivers/mtd/ubi/io.c ubi_io_sync_erase() -> do_sync_erase()

Type Parameter Key Value
PARAM_VALUE 0 ubi 4096-ptr_max
PARAM_VALUE 0 ubi->mtd 4096-ptr_max
PARAM_VALUE 0 ubi->ro_mode 0
CAPPED_DATA 0 ubi->mtd 1
DATA_SOURCE 0 ubi $0
DATA_SOURCE 1 e $1

drivers/mtd/ubi/wl.c wear_leveling_worker() -> do_sync_erase()

Type Parameter Key Value
PARAM_VALUE 0 ubi 4096-ptr_max
PARAM_VALUE 0 ubi->buf_mutex.dep_map->name 0-255
PARAM_VALUE 0 ubi->buf_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 ubi->buf_mutex.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 ubi->buf_mutex.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 ubi->buf_mutex.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 ubi->buf_mutex.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 ubi->buf_mutex.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 ubi->dev.dma_io_tlb_mem->debugfs 0-s64max
PARAM_VALUE 0 ubi->dev.kobj.parent->sd->attr.open->nr_mmapped 0-4294967295
PARAM_VALUE 0 ubi->dev.kobj.sd->attr.open->nr_mmapped 0-4294967295
PARAM_VALUE 0 ubi->dev.power.wakeirq->status 0-4294967295
PARAM_VALUE 0 ubi->fm_do_produce_anchor 0
PARAM_VALUE 0 ubi->fm_eba_sem.dep_map->name 0-255
PARAM_VALUE 0 ubi->fm_eba_sem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 ubi->fm_eba_sem.first_waiter->list.next 2212933610777083904
PARAM_VALUE 0 ubi->fm_eba_sem.first_waiter->list.prev 2212933610777083904
PARAM_VALUE 0 ubi->fm_eba_sem.first_waiter->type 0-1
PARAM_VALUE 0 ubi->fm_eba_sem.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 ubi->fm_eba_sem.wait_lock.owner (-1)
PARAM_VALUE 0 ubi->fm_eba_sem.wait_lock.owner_cpu u32max
PARAM_VALUE 0 ubi->fm_protect.first_waiter->handoff_set 0-1
PARAM_VALUE 0 ubi->fm_protect.first_waiter->type 0-1
PARAM_VALUE 0 ubi->leb_size 0-s32max
PARAM_VALUE 0 ubi->ltree.rb_node 1-u64max
PARAM_VALUE 0 ubi->ltree_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 ubi->move_from 0
PARAM_VALUE 0 ubi->move_mutex.dep_map->name 0-255
PARAM_VALUE 0 ubi->move_mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 ubi->move_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 ubi->move_mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 ubi->move_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 ubi->move_mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 ubi->move_mutex.wait_lock.owner (-1)
PARAM_VALUE 0 ubi->move_mutex.wait_lock.owner_cpu u32max
PARAM_VALUE 0 ubi->move_to 0
PARAM_VALUE 0 ubi->move_to_put 0
PARAM_VALUE 0 ubi->mtd->parent 0
PARAM_VALUE 0 ubi->used.rb_node 0,4096-ptr_max
PARAM_VALUE 0 ubi->vid_hdr_alsize 0-4000000
PARAM_VALUE 0 ubi->volumes_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 ubi->wl_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 ubi->wl_scheduled 0
PARAM_VALUE 0 ubi->work_sem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 ubi->work_sem.first_waiter->type 0-1
PARAM_VALUE 0 *ubi->peb_buf 0-255
PARAM_VALUE 1 e 4096-ptr_max
PARAM_VALUE 2 vol_id 0-127,2147479551-s32max
PARAM_VALUE 3 lnum 0-s32max
PARAM_VALUE 4 torture 0
BUF_SIZE 0 ubi (-1),128
BUF_SIZE 0 ubi (-1),128
CAPPED_DATA 0 &ubi->fm_eba_sem 1
CAPPED_DATA 0 &ubi->move_mutex 1
CAPPED_DATA 1 e 1
CAPPED_DATA 1 &e->u.rb 1
DATA_SOURCE 0 ubi $0
STR_LEN 0 ubi->dev.parent->driver_data (-1)
STR_LEN 0 ubi->mtd (-1)
STR_LEN 0 ubi->mtd->dev.driver_data (-1)
STR_LEN 0 ubi->mtd->name (-1)
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 ubi->bgt_thread->dl.pi_se->dl_runtime
NO_OVERFLOW_SIMPLE 0 ubi->cdev.count
NO_OVERFLOW_SIMPLE 0 ubi->ec_hdr_alsize
NO_OVERFLOW_SIMPLE 0 ubi->leb_size
NO_OVERFLOW_SIMPLE 0 ubi->mtd->erasesize
NO_OVERFLOW_SIMPLE 0 ubi->peb_count
NO_OVERFLOW_SIMPLE 0 ubi->peb_size
NO_OVERFLOW_SIMPLE 0 ubi->vid_hdr_aloffset
NO_OVERFLOW_SIMPLE 0 ubi->vid_hdr_alsize
NO_OVERFLOW_SIMPLE 0 ubi->vtbl_size
UNITS 2 vol_id unit_array_size
LOCK2 0 &ubi->fm_eba_sem
LOCK2 0 &ubi->move_mutex
LOCK2 0 &ubi->work_sem
HALF_LOCKED2 0 &ubi->device_mutex
TYPE_LOCK (struct ubi_device)->fm_eba_sem
TYPE_LOCK (struct ubi_device)->move_mutex
TYPE_LOCK (struct ubi_device)->work_sem

drivers/mtd/ubi/wl.c wear_leveling_worker() -> do_sync_erase()

Type Parameter Key Value
PARAM_VALUE 0 ubi 4096-ptr_max
PARAM_VALUE 0 ubi->bgt_thread->delays->blkio_count 0-4294967295
PARAM_VALUE 0 ubi->bgt_thread->delays->blkio_delay_max 0-s64max
PARAM_VALUE 0 ubi->bgt_thread->delays->blkio_delay_min 0-s64max
PARAM_VALUE 0 ubi->bgt_thread->sched_task_group->idle s32min-s32max
PARAM_VALUE 0 ubi->buf_mutex.dep_map->name 0-255
PARAM_VALUE 0 ubi->buf_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 ubi->buf_mutex.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 ubi->buf_mutex.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 ubi->buf_mutex.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 ubi->buf_mutex.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 ubi->buf_mutex.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 ubi->dev.dma_io_tlb_mem->debugfs 0-s64max
PARAM_VALUE 0 ubi->dev.kobj.parent->sd->attr.open->nr_mmapped 0-4294967295
PARAM_VALUE 0 ubi->dev.kobj.sd->attr.open->nr_mmapped 0-4294967295
PARAM_VALUE 0 ubi->dev.power.wakeirq->status 0-4294967295
PARAM_VALUE 0 ubi->fm_eba_sem.dep_map->name 0-255
PARAM_VALUE 0 ubi->fm_eba_sem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 ubi->fm_eba_sem.first_waiter->list.next 2212933610777083904
PARAM_VALUE 0 ubi->fm_eba_sem.first_waiter->list.prev 2212933610777083904
PARAM_VALUE 0 ubi->fm_eba_sem.first_waiter->type 0-1
PARAM_VALUE 0 ubi->fm_eba_sem.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 ubi->fm_protect.first_waiter->handoff_set 0-1
PARAM_VALUE 0 ubi->fm_protect.first_waiter->type 0-1
PARAM_VALUE 0 ubi->ltree_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 ubi->move_mutex.dep_map->name 0-255
PARAM_VALUE 0 ubi->move_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 ubi->move_mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 ubi->move_mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 ubi->mtd->parent 0
PARAM_VALUE 0 ubi->volumes_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 ubi->wl_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 ubi->work_sem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 ubi->work_sem.first_waiter->type 0-1
PARAM_VALUE 0 *ubi->lookuptbl 0
PARAM_VALUE 1 e 4096-ptr_max
PARAM_VALUE 2 vol_id 0-127,2147479551-s32max
PARAM_VALUE 3 lnum 0-s32max
PARAM_VALUE 4 torture 0
BUF_SIZE 0 ubi (-1),128
BUF_SIZE 0 ubi (-1),128
CAPPED_DATA 0 &ubi->fm_eba_sem 1
CAPPED_DATA 0 &ubi->move_mutex 1
DATA_SOURCE 0 ubi $0
DATA_SOURCE 1 e r get_peb_for_wl
STR_LEN 0 ubi->dev.parent->driver_data (-1)
STR_LEN 0 ubi->mtd (-1)
STR_LEN 0 ubi->mtd->dev.driver_data (-1)
STR_LEN 0 ubi->mtd->name (-1)
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 ubi->bgt_thread->dl.pi_se->dl_runtime
NO_OVERFLOW_SIMPLE 0 ubi->cdev.count
NO_OVERFLOW_SIMPLE 0 ubi->ec_hdr_alsize
NO_OVERFLOW_SIMPLE 0 ubi->leb_size
NO_OVERFLOW_SIMPLE 0 ubi->mtd->erasesize
NO_OVERFLOW_SIMPLE 0 ubi->peb_count
NO_OVERFLOW_SIMPLE 0 ubi->peb_size
NO_OVERFLOW_SIMPLE 0 ubi->vid_hdr_aloffset
NO_OVERFLOW_SIMPLE 0 ubi->vid_hdr_alsize
NO_OVERFLOW_SIMPLE 0 ubi->vtbl_size
NO_OVERFLOW_SIMPLE 1 e->pnum
UNITS 2 vol_id unit_array_size
LOCK2 0 &ubi->fm_eba_sem
LOCK2 0 &ubi->move_mutex
LOCK2 0 &ubi->work_sem
HALF_LOCKED2 0 &ubi->device_mutex
TYPE_LOCK (struct ubi_device)->fm_eba_sem
TYPE_LOCK (struct ubi_device)->move_mutex
TYPE_LOCK (struct ubi_device)->work_sem