Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/md/dm-writecache.c writecache_suspend() -> writecache_wait_for_writeback()

Type Parameter Key Value
PARAM_VALUE 0 wc 4096-ptr_max
PARAM_VALUE 0 wc->autocommit_timer.entry.pprev 0
PARAM_VALUE 0 wc->autocommit_timer.flags 0-4194302
PARAM_VALUE 0 wc->autocommit_timer.function 0
PARAM_VALUE 0 wc->flush_on_suspend 0
PARAM_VALUE 0 wc->lock.dep_map->name 0-255
PARAM_VALUE 0 wc->lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 wc->lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 wc->lock.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 wc->lock.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 wc->lock.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 wc->lock.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 wc->lock.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 wc->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 wc->max_age_timer.entry.pprev 0
PARAM_VALUE 0 wc->max_age_timer.flags 0-4194302
PARAM_VALUE 0 wc->max_age_timer.function 0
PARAM_VALUE 0 wc->uncommitted_blocks 0
PARAM_VALUE 0 wc->writeback_wq 4096-ptr_max
PARAM_VALUE 0 wc->writeback_wq->flags 0-4294967295
PARAM_VALUE 0 wc->writeback_wq->flush_color s32min-s32max
PARAM_VALUE 0 wc->writeback_wq->nr_drainers s32min-s32max
PARAM_VALUE 0 wc->writeback_wq->nr_pwqs_to_flush.counter s32min-s32max
PARAM_VALUE 0 wc->writeback_wq->work_color s32min-s32max
PARAM_VALUE 0 *wc->writeback_wq->lockdep_map->name 0-255
BUF_SIZE 0 wc 16,40-s32max
BUF_SIZE 0 wc 16,40-s32max
CAPPED_DATA 0 &wc->autocommit_timer 1
CAPPED_DATA 0 &wc->max_age_timer 1
LOCK2 0 &wc->lock
HALF_LOCKED2 &md->io_barrier
HALF_LOCKED2 &md->suspend_lock
TYPE_LOCK (struct dm_writecache)->lock
TYPE_LOCK (struct mapped_device)->suspend_lock

drivers/md/dm-writecache.c writecache_suspend() -> writecache_wait_for_writeback()

Type Parameter Key Value
PARAM_VALUE 0 wc 4096-ptr_max
PARAM_VALUE 0 wc->autocommit_timer.entry.pprev 0
PARAM_VALUE 0 wc->autocommit_timer.flags 0-4194302
PARAM_VALUE 0 wc->autocommit_timer.function 0
PARAM_VALUE 0 wc->flush_on_suspend 0
PARAM_VALUE 0 wc->lock.dep_map->name 0-255
PARAM_VALUE 0 wc->lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 wc->lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 wc->lock.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 wc->lock.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 wc->lock.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 wc->lock.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 wc->lock.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 wc->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 wc->max_age_timer.entry.pprev 0
PARAM_VALUE 0 wc->max_age_timer.flags 0-4194302
PARAM_VALUE 0 wc->max_age_timer.function 0
PARAM_VALUE 0 wc->uncommitted_blocks 0
PARAM_VALUE 0 wc->writeback_size 1-u64max
PARAM_VALUE 0 wc->writeback_wq 4096-ptr_max
PARAM_VALUE 0 wc->writeback_wq->flags 0-4294967295
PARAM_VALUE 0 wc->writeback_wq->flush_color s32min-s32max
PARAM_VALUE 0 wc->writeback_wq->nr_drainers s32min-s32max
PARAM_VALUE 0 wc->writeback_wq->nr_pwqs_to_flush.counter s32min-s32max
PARAM_VALUE 0 wc->writeback_wq->work_color s32min-s32max
PARAM_VALUE 0 *wc->writeback_wq->lockdep_map->name 0-255
BUF_SIZE 0 wc 16,40-s32max
BUF_SIZE 0 wc 16,40-s32max
CAPPED_DATA 0 &wc->autocommit_timer 1
CAPPED_DATA 0 &wc->max_age_timer 1
LOCK2 0 &wc->lock
HALF_LOCKED2 &md->io_barrier
HALF_LOCKED2 &md->suspend_lock
TYPE_LOCK (struct dm_writecache)->lock
TYPE_LOCK (struct mapped_device)->suspend_lock

drivers/md/dm-writecache.c writecache_writeback() -> writecache_wait_for_writeback()

Type Parameter Key Value
PARAM_VALUE 0 wc 4096-ptr_max
PARAM_VALUE 0 wc->error 0
PARAM_VALUE 0 wc->lock.dep_map->name 0-255
PARAM_VALUE 0 wc->lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 wc->lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 wc->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 wc->writeback_all 1-u32max
CAPPED_DATA 0 wc->pause 1
LOCK2 0 &wc->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct dm_writecache)->lock

drivers/md/dm-writecache.c writecache_writeback() -> writecache_wait_for_writeback()

Type Parameter Key Value
PARAM_VALUE 0 wc 4096-ptr_max
PARAM_VALUE 0 wc->lock.dep_map->name 0-255
PARAM_VALUE 0 wc->lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 wc->lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 wc->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 wc->lru.prev 1197293385336737792
PARAM_VALUE 0 wc->lru.prev->next 4096-1197293385336737791,1197293385336737793-ptr_max
CAPPED_DATA 0 wc->pause 1
CAPPED_DATA 0 &wc->lru 1
NOCHECK_CALL
LOCK2 0 &wc->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct dm_writecache)->lock

drivers/md/dm-writecache.c writecache_writeback() -> writecache_wait_for_writeback()

Type Parameter Key Value
PARAM_VALUE 0 wc 4096-ptr_max
PARAM_VALUE 0 wc->dm_kcopyd->job_pool.curr_nr s32min-s32max
PARAM_VALUE 0 wc->lock.dep_map->name 0-255
PARAM_VALUE 0 wc->lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 wc->lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 wc->lock.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 wc->lock.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 wc->lock.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 wc->lock.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 wc->lock.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 wc->lock.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 wc->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 wc->writeback_all 1-u32max
CAPPED_DATA 0 wc->pause 1
CAPPED_DATA 0 &wc->lru 1
LOCK2 0 &wc->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct dm_writecache)->lock

drivers/md/dm-writecache.c writecache_writeback() -> writecache_wait_for_writeback()

Type Parameter Key Value
PARAM_VALUE 0 wc 4096-ptr_max
PARAM_VALUE 0 wc->dm_kcopyd->job_pool.curr_nr s32min-s32max
PARAM_VALUE 0 wc->lock.dep_map->name 0-255
PARAM_VALUE 0 wc->lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 wc->lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 wc->lock.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 wc->lock.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 wc->lock.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 wc->lock.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 wc->lock.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 wc->lock.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 wc->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 wc->overwrote_committed 0
PARAM_VALUE 0 wc->writeback_all 1-u32max
PARAM_VALUE 0 wc->writeback_size 1-u64max
CAPPED_DATA 0 wc->pause 1
CAPPED_DATA 0 &wc->lru 1
LOCK2 0 &wc->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct dm_writecache)->lock