Defined in 1 files as a function:

Referenced in 6 files:

Smatch caller information:

fs/gfs2/glock.c __gfs2_glock_dq() -> glock_type()

Type Parameter Key Value
PARAM_VALUE 0 gl 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 gl->gl_name.ln_number 0-u64max
LOCK2 &gl->gl_lockref.lock
HALF_LOCKED2 &fp->f_fl_mutex
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct lockref)->lock

fs/gfs2/glock.c add_to_queue() -> glock_type()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &gl->gl_lockref.lock
HALF_LOCKED2 &fp->f_fl_mutex
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct lockref)->lock

fs/gfs2/glock.c add_to_queue() -> glock_type()

Type Parameter Key Value
PARAM_VALUE 0 gl 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 gl->gl_name.ln_number 0-u64max
LOCK2 &gl->gl_lockref.lock
HALF_LOCKED2 &fp->f_fl_mutex
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct lockref)->lock

fs/gfs2/glock.c finish_xmote() -> glock_type()

Type Parameter Key Value
PARAM_VALUE 0 gl 4096-ptr_max
DATA_SOURCE 0 gl $0
PARAM_COMPARE 0 gl->gl_state != $0->gl_target
PREEMPT_ADD
RX_PATH
NO_OVERFLOW_SIMPLE 0 gl->gl_name.ln_sbd->sd_jdesc->jd_log_bio->bi_io_vec
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 0 &gl->gl_lockref.lock

fs/gfs2/glock.c flush_delete_work() -> glock_type()

Type Parameter Key Value
PARAM_VALUE 0 gl 4096-ptr_max
CAPPED_DATA 0 gl->gl_name.ln_sbd 1
DATA_SOURCE 0 gl $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &pool->lock

fs/gfs2/glock.c gfs2_dump_glock() -> glock_type()

Type Parameter Key Value
PARAM_VALUE 0 gl 4096-ptr_max
BUF_SIZE 0 gl (-1),168,488
BUF_SIZE 0 gl (-1),168,488
DATA_SOURCE 0 gl $1
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 gl->gl_name.ln_number 0-u64max
NO_OVERFLOW_SIMPLE 0 gl->gl_name.ln_sbd->sd_jdesc->jd_log_bio->bi_io_vec
HALF_LOCKED2 &gl->gl_lockref.lock
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &rbm.rgd->rd_mutex
HALF_LOCKED2 &rbm.rgd->rd_rsspin
HALF_LOCKED2 &rgd->rd_mutex
HALF_LOCKED2 &rgd->rd_rsspin
HALF_LOCKED2 &sdp->sd_ail_lock
HALF_LOCKED2 &sdp->sd_freeze_mutex
HALF_LOCKED2 &sdp->sd_log_flush_lock
HALF_LOCKED2 &sdp->sd_log_lock
HALF_LOCKED2 0 &gl->gl_lockref.lock

fs/gfs2/glock.c gfs2_glock_cb() -> glock_type()

Type Parameter Key Value
PARAM_VALUE 0 gl 4096-ptr_max
BUF_SIZE 0 gl (-1),168,488
BUF_SIZE 0 gl (-1),168,488
CAPPED_DATA 0 &gl->gl_holders 1
DATA_SOURCE 0 gl $0
PARAM_COMPARE 0 &gl->gl_holders != $0->gl_holders.next
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &gl->gl_lockref.lock
HALF_LOCKED2 &of->mutex
TYPE_LOCK (struct lockref)->lock

fs/gfs2/glock.c gfs2_glock_get() -> glock_type()

Type Parameter Key Value
PARAM_VALUE 0 gl 4096-ptr_max
PARAM_VALUE 0 gl->gl_name.ln_type 1-6,8-9
BUF_SIZE 0 gl (-1),712
BUF_SIZE 0 gl (-1),712
BUF_SIZE 0 gl->gl_lksb.sb_lvbptr 0,32
BIT_INFO 0 gl->gl_flags 0x400,0x404
MEM_ZERO 0 &gl->gl_lksb
RX_PATH
USER_DATA 0 gl->gl_name.ln_number 0-u64max
HALF_LOCKED2 &fp->f_fl_mutex

fs/gfs2/glock.c gfs2_glockfd_seq_show() -> glock_type()

Type Parameter Key Value
PARAM_VALUE 0 gl 1-u64max
RX_PATH
TASK_NOT_RUNNING
LOCK2 &inode->i_rwsem
LOCK2 &seq->lock
TYPE_LOCK (struct inode)->i_rwsem
TYPE_LOCK (struct seq_file)->lock

fs/gfs2/glock.c gfs2_glstats_seq_show() -> glock_type()

Type Parameter Key Value
PARAM_VALUE 0 gl 1-ptr_max
DATA_SOURCE 0 gl $1
RX_PATH
TASK_NOT_RUNNING
LOCK2 &seq->lock
TYPE_LOCK (struct seq_file)->lock

fs/gfs2/glock.c gfs2_sbstats_inc() -> glock_type()

Type Parameter Key Value
PARAM_VALUE 0 gl 4096-ptr_max
DATA_SOURCE 0 gl $0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 gl->gl_name.ln_number 0-u64max
LOCK2 &gl->gl_lockref.lock
HALF_LOCKED2 &fp->f_fl_mutex
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct lockref)->lock

fs/gfs2/glock.c glock_work_func() -> glock_type()

Type Parameter Key Value
PARAM_VALUE 0 gl 4096-ptr_max
PREEMPT_ADD <- disables preempt
LOCK2 0 &gl->gl_lockref.lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct lockref)->lock

fs/gfs2/lock_dlm.c gdlm_lock() -> glock_type()

Type Parameter Key Value
PARAM_VALUE 0 gl 4096-ptr_max
DATA_SOURCE 0 gl $0
RX_PATH
NO_OVERFLOW_SIMPLE 0 gl->gl_name.ln_sbd->sd_jdesc->jd_log_bio->bi_io_vec
HALF_LOCKED2 &pool->lock

fs/gfs2/lock_dlm.c gdlm_put_lock() -> glock_type()

Type Parameter Key Value
PARAM_VALUE 0 gl 4096-ptr_max
BUF_SIZE 0 gl (-1),488
BUF_SIZE 0 gl (-1),488
DATA_SOURCE 0 gl $0
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 gl->gl_name.ln_number 0-u64max

fs/gfs2/lock_dlm.c gfs2_sbstats_inc() -> glock_type()

Type Parameter Key Value
PARAM_VALUE 0 gl 4096-ptr_max
BUF_SIZE 0 gl (-1),488
BUF_SIZE 0 gl (-1),488
DATA_SOURCE 0 gl $0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 gl->gl_name.ln_number 0-u64max
NO_OVERFLOW_SIMPLE 0 gl->gl_name.ln_sbd->sd_jdesc->jd_log_bio->bi_io_vec
HALF_LOCKED2 &pool->lock

fs/gfs2/lock_dlm.c gfs2_update_reply_times() -> glock_type()

Type Parameter Key Value
PARAM_VALUE 0 gl 4096-ptr_max
BUF_SIZE 0 gl 168,488
BUF_SIZE 0 gl 168,488
DATA_SOURCE 0 gl $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &ls->ls_cb_lock
HALF_LOCKED2 &ls->ls_recoverd_active
HALF_LOCKED2 bh

fs/gfs2/lock_dlm.c gfs2_update_request_times() -> glock_type()

Type Parameter Key Value
PARAM_VALUE 0 gl 4096-ptr_max
BUF_SIZE 0 gl (-1),488
BUF_SIZE 0 gl (-1),488
DATA_SOURCE 0 gl $0
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 gl->gl_name.ln_number 0-u64max
NO_OVERFLOW_SIMPLE 0 gl->gl_name.ln_sbd->sd_jdesc->jd_log_bio->bi_io_vec
HALF_LOCKED2 &pool->lock

fs/gfs2/glops.c gfs2_ail_error() -> glock_type()

Type Parameter Key Value
PARAM_VALUE 0 gl 4096-ptr_max
DATA_SOURCE 0 gl $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 gl->gl_name.ln_sbd->sd_jdesc->jd_log_bio->bi_io_vec
LOCK2 &sdp->sd_ail_lock
LOCK2 &sdp->sd_log_flush_lock
LOCK2 &sdp->sd_log_lock
TYPE_LOCK (struct gfs2_sbd)->sd_ail_lock
TYPE_LOCK (struct gfs2_sbd)->sd_log_flush_lock
TYPE_LOCK (struct gfs2_sbd)->sd_log_lock

fs/gfs2/lops.c buffer_is_rgrp() -> glock_type()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 &sdp->sd_log_flush_lock
TYPE_LOCK (struct gfs2_sbd)->sd_log_flush_lock