Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

fs/ufs/inode.c free_branch_tail() -> ufs_data_ptr_clear()

Type Parameter Key Value
PARAM_VALUE 0 uspi 4096-ptr_max
PARAM_VALUE 1 p 4096-ptr_max
DATA_SOURCE 1 p r ubh_get_data_ptr
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &ufsi->truncate_mutex
HALF_LOCKED2 &inode->i_rwsem
TYPE_LOCK (struct ufs_inode_info)->truncate_mutex

fs/ufs/inode.c free_branch_tail() -> ufs_data_ptr_clear()

Type Parameter Key Value
PARAM_VALUE 0 uspi 4096-ptr_max
PARAM_VALUE 1 p 4096-ptr_max
DATA_SOURCE 1 p r ubh_get_data_ptr
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &ufsi->truncate_mutex
HALF_LOCKED2 &inode->i_rwsem
TYPE_LOCK (struct ufs_inode_info)->truncate_mutex

fs/ufs/inode.c ufs_trunc_direct() -> ufs_data_ptr_clear()

Type Parameter Key Value
PARAM_VALUE 0 uspi 4096-ptr_max
PARAM_VALUE 1 p 4096-ptr_max
DATA_SOURCE 1 p r ufs_get_direct_data_ptr
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &ufsi->meta_lock.lock
LOCK2 &ufsi->truncate_mutex
TYPE_LOCK (struct seqlock)->lock
TYPE_LOCK (struct ufs_inode_info)->truncate_mutex

fs/ufs/inode.c ufs_trunc_direct() -> ufs_data_ptr_clear()

Type Parameter Key Value
PARAM_VALUE 0 uspi 4096-ptr_max
PARAM_VALUE 1 p 4096-ptr_max
DATA_SOURCE 1 p r ufs_get_direct_data_ptr
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &ufsi->meta_lock.lock
LOCK2 &ufsi->truncate_mutex
TYPE_LOCK (struct seqlock)->lock
TYPE_LOCK (struct ufs_inode_info)->truncate_mutex

fs/ufs/inode.c ufs_trunc_direct() -> ufs_data_ptr_clear()

Type Parameter Key Value
PARAM_VALUE 0 uspi 4096-ptr_max
PARAM_VALUE 1 p 4096-ptr_max
DATA_SOURCE 1 p r ufs_get_direct_data_ptr
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &ufsi->meta_lock.lock
LOCK2 &ufsi->truncate_mutex
TYPE_LOCK (struct seqlock)->lock
TYPE_LOCK (struct ufs_inode_info)->truncate_mutex

fs/ufs/inode.c ufs_truncate_blocks() -> ufs_data_ptr_clear()

Type Parameter Key Value
PARAM_VALUE 0 uspi 4096-ptr_max
PARAM_VALUE 1 p 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &ufsi->meta_lock.lock
LOCK2 &ufsi->truncate_mutex
HALF_LOCKED2 &inode->i_rwsem
TYPE_LOCK (struct seqlock)->lock
TYPE_LOCK (struct ufs_inode_info)->truncate_mutex

fs/ufs/inode.c ufs_truncate_blocks() -> ufs_data_ptr_clear()

Type Parameter Key Value
PARAM_VALUE 0 uspi 4096-ptr_max
PARAM_VALUE 1 p 4096-ptr_max
DATA_SOURCE 1 p r ufs_get_direct_data_ptr
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &ufsi->meta_lock.lock
LOCK2 &ufsi->truncate_mutex
TYPE_LOCK (struct seqlock)->lock
TYPE_LOCK (struct ufs_inode_info)->truncate_mutex