Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/mtd/sm_ftl.c sm_cache_flush() -> sm_read_sector()

Type Parameter Key Value
PARAM_VALUE 0 ftl 4096-ptr_max
PARAM_VALUE 0 ftl->cache_clean 0
PARAM_VALUE 0 ftl->cache_zone 0-s32max
PARAM_VALUE 0 ftl->mutex.dep_map->name 0-255
PARAM_VALUE 0 ftl->mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 ftl->mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 ftl->mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 ftl->mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 ftl->mutex.wait_lock.owner (-1)
PARAM_VALUE 0 ftl->mutex.wait_lock.owner_cpu u32max
PARAM_VALUE 0 ftl->zones 4096-ptr_max
PARAM_VALUE 0 *ftl->cis_buffer (-4611686018427387904)-4611686018427387903
PARAM_VALUE 1 zone 0-s32max
PARAM_VALUE 2 block s16min-s16max
PARAM_VALUE 3 boffset 0-32768
PARAM_VALUE 4 buffer 4096-ptr_max
PARAM_VALUE 5 oob 0
BUF_SIZE 0 ftl (-1),264,944
BUF_SIZE 0 ftl (-1),264,944
CAPPED_DATA 2 block 1
CAPPED_DATA 3 boffset 1
DATA_SOURCE 0 ftl $0
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 ftl->max_lba
LOCK2 0 &ftl->mutex
HALF_LOCKED2 &dev->lock
TYPE_LOCK (struct sm_ftl)->mutex

drivers/mtd/sm_ftl.c sm_check_block() -> sm_read_sector()

Type Parameter Key Value
PARAM_VALUE 0 ftl 4096-ptr_max
PARAM_VALUE 0 ftl->block_size 1-s32max
PARAM_VALUE 0 ftl->max_lba 0-s32max
PARAM_VALUE 0 ftl->mutex.dep_map->name 0-255
PARAM_VALUE 0 ftl->mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 ftl->mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 ftl->mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 ftl->mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 ftl->mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 ftl->mutex.wait_lock.owner (-1)
PARAM_VALUE 0 ftl->mutex.wait_lock.owner_cpu u32max
PARAM_VALUE 0 ftl->mutex.wait_lock.raw_lock.val.counter 0-s32max
PARAM_VALUE 0 ftl->trans 4096-ptr_max
PARAM_VALUE 0 ftl->zone_count (-2147483647)-s32max
PARAM_VALUE 0 ftl->zone_size 1-s32max
PARAM_VALUE 0 ftl->zones 4096-ptr_max
PARAM_VALUE 0 *ftl->cis_buffer (-4611686018427387904)-4611686018427387903
PARAM_VALUE 1 zone s32min-2147483646
PARAM_VALUE 3 boffset 0,512-2147483646
PARAM_VALUE 4 buffer 0
PARAM_VALUE 5 oob 3195533514613456896
BUF_SIZE 0 ftl 264,944
BUF_SIZE 0 ftl 264,944
CAPPED_DATA 0 ftl->block_size 1
CAPPED_DATA 0 ftl->trans->mtd 1
CAPPED_DATA 0 ftl->zone_count 1
CAPPED_DATA 0 ftl->zone_size 1
CAPPED_DATA 1 zone 1
CAPPED_DATA 2 block 1
CAPPED_DATA 3 boffset 1
DATA_SOURCE 0 ftl $0
DATA_SOURCE 1 zone $1
DATA_SOURCE 2 block $2
PARAM_COMPARE 3 boffset < $0->block_size
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 ftl->max_lba
UNITS 1 zone unit_array_size
UNITS 3 boffset unit_byte
LOCK2 &dev->lock
LOCK2 0 &ftl->mutex
HALF_LOCKED2 __tag_set->srcu
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct mtd_blktrans_dev)->lock
TYPE_LOCK (struct sm_ftl)->mutex

drivers/mtd/sm_ftl.c sm_find_cis() -> sm_read_sector()

Type Parameter Key Value
PARAM_VALUE 0 ftl 4096-ptr_max
PARAM_VALUE 0 ftl->block_size 4096,8192,16384
PARAM_VALUE 0 ftl->cache_block (-1)
PARAM_VALUE 0 ftl->cache_clean 1
PARAM_VALUE 0 ftl->cache_data 4096-ptr_max
PARAM_VALUE 0 ftl->cache_data_invalid_bitmap u32max
PARAM_VALUE 0 ftl->cache_zone (-1)
PARAM_VALUE 0 ftl->cylinders 0-u16max
PARAM_VALUE 0 ftl->heads 0-255
PARAM_VALUE 0 ftl->max_lba 250,500,1000
PARAM_VALUE 0 ftl->mutex.dep_map->name 0-255
PARAM_VALUE 0 ftl->mutex.first_waiter 0
PARAM_VALUE 0 ftl->mutex.magic 4096-ptr_max
PARAM_VALUE 0 ftl->mutex.osq.tail.counter 0
PARAM_VALUE 0 ftl->mutex.owner.counter 0
PARAM_VALUE 0 ftl->sectors 0-255
PARAM_VALUE 0 ftl->smallpagenand 0-1
PARAM_VALUE 0 ftl->timer.entry.pprev 0
PARAM_VALUE 0 ftl->timer.flags 0-4194302
PARAM_VALUE 0 ftl->timer.lockdep_map->name 0-255
PARAM_VALUE 0 ftl->trans 4096-ptr_max
PARAM_VALUE 0 ftl->zone_count 1-134217727
PARAM_VALUE 0 ftl->zone_size 256,512,1024
PARAM_VALUE 0 ftl->zones 4096-ptr_max
PARAM_VALUE 1 zone 0
PARAM_VALUE 2 block 0-773
PARAM_VALUE 3 boffset 0
PARAM_VALUE 4 buffer 0
PARAM_VALUE 5 oob 2143383191890419712
BUF_SIZE 0 ftl 944
BUF_SIZE 0 ftl 944
BUF_SIZE 0 ftl->cache_data 4096,8192,16384
BUF_SIZE 0 ftl->trans 352
BUF_SIZE 0 ftl->zones 40-s32max
CAPPED_DATA 2 block 1
DATA_SOURCE 0 ftl $0
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 ftl->zone_count
LOCK2 global &mtd_table_mutex

drivers/mtd/sm_ftl.c sm_find_cis() -> sm_read_sector()

Type Parameter Key Value
PARAM_VALUE 0 ftl 4096-ptr_max
PARAM_VALUE 0 ftl->block_size 4096,8192,16384
PARAM_VALUE 0 ftl->cache_block (-1)
PARAM_VALUE 0 ftl->cache_clean 1
PARAM_VALUE 0 ftl->cache_data 4096-ptr_max
PARAM_VALUE 0 ftl->cache_data_invalid_bitmap u32max
PARAM_VALUE 0 ftl->cache_zone (-1)
PARAM_VALUE 0 ftl->cylinders 0-u16max
PARAM_VALUE 0 ftl->heads 0-255
PARAM_VALUE 0 ftl->max_lba 250,500,1000
PARAM_VALUE 0 ftl->mutex.dep_map->name 0-255
PARAM_VALUE 0 ftl->mutex.first_waiter 0
PARAM_VALUE 0 ftl->mutex.magic 4096-ptr_max
PARAM_VALUE 0 ftl->mutex.osq.tail.counter 0
PARAM_VALUE 0 ftl->mutex.owner.counter 0
PARAM_VALUE 0 ftl->sectors 0-255
PARAM_VALUE 0 ftl->smallpagenand 0-1
PARAM_VALUE 0 ftl->timer.entry.pprev 0
PARAM_VALUE 0 ftl->timer.flags 0-4194302
PARAM_VALUE 0 ftl->timer.lockdep_map->name 0-255
PARAM_VALUE 0 ftl->trans 4096-ptr_max
PARAM_VALUE 0 ftl->zone_count 1-134217727
PARAM_VALUE 0 ftl->zone_size 256,512,1024
PARAM_VALUE 0 ftl->zones 4096-ptr_max
PARAM_VALUE 1 zone 0
PARAM_VALUE 2 block 0-773
PARAM_VALUE 3 boffset 0,512-16383
PARAM_VALUE 4 buffer 0
PARAM_VALUE 5 oob 2143383191890419712
BUF_SIZE 0 ftl 944
BUF_SIZE 0 ftl 944
BUF_SIZE 0 ftl->cache_data 4096,8192,16384
BUF_SIZE 0 ftl->trans 352
BUF_SIZE 0 ftl->zones 40-s32max
CAPPED_DATA 0 ftl->trans->mtd 1
CAPPED_DATA 2 block 1
CAPPED_DATA 3 boffset 1
DATA_SOURCE 0 ftl $0
PARAM_COMPARE 3 boffset < $0->block_size
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 ftl->zone_count
UNITS 3 boffset unit_byte
LOCK2 global &mtd_table_mutex

drivers/mtd/sm_ftl.c sm_init_zone() -> sm_read_sector()

Type Parameter Key Value
PARAM_VALUE 0 ftl 4096-ptr_max
PARAM_VALUE 0 ftl->mutex.dep_map->name 0-255
PARAM_VALUE 0 ftl->mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 ftl->mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 ftl->mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 ftl->mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 ftl->mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 ftl->mutex.wait_lock.owner (-1)
PARAM_VALUE 0 ftl->mutex.wait_lock.owner_cpu u32max
PARAM_VALUE 0 ftl->zone_count (-2147483647)-s32max
PARAM_VALUE 0 ftl->zone_size 1-s32max
PARAM_VALUE 0 ftl->zones 4096-ptr_max
PARAM_VALUE 0 *ftl->cis_buffer (-4611686018427387904)-4611686018427387903
PARAM_VALUE 1 zone s32min-2147483646
PARAM_VALUE 3 boffset 0
PARAM_VALUE 4 buffer 0
PARAM_VALUE 5 oob 4703433801868963840
BUF_SIZE 0 ftl 264,944
BUF_SIZE 0 ftl 264,944
CAPPED_DATA 0 ftl->zone_count 1
CAPPED_DATA 1 zone 1
CAPPED_DATA 2 block 1
DATA_SOURCE 0 ftl $0
DATA_SOURCE 1 zone $1
PARAM_COMPARE 2 block < $0->zone_size
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 ftl->max_lba
UNITS 1 zone unit_array_size
LOCK2 &dev->lock
LOCK2 0 &ftl->mutex
HALF_LOCKED2 __tag_set->srcu
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct mtd_blktrans_dev)->lock
TYPE_LOCK (struct sm_ftl)->mutex

drivers/mtd/sm_ftl.c sm_read() -> sm_read_sector()

Type Parameter Key Value
PARAM_VALUE 0 ftl 4096-ptr_max
PARAM_VALUE 0 ftl->mutex.dep_map->name 0-255
PARAM_VALUE 0 ftl->mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 ftl->mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 ftl->mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 ftl->mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 ftl->mutex.wait_lock.owner (-1)
PARAM_VALUE 0 ftl->mutex.wait_lock.owner_cpu u32max
PARAM_VALUE 0 ftl->zone_count (-2147483647)-s32max
PARAM_VALUE 0 *ftl->cis_buffer (-4611686018427387904)-4611686018427387903
PARAM_VALUE 1 zone s32min-2147483646
PARAM_VALUE 2 block s16min-(-2),0-s16max
PARAM_VALUE 5 oob 0
BUF_SIZE 0 ftl 264,944
BUF_SIZE 0 ftl 264,944
CAPPED_DATA 0 ftl->zone_count 1
CAPPED_DATA 0 &ftl->mutex 1
CAPPED_DATA 1 zone 1
DATA_SOURCE 4 buffer $2
PARAM_COMPARE 0 ftl->zone_count > $1
PARAM_COMPARE 1 zone < $0->zone_count
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 ftl->max_lba
LOCK2 &dev->lock
LOCK2 0 &ftl->mutex
HALF_LOCKED2 __tag_set->srcu
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct mtd_blktrans_dev)->lock
TYPE_LOCK (struct sm_ftl)->mutex

drivers/mtd/sm_ftl.c sm_read_cis() -> sm_read_sector()

Type Parameter Key Value
PARAM_VALUE 0 ftl 4096-ptr_max
PARAM_VALUE 0 ftl->trans 4096-ptr_max
PARAM_VALUE 0 *ftl->cis_buffer (-4611686018427387904)-4611686018427387903
PARAM_VALUE 1 zone 0
PARAM_VALUE 5 oob 8244779363410956288
BUF_SIZE 0 ftl (-1),256,264,944
BUF_SIZE 0 ftl (-1),256,264,944
BUF_SIZE 0 ftl->cache_data (-1)-0,4096,8192,16384
BUF_SIZE 0 ftl->trans (-1),352
BUF_SIZE 0 ftl->zones (-1),40-s32max
CAPPED_DATA 0 ftl->block_size 1
DATA_SOURCE 0 ftl $0
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 ftl->max_lba
NO_OVERFLOW_SIMPLE 0 ftl->zone_count
UNITS 3 boffset unit_byte
HALF_LOCKED2 global &mtd_table_mutex
HALF_LOCKED2 0 &ftl->mutex