Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 10 files:

Smatch caller information:

drivers/mtd/mtdswap.c mtdswap_handle_badblock() -> mtd_block_markbad()

Type Parameter Key Value
PARAM_VALUE 0 mtd 4096-ptr_max
DATA_SOURCE 1 ofs r mtdswap_eb_offset
RX_PATH
TASK_NOT_RUNNING
LOCK2 &dev->lock
HALF_LOCKED2 __tag_set->srcu
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct mtd_blktrans_dev)->lock

fs/jffs2/wbuf.c jffs2_write_nand_badblock() -> mtd_block_markbad()

Type Parameter Key Value
PARAM_VALUE 0 mtd 4096-ptr_max
PARAM_VALUE 0 mtd->type 4
PARAM_VALUE 1 ofs 0-4294967294
CAPPED_DATA 0 mtd 1
DATA_SOURCE 1 ofs $2
RX_PATH
TASK_NOT_RUNNING
UNITS 1 ofs unit_byte
HALF_LOCKED2 &c->alloc_sem
HALF_LOCKED2 &c->wbuf_sem
HALF_LOCKED2 &c->xattr_sem

drivers/mtd/nftlmount.c NFTL_formatblock() -> mtd_block_markbad()

Type Parameter Key Value
PARAM_VALUE 0 mtd 4096-ptr_max
PARAM_VALUE 1 ofs 0-4294967295
BUF_SIZE 0 mtd (-1),2448,2984
BUF_SIZE 0 mtd (-1),2448,2984
CAPPED_DATA 1 ofs 1
STR_LEN 0 mtd->dev.driver_data (-1)
STR_LEN 0 mtd->name (-1)
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 mtd->erasesize
UNITS 1 ofs unit_byte
HALF_LOCKED2 &mbd->lock
HALF_LOCKED2 global &mtd_table_mutex

drivers/mtd/inftlmount.c INFTL_formatblock() -> mtd_block_markbad()

Type Parameter Key Value
PARAM_VALUE 0 mtd 4096-ptr_max
BUF_SIZE 0 mtd (-1),2448,2984
BUF_SIZE 0 mtd (-1),2448,2984
STR_LEN 0 mtd->dev.driver_data (-1)
STR_LEN 0 mtd->name (-1)
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 mtd->erasesize
NO_OVERFLOW_SIMPLE 1 ofs
UNITS 1 ofs unit_byte
HALF_LOCKED2 &mbd->lock
HALF_LOCKED2 global &mtd_table_mutex

drivers/mtd/mtdchar.c mtdchar_ioctl() -> mtd_block_markbad()

Type Parameter Key Value
PARAM_VALUE 0 mtd 4096-ptr_max
USER_DATA 1 ofs s64min-s64max
LOCK2 &master->master.chrdev_lock
TYPE_LOCK (struct mtd_master)->chrdev_lock

drivers/mtd/nand/raw/nandsim.c ns_parse_badblocks() -> mtd_block_markbad()

Type Parameter Key Value
PARAM_VALUE 0 mtd 4096-ptr_max
BUF_SIZE 0 mtd 2448
DATA_SOURCE 0 mtd $1
USER_DATA 1 ofs s64min-s64max[c]

drivers/mtd/ubi/io.c ubi_io_mark_bad() -> mtd_block_markbad()

Type Parameter Key Value
PARAM_VALUE 0 mtd->parent 0
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 mtd->erasesize
LOCK2 &ubi->work_sem
HALF_LOCKED2 &ubi->device_mutex
HALF_LOCKED2 &ubi->fm_eba_sem
HALF_LOCKED2 &ubi->move_mutex
TYPE_LOCK (struct ubi_device)->work_sem

drivers/mtd/mtdconcat.c concat_block_markbad() -> mtd_block_markbad()

Type Parameter Key Value
PARAM_VALUE 0 mtd 4096-ptr_max
PARAM_VALUE 0 mtd->size 1-u64max
PARAM_VALUE 1 ofs s64min-(-2),0-s64max
CAPPED_DATA 1 ofs 1
CAPPED_DATA 1 ofs 1
DATA_SOURCE 1 ofs $1
PARAM_COMPARE 1 ofs < $0->size
PARAM_COMPARE 1 ofs < $0->size
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 ofs 0-s64max[c]
UNITS 1 ofs unit_byte
HALF_LOCKED2 &dev->lock
HALF_LOCKED2 &master->master.chrdev_lock
HALF_LOCKED2 &ubi->work_sem

drivers/mtd/mtdoops.c mtdoops_erase() -> mtd_block_markbad()

Type Parameter Key Value
PARAM_VALUE 0 mtd 4096-ptr_max
PARAM_VALUE 1 ofs 0-s64max
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 mtd->erasesize