Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 4 files:

Smatch caller information:

fs/ocfs2/alloc.c __ocfs2_rotate_tree_left() -> ocfs2_free_path()

Type Parameter Key Value
PARAM_VALUE 0 path 0,4096-ptr_max
BUF_SIZE 0 path 0,96
BUF_SIZE 0 path 0,96
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &tl_inode->i_rwsem

fs/ocfs2/alloc.c __ocfs2_rotate_tree_left() -> ocfs2_free_path()

Type Parameter Key Value
PARAM_VALUE 0 path 0,4096-ptr_max
PARAM_VALUE 0 path->p_tree_depth 0-u16max
BUF_SIZE 0 path 0,96
BUF_SIZE 0 path 0,96
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &tl_inode->i_rwsem

fs/ocfs2/alloc.c ocfs2_adjust_rightmost_branch() -> ocfs2_free_path()

Type Parameter Key Value
PARAM_VALUE 0 path 4096-ptr_max
PARAM_VALUE 0 path->p_node 4096-ptr_max
BUF_SIZE 0 path 96
DATA_SOURCE 0 path r ocfs2_new_path_from_et
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/ocfs2/alloc.c ocfs2_append_rec_to_path() -> ocfs2_free_path()

Type Parameter Key Value
PARAM_VALUE 0 path 0,4096-ptr_max
BUF_SIZE 0 path 0,96
BUF_SIZE 0 path 0,96
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/ocfs2/alloc.c ocfs2_change_extent_flag() -> ocfs2_free_path()

Type Parameter Key Value
PARAM_VALUE 0 path 0,4096-ptr_max
BUF_SIZE 0 path 96
DATA_SOURCE 0 path r ocfs2_new_path_from_et
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/ocfs2/alloc.c ocfs2_commit_truncate() -> ocfs2_free_path()

Type Parameter Key Value
PARAM_VALUE 0 path 0,4096-ptr_max
PARAM_VALUE 0 path->p_node 4096-ptr_max
PARAM_VALUE 0 path->p_root_access 5422438555232124928
PARAM_VALUE 0 path->p_tree_depth 0-4
BUF_SIZE 0 path 96
DATA_SOURCE 0 path r ocfs2_new_path
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &(inode->i_sb)->s_fs_info->nfs_sync_rwlock

fs/ocfs2/alloc.c ocfs2_do_insert_extent() -> ocfs2_free_path()

Type Parameter Key Value
PARAM_VALUE 0 path 0,4096-ptr_max
PARAM_VALUE 0 path->p_tree_depth s32min-s32max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/ocfs2/alloc.c ocfs2_do_insert_extent() -> ocfs2_free_path()

Type Parameter Key Value
PARAM_VALUE 0 path 0,4096-ptr_max
BUF_SIZE 0 path 0,96
BUF_SIZE 0 path 0,96
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/ocfs2/alloc.c ocfs2_figure_insert_type() -> ocfs2_free_path()

Type Parameter Key Value
PARAM_VALUE 0 path 0,4096-ptr_max
PARAM_VALUE 0 path->p_node 4096-ptr_max
BUF_SIZE 0 path 0,96
BUF_SIZE 0 path 0,96
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/ocfs2/alloc.c ocfs2_figure_merge_contig_type() -> ocfs2_free_path()

Type Parameter Key Value
PARAM_VALUE 0 path 0,4096-ptr_max
BUF_SIZE 0 path 0,96
BUF_SIZE 0 path 0,96
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &tl_inode->i_rwsem

fs/ocfs2/alloc.c ocfs2_figure_merge_contig_type() -> ocfs2_free_path()

Type Parameter Key Value
PARAM_VALUE 0 path 0,4096-ptr_max
BUF_SIZE 0 path 0,96
BUF_SIZE 0 path 0,96
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &tl_inode->i_rwsem

fs/ocfs2/alloc.c ocfs2_get_left_path() -> ocfs2_free_path()

Type Parameter Key Value
PARAM_VALUE 0 path 0,4096-ptr_max
BUF_SIZE 0 path 0,96
BUF_SIZE 0 path 0,96
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &osb->journal->j_trans_barrier
HALF_LOCKED2 &tl_inode->i_rwsem

fs/ocfs2/alloc.c ocfs2_get_right_path() -> ocfs2_free_path()

Type Parameter Key Value
PARAM_VALUE 0 path 0,4096-ptr_max
BUF_SIZE 0 path 0,96
BUF_SIZE 0 path 0,96
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &osb->journal->j_trans_barrier
HALF_LOCKED2 &tl_inode->i_rwsem

fs/ocfs2/alloc.c ocfs2_merge_rec_left() -> ocfs2_free_path()

Type Parameter Key Value
PARAM_VALUE 0 path 0,4096-ptr_max
PARAM_VALUE 0 path->p_node 4096-ptr_max
PARAM_VALUE 0 path->p_tree_depth 1-s32max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &tl_inode->i_rwsem

fs/ocfs2/alloc.c ocfs2_merge_rec_right() -> ocfs2_free_path()

Type Parameter Key Value
PARAM_VALUE 0 path 0,4096-ptr_max
PARAM_VALUE 0 path->p_node 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &tl_inode->i_rwsem

fs/ocfs2/alloc.c ocfs2_remove_extent() -> ocfs2_free_path()

Type Parameter Key Value
PARAM_VALUE 0 path 0,4096-ptr_max
BUF_SIZE 0 path 96
DATA_SOURCE 0 path r ocfs2_new_path_from_et
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &tl_inode->i_rwsem

fs/ocfs2/alloc.c ocfs2_remove_rightmost_path() -> ocfs2_free_path()

Type Parameter Key Value
PARAM_VALUE 0 path 0,4096-ptr_max
PARAM_VALUE 0 path->p_node 4096-ptr_max
BUF_SIZE 0 path 0,96
BUF_SIZE 0 path 0,96
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/ocfs2/alloc.c ocfs2_rotate_tree_left() -> ocfs2_free_path()

Type Parameter Key Value
PARAM_VALUE 0 path 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &tl_inode->i_rwsem

fs/ocfs2/alloc.c ocfs2_rotate_tree_left() -> ocfs2_free_path()

Type Parameter Key Value
PARAM_VALUE 0 path 0,4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &tl_inode->i_rwsem

fs/ocfs2/alloc.c ocfs2_rotate_tree_left() -> ocfs2_free_path()

Type Parameter Key Value
PARAM_VALUE 0 path 0,4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &tl_inode->i_rwsem

fs/ocfs2/alloc.c ocfs2_rotate_tree_right() -> ocfs2_free_path()

Type Parameter Key Value
PARAM_VALUE 0 path 0,4096-ptr_max
BUF_SIZE 0 path 96
DATA_SOURCE 0 path r ocfs2_new_path_from_path
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/ocfs2/alloc.c ocfs2_truncate_rec() -> ocfs2_free_path()

Type Parameter Key Value
PARAM_VALUE 0 path 0,4096-ptr_max
BUF_SIZE 0 path 0,96
BUF_SIZE 0 path 0,96
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &tl_inode->i_rwsem

fs/ocfs2/move_extents.c __ocfs2_move_extent() -> ocfs2_free_path()

Type Parameter Key Value
PARAM_VALUE 0 path 0,4096-ptr_max
BUF_SIZE 0 path 0,96
BUF_SIZE 0 path 0,96
NOCHECK_CALL
LOCK2 &inode->i_rwsem
LOCK2 &tl_inode->i_rwsem
HALF_LOCKED2 &gb_inode->i_rwsem
TYPE_LOCK (struct inode)->i_rwsem

fs/ocfs2/file.c ocfs2_remove_inode_range() -> ocfs2_free_path()

Type Parameter Key Value
PARAM_VALUE 0 path 0,4096-ptr_max
BUF_SIZE 0 path 0,96
BUF_SIZE 0 path 0,96
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &inode->i_rwsem

fs/ocfs2/refcounttree.c ocfs2_adjust_refcount_rec() -> ocfs2_free_path()

Type Parameter Key Value
PARAM_VALUE 0 path 0,4096-ptr_max
BUF_SIZE 0 path 0,96
BUF_SIZE 0 path 0,96
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &inode->i_rwsem

fs/ocfs2/refcounttree.c ocfs2_clear_ext_refcount() -> ocfs2_free_path()

Type Parameter Key Value
PARAM_VALUE 0 path 0,4096-ptr_max
BUF_SIZE 0 path 96
DATA_SOURCE 0 path r ocfs2_new_path_from_et
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &inode->i_rwsem

fs/ocfs2/refcounttree.c ocfs2_get_refcount_cpos_end() -> ocfs2_free_path()

Type Parameter Key Value
PARAM_VALUE 0 path 0,4096-ptr_max
PARAM_VALUE 0 path->p_node 4096-ptr_max
BUF_SIZE 0 path 96
DATA_SOURCE 0 path r ocfs2_new_path_from_et
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/ocfs2/refcounttree.c ocfs2_get_refcount_cpos_end() -> ocfs2_free_path()

Type Parameter Key Value
PARAM_VALUE 0 path 0,4096-ptr_max
BUF_SIZE 0 path 0,96
BUF_SIZE 0 path 0,96
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL