Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

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

Type Parameter Key Value
PARAM_VALUE 0 path 4096-ptr_max
PARAM_VALUE 0 path->p_node 4096-ptr_max
DATA_SOURCE 0 path $3
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &tl_inode->i_rwsem

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

Type Parameter Key Value
PARAM_VALUE 0 path 4096-ptr_max
PARAM_VALUE 0 path->p_node 4096-ptr_max
CAPPED_DATA 0 path->p_root_access 1
DATA_SOURCE 0 path $3
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &tl_inode->i_rwsem

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

Type Parameter Key Value
PARAM_VALUE 0 path 4096-ptr_max
PARAM_VALUE 0 path->p_node 4096-ptr_max
PARAM_VALUE 0 path->p_tree_depth s32min-(-1),1-s32max
BUF_SIZE 0 path 96
DATA_SOURCE 0 path $3
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

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

Type Parameter Key Value
PARAM_VALUE 0 path 4096-ptr_max
PARAM_VALUE 0 path->p_node 4096-ptr_max
PARAM_VALUE 0 path->p_tree_depth 1-s32max
BUF_SIZE 0 path 96
DATA_SOURCE 0 path $1
FUZZY_MAX 0 path->p_tree_depth 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &tl_inode->i_rwsem

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

Type Parameter Key Value
PARAM_VALUE 0 path 4096-ptr_max
PARAM_VALUE 0 path->p_node 4096-ptr_max
PARAM_VALUE 0 path->p_tree_depth 1-s32max
BUF_SIZE 0 path 96
DATA_SOURCE 0 path $1
FUZZY_MAX 0 path->p_tree_depth 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &tl_inode->i_rwsem

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

Type Parameter Key Value
PARAM_VALUE 0 path 4096-ptr_max
PARAM_VALUE 0 path->p_node 4096-ptr_max
PARAM_VALUE 0 path->p_tree_depth s32min-(-1),1-s32max
DATA_SOURCE 0 path $1
RX_PATH
TASK_NOT_RUNNING
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_new_path_from_path()

Type Parameter Key Value
PARAM_VALUE 0 path 4096-ptr_max
PARAM_VALUE 0 path->p_node 4096-ptr_max
PARAM_VALUE 0 path->p_tree_depth s32min-(-1),1-s32max
DATA_SOURCE 0 path $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &osb->journal->j_trans_barrier
HALF_LOCKED2 &tl_inode->i_rwsem

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

Type Parameter Key Value
PARAM_VALUE 0 path 4096-ptr_max
PARAM_VALUE 0 path->p_node 4096-ptr_max
PARAM_VALUE 0 path->p_tree_depth s32min-(-1),1-s32max
BUF_SIZE 0 path (-1),96
BUF_SIZE 0 path (-1),96
DATA_SOURCE 0 path $2
RX_PATH
TASK_NOT_RUNNING

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

Type Parameter Key Value
PARAM_VALUE 0 path 4096-ptr_max
BUF_SIZE 0 path 96
DATA_SOURCE 0 path $4
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

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

Type Parameter Key Value
PARAM_VALUE 0 path 4096-ptr_max
PARAM_VALUE 0 path->p_node 4096-ptr_max
PARAM_VALUE 0 path->p_tree_depth s32min-(-1),1-s32max
BUF_SIZE 0 path 96
DATA_SOURCE 0 path $2
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &tl_inode->i_rwsem

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

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