Documented in 1 files:

Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/mtd/ubi/eba.c ubi_eba_atomic_leb_change() -> try_write_vid_and_data()

Type Parameter Key Value
PARAM_VALUE 0 vol 4096-ptr_max
PARAM_VALUE 0 vol->ubi->fm_eba_sem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 vol->ubi->fm_eba_sem.first_waiter->type 0-1
PARAM_VALUE 0 vol->ubi->fm_protect.first_waiter->handoff_set 0-1
PARAM_VALUE 0 vol->ubi->fm_protect.first_waiter->type 0-1
PARAM_VALUE 0 vol->ubi->work_sem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 vol->ubi->work_sem.first_waiter->type 0-1
PARAM_VALUE 2 vidb 4096-ptr_max
PARAM_VALUE 2 vidb->buffer 16,4096-ptr_max
PARAM_VALUE 2 vidb->hdr 4096-ptr_max
PARAM_VALUE 2 vidb->hdr->compat 0,5
PARAM_VALUE 2 vidb->hdr->copy_flag 1
PARAM_VALUE 2 vidb->hdr->data_size 1-u32max
PARAM_VALUE 2 vidb->hdr->vol_type 1
PARAM_VALUE 4 offset 0
PARAM_VALUE 5 len s32min-(-1),1-s32max
BUF_SIZE 2 vidb 16
BUF_SIZE 3 buf s32min-(-1),1-s32max
BUF_SIZE 3 buf s32min-(-1),1-s32max
DATA_SOURCE 0 vol $1
DATA_SOURCE 1 lnum $2
DATA_SOURCE 2 vidb r ubi_alloc_vid_buf
DATA_SOURCE 3 buf $3
DATA_SOURCE 5 len $4
NOSPEC 1 lnum
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 1 lnum->free
NO_OVERFLOW_SIMPLE 5 len
UNITS 1 lnum unit_byte
UNITS 5 len unit_byte
LOCK2 &le->mutex
LOCK2 &ubi->alc_mutex
TYPE_LOCK (struct ubi_device)->alc_mutex

drivers/mtd/ubi/eba.c ubi_eba_write_leb() -> try_write_vid_and_data()

Type Parameter Key Value
PARAM_VALUE 0 vol 4096-ptr_max
PARAM_VALUE 0 vol->eba_tbl 4096-ptr_max
PARAM_VALUE 0 vol->eba_tbl->entries 4096-ptr_max
PARAM_VALUE 0 vol->ubi->fm_eba_sem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 vol->ubi->fm_eba_sem.first_waiter->type 0-1
PARAM_VALUE 0 vol->ubi->fm_protect.first_waiter->handoff_set 0-1
PARAM_VALUE 0 vol->ubi->fm_protect.first_waiter->type 0-1
PARAM_VALUE 0 vol->ubi->work_sem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 vol->ubi->work_sem.first_waiter->type 0-1
PARAM_VALUE 2 vidb 4096-ptr_max
PARAM_VALUE 2 vidb->buffer 16,4096-ptr_max
PARAM_VALUE 2 vidb->hdr 4096-ptr_max
PARAM_VALUE 2 vidb->hdr->compat 0,5
PARAM_VALUE 2 vidb->hdr->vol_type 1
PARAM_VALUE 5 len 0-s32max
BUF_SIZE 2 vidb 16
BUF_SIZE 3 buf s32min-s32max
CAPPED_DATA 5 len 1
DATA_SOURCE 0 vol $1
DATA_SOURCE 1 lnum $2
DATA_SOURCE 2 vidb r ubi_alloc_vid_buf
DATA_SOURCE 3 buf $3
DATA_SOURCE 4 offset $4
DATA_SOURCE 5 len $5
NOSPEC 1 lnum
NOSPEC 4 offset
NOSPEC 5 len
NOSPEC 5 len
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 1 lnum 0-2147483646[c]
HOST_DATA 4 offset 0-s32max[c]
HOST_DATA 5 len 3-s32max[c]
USER_DATA 0 *vol->upd_buf s64min-s64max
USER_DATA 1 lnum 0-2147483646[c]
USER_DATA 3 *buf s64min-s64max
USER_DATA 4 offset 0-s32max[c]
USER_DATA 5 len 0-s32max[c]
NO_OVERFLOW_SIMPLE 0 vol->upd_buf
UNITS 1 lnum unit_byte
UNITS 3 buf unit_byte
UNITS 4 offset unit_byte
UNITS 5 len unit_byte
USER_PTR 0 vol->upd_buf
USER_PTR 3 buf
LOCK2 &le->mutex

drivers/mtd/ubi/eba.c ubi_eba_write_leb_st() -> try_write_vid_and_data()

Type Parameter Key Value
PARAM_VALUE 0 vol 4096-ptr_max
PARAM_VALUE 0 vol->eba_tbl 4096-ptr_max
PARAM_VALUE 0 vol->eba_tbl->entries 4096-ptr_max
PARAM_VALUE 0 vol->ubi->fm_eba_sem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 vol->ubi->fm_eba_sem.first_waiter->type 0-1
PARAM_VALUE 0 vol->ubi->fm_protect.first_waiter->handoff_set 0-1
PARAM_VALUE 0 vol->ubi->fm_protect.first_waiter->type 0-1
PARAM_VALUE 0 vol->ubi->work_sem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 vol->ubi->work_sem.first_waiter->type 0-1
PARAM_VALUE 0 vol->updating 1
PARAM_VALUE 0 vol->vol_type s32min-2,4-s32max
PARAM_VALUE 2 vidb 4096-ptr_max
PARAM_VALUE 2 vidb->buffer 16,4096-ptr_max
PARAM_VALUE 2 vidb->hdr 4096-ptr_max
PARAM_VALUE 2 vidb->hdr->compat 0,5
PARAM_VALUE 2 vidb->hdr->vol_type 2
PARAM_VALUE 4 offset 0
BUF_SIZE 2 vidb 16
BUF_SIZE 3 buf s32min-(-2),1-s32max
BUF_SIZE 3 buf s32min-(-2),1-s32max
CAPPED_DATA 5 len 1
DATA_SOURCE 0 vol $1
DATA_SOURCE 1 lnum $2
DATA_SOURCE 2 vidb r ubi_alloc_vid_buf
DATA_SOURCE 3 buf $3
DATA_SOURCE 5 len $4 [m]
NOSPEC 5 len
USER_DATA 0 *vol->upd_buf s64min-s64max
USER_DATA 3 *buf s64min-s64max
USER_DATA 5 len s32min-s32max[c]
NO_OVERFLOW_SIMPLE 0 vol->upd_buf
NO_OVERFLOW_SIMPLE 3 buf
UNITS 5 len unit_byte
USER_PTR 0 vol->upd_buf
USER_PTR 3 buf
LOCK2 &le->mutex