Defined in 1 files as a function:
Referenced in 1 files:
Smatch caller information:
fs/gfs2/log.c __ail2_empty() -> gfs2_ail_empty_tr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sdp | 4096-ptr_max |
| PARAM_VALUE | 0 | sdp->sd_ail2_list.next->next | 4096-ptr_max |
| PARAM_VALUE | 0 | sdp->sd_ail2_list.next->prev | 4096-ptr_max |
| PARAM_VALUE | 0 | sdp->sd_ail_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | sdp->sd_delete_wq->flush_color | s32min-s32max |
| PARAM_VALUE | 0 | sdp->sd_delete_wq->work_color | s32min-s32max |
| PARAM_VALUE | 0 | sdp->sd_jdesc | 4096-ptr_max |
| PARAM_VALUE | 0 | sdp->sd_jdesc->jd_log_bio | 0,4096-ptr_max |
| PARAM_VALUE | 0 | sdp->sd_jdesc->jd_log_bio->bi_end_io | 6431644242391375872 |
| PARAM_VALUE | 0 | sdp->sd_jdesc->jd_log_bio->bi_io_vec->_refcount.counter | s32min-s32max |
| PARAM_VALUE | 0 | sdp->sd_jdesc->jd_log_bio->bi_io_vec->codec->users | s32min-s32max |
| PARAM_VALUE | 0 | sdp->sd_jdesc->jd_log_bio->bi_io_vec->header_page->_refcount.counter | s32min-s32max |
| PARAM_VALUE | 0 | sdp->sd_jdesc->jd_log_bio->bi_io_vec->header_page->page_type | 0-4294967295 |
| PARAM_VALUE | 0 | sdp->sd_jdesc->jd_log_bio->bi_io_vec->kref.refcount.refs.counter | s32min-s32max |
| PARAM_VALUE | 0 | sdp->sd_jdesc->jd_log_bio->bi_io_vec->page_type | 0-4294967295 |
| PARAM_VALUE | 0 | sdp->sd_jdesc->jd_log_bio->bi_private | 4096-ptr_max |
| PARAM_VALUE | 0 | sdp->sd_jdesc->jd_log_bio->bi_private->b_count.counter | s32min-s32max |
| PARAM_VALUE | 0 | sdp->sd_jdesc->jd_log_bio->bi_private->b_folio->_entire_mapcount.counter | s32min-s32max |
| PARAM_VALUE | 0 | sdp->sd_jdesc->jd_log_bio->bi_private->b_folio->_large_mapcount.counter | s32min-s32max |
| PARAM_VALUE | 0 | sdp->sd_jdesc->jd_log_bio->bi_private->b_folio->_mapcount.counter | s32min-s32max |
| PARAM_VALUE | 0 | sdp->sd_jdesc->jd_log_bio->bi_private->b_folio->private->wb_kref | s32min-s32max |
| PARAM_VALUE | 0 | sdp->sd_log_flush_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | sdp->sd_log_flush_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | sdp->sd_log_idle | 0-1 |
| PARAM_VALUE | 0 | sdp->sd_log_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | sdp->sd_log_ordered.next | 56,4096-ptr_max |
| PARAM_VALUE | 0 | sdp->sd_log_ordered.next->next | 0 |
| PARAM_VALUE | 0 | sdp->sd_log_ordered.next->prev | 4096-ptr_max |
| PARAM_VALUE | 0 | sdp->sd_log_ordered.prev | 4096-ptr_max |
| PARAM_VALUE | 0 | sdp->sd_log_ordered.prev->next | 4096-ptr_max |
| PARAM_VALUE | 0 | sdp->sd_log_ordered.prev->prev | 4096-ptr_max |
| PARAM_VALUE | 0 | sdp->sd_log_tr | 0 |
| PARAM_VALUE | 0 | sdp->sd_ordered_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | sdp->sd_vfs | 4096-ptr_max |
| PARAM_VALUE | 0 | sdp->sd_vfs->s_cop->empty_dir | 0,86,661756434209751040,4392966320616476672,5234023279986843648,8614756098313990144 |
| PARAM_VALUE | 0 | sdp->sd_vfs->s_cop->get_context | 0,706,17350455714160640,4513809449498124288,5149251875611672576,7067778626864828416 |
| PARAM_VALUE | 0 | sdp->sd_vfs->s_cop->set_context | 0,67,317457138841939968,3250154607523569664,5979066299606671360,6756104566897242112 |
| PARAM_VALUE | 1 | tr | 4096-ptr_max |
| PARAM_VALUE | 2 | head | 4096-ptr_max |
| BUF_SIZE | 0 | sdp | (-1),1-s32max |
| BUF_SIZE | 0 | sdp | (-1),1-s32max |
| DATA_SOURCE | 0 | sdp | $0 |
| DATA_SOURCE | 1 | tr | $1 |
| FUZZY_MAX | 0 | sdp->sd_log_idle | 1 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| NO_OVERFLOW_SIMPLE | 0 | sdp->sd_jdesc->jd_log_bio->bi_io_vec | |
| NO_OVERFLOW_SIMPLE | 0 | sdp->sd_logd_process->dl.pi_se->dl_runtime | |
| NO_OVERFLOW_SIMPLE | 0 | sdp->sd_quotad_process->dl.pi_se->dl_runtime | |
| UNITS | 0 | sdp | unit_byte |
| LOCK2 | 0 | &sdp->sd_ail_lock | |
| LOCK2 | 0 | &sdp->sd_log_flush_lock | |
| TYPE_LOCK | (struct gfs2_sbd)->sd_ail_lock | ||
| TYPE_LOCK | (struct gfs2_sbd)->sd_log_flush_lock |
fs/gfs2/log.c gfs2_ail_drain() -> gfs2_ail_empty_tr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sdp | 4096-ptr_max |
| PARAM_VALUE | 0 | sdp->sd_ail_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | sdp->sd_args.ar_debug | 0 |
| PARAM_VALUE | 0 | sdp->sd_lockstruct.ls_ops | 4096-ptr_max |
| PARAM_VALUE | 0 | sdp->sd_lockstruct.ls_ops->lm_lock | 0,7033430123836678144 |
| PARAM_VALUE | 0 | sdp->sd_lockstruct.ls_sem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | sdp->sd_lockstruct.ls_sem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | sdp->sd_log_flush_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | sdp->sd_log_flush_lock.first_waiter->list.next | 2624917664208203776 |
| PARAM_VALUE | 0 | sdp->sd_log_flush_lock.first_waiter->list.prev | 2624917664208203776 |
| PARAM_VALUE | 0 | sdp->sd_log_flush_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | sdp->sd_log_flush_lock.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 0 | sdp->sd_log_flush_lock.wait_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | sdp->sd_log_flush_lock.wait_lock.owner | (-1) |
| PARAM_VALUE | 0 | sdp->sd_log_flush_lock.wait_lock.owner_cpu | u32max |
| PARAM_VALUE | 1 | tr | 4096-ptr_max |
| PARAM_VALUE | 2 | head | 4096-ptr_max |
| CAPPED_DATA | 0 | &sdp->sd_ail1_list | 1 |
| DATA_SOURCE | 0 | sdp | $0 |
| PARAM_COMPARE | 0 | &sdp->sd_ail1_list | != $0->sd_ail1_list.next |
| PREEMPT_ADD | <- disables preempt | ||
| NOCHECK_CALL | |||
| LOCK2 | 0 | &sdp->sd_ail_lock | |
| LOCK2 | 0 | &sdp->sd_log_flush_lock | |
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct gfs2_sbd)->sd_ail_lock | ||
| TYPE_LOCK | (struct gfs2_sbd)->sd_log_flush_lock |
fs/gfs2/log.c gfs2_ail_drain() -> gfs2_ail_empty_tr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sdp | 4096-ptr_max |
| PARAM_VALUE | 0 | sdp->sd_ail_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | sdp->sd_args.ar_debug | 0 |
| PARAM_VALUE | 0 | sdp->sd_lockstruct.ls_ops | 4096-ptr_max |
| PARAM_VALUE | 0 | sdp->sd_lockstruct.ls_ops->lm_lock | 0,7033430123836678144 |
| PARAM_VALUE | 0 | sdp->sd_lockstruct.ls_sem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | sdp->sd_lockstruct.ls_sem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | sdp->sd_log_flush_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | sdp->sd_log_flush_lock.first_waiter->list.next | 2624917664208203776 |
| PARAM_VALUE | 0 | sdp->sd_log_flush_lock.first_waiter->list.prev | 2624917664208203776 |
| PARAM_VALUE | 0 | sdp->sd_log_flush_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | sdp->sd_log_flush_lock.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 0 | sdp->sd_log_flush_lock.wait_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | sdp->sd_log_flush_lock.wait_lock.owner | (-1) |
| PARAM_VALUE | 0 | sdp->sd_log_flush_lock.wait_lock.owner_cpu | u32max |
| PARAM_VALUE | 1 | tr | 4096-ptr_max |
| PARAM_VALUE | 2 | head | 4096-ptr_max |
| CAPPED_DATA | 0 | &sdp->sd_ail1_list | 1 |
| CAPPED_DATA | 1 | tr | 1 |
| CAPPED_DATA | 1 | &tr->tr_ail1_list | 1 |
| DATA_SOURCE | 0 | sdp | $0 |
| PARAM_COMPARE | 0 | &sdp->sd_ail1_list | != $0->sd_ail1_list.next |
| PREEMPT_ADD | <- disables preempt | ||
| NOCHECK_CALL | |||
| LOCK2 | 0 | &sdp->sd_ail_lock | |
| LOCK2 | 0 | &sdp->sd_log_flush_lock | |
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct gfs2_sbd)->sd_ail_lock | ||
| TYPE_LOCK | (struct gfs2_sbd)->sd_log_flush_lock |
fs/gfs2/log.c gfs2_ail_drain() -> gfs2_ail_empty_tr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sdp | 4096-ptr_max |
| PARAM_VALUE | 0 | sdp->sd_ail_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | sdp->sd_args.ar_debug | 0 |
| PARAM_VALUE | 0 | sdp->sd_lockstruct.ls_ops | 4096-ptr_max |
| PARAM_VALUE | 0 | sdp->sd_lockstruct.ls_ops->lm_lock | 0,7033430123836678144 |
| PARAM_VALUE | 0 | sdp->sd_lockstruct.ls_sem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | sdp->sd_lockstruct.ls_sem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | sdp->sd_log_flush_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | sdp->sd_log_flush_lock.first_waiter->list.next | 2624917664208203776 |
| PARAM_VALUE | 0 | sdp->sd_log_flush_lock.first_waiter->list.prev | 2624917664208203776 |
| PARAM_VALUE | 0 | sdp->sd_log_flush_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | sdp->sd_log_flush_lock.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 0 | sdp->sd_log_flush_lock.wait_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | sdp->sd_log_flush_lock.wait_lock.owner | (-1) |
| PARAM_VALUE | 0 | sdp->sd_log_flush_lock.wait_lock.owner_cpu | u32max |
| PARAM_VALUE | 1 | tr | 4096-ptr_max |
| PARAM_VALUE | 2 | head | 4096-ptr_max |
| CAPPED_DATA | 0 | &sdp->sd_ail1_list | 1 |
| CAPPED_DATA | 0 | &sdp->sd_ail2_list | 1 |
| DATA_SOURCE | 0 | sdp | $0 |
| PARAM_COMPARE | 0 | &sdp->sd_ail2_list | != $0->sd_ail2_list.next |
| PREEMPT_ADD | <- disables preempt | ||
| NOCHECK_CALL | |||
| LOCK2 | 0 | &sdp->sd_ail_lock | |
| LOCK2 | 0 | &sdp->sd_log_flush_lock | |
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct gfs2_sbd)->sd_ail_lock | ||
| TYPE_LOCK | (struct gfs2_sbd)->sd_log_flush_lock |