Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 2 files as a function:

Referenced in 3 files:

Smatch caller information:

mm/damon/sysfs-common.c kernfs_path() -> kernfs_path_from_node()

Type Parameter Key Value
PARAM_VALUE 1 from 0
PARAM_VALUE 2 buf 16,4096-ptr_max
PARAM_VALUE 3 buflen 4096
DATA_SOURCE 0 to $0
DATA_SOURCE 2 buf $1
DATA_SOURCE 3 buflen $2
RX_PATH
TASK_NOT_RUNNING

block/blk-iocost.c kernfs_path() -> kernfs_path_from_node()

Type Parameter Key Value
PARAM_VALUE 1 from 0
PARAM_VALUE 2 buf 8650842648623427584
PARAM_VALUE 3 buflen 1024
BUF_SIZE 2 buf 1024
BUF_SIZE 2 buf 1024
DATA_SOURCE 0 to $0
DATA_SOURCE 2 buf $1
DATA_SOURCE 3 buflen $2
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 flags
LOCK2 global &trace_iocg_path_lock
HALF_LOCKED2 &ioc->lock
HALF_LOCKED2 &iocg->waitq.lock
HALF_LOCKED2 irq

fs/kernfs/dir.c pr_cont_kernfs_path() -> kernfs_path_from_node()

Type Parameter Key Value
PARAM_VALUE 1 from 0
PARAM_VALUE 2 buf 7854981384475574272
PARAM_VALUE 3 buflen 4096
BUF_SIZE 2 buf 4096
DATA_SOURCE 0 to $0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
UNITS 3 buflen unit_byte
LOCK2 flags
LOCK2 global &kernfs_pr_cont_lock
HALF_LOCKED2 &ioc->lock
HALF_LOCKED2 global &oom_lock
HALF_LOCKED2 irq

mm/vmscan.c kernfs_path() -> kernfs_path_from_node()

Type Parameter Key Value
PARAM_VALUE 1 from 0
PARAM_VALUE 3 buflen 4096
BUF_SIZE 2 buf s32min-(-2),1-s32max
BUF_SIZE 2 buf s32min-(-2),1-s32max
DATA_SOURCE 0 to $0
DATA_SOURCE 2 buf $1
DATA_SOURCE 3 buflen $2
RX_PATH
TASK_NOT_RUNNING
UNITS 2 buf unit_array_size
LOCK2 &m->lock
TYPE_LOCK (struct seq_file)->lock

kernel/sched/build_utility.c kernfs_path() -> kernfs_path_from_node()

Type Parameter Key Value
PARAM_VALUE 1 from 0
PARAM_VALUE 2 buf 3174942213647273984,3178144796558471168,4979318139916517376,5588107505665544192
PARAM_VALUE 3 buflen 125,4096
BUF_SIZE 2 buf 128,4096
BUF_SIZE 2 buf 128,4096
DATA_SOURCE 0 to $0
DATA_SOURCE 2 buf $1
DATA_SOURCE 3 buflen $2
RX_PATH
TASK_NOT_RUNNING
UNITS 3 buflen unit_byte
LOCK2 rcu_read
HALF_LOCKED2 &m->lock
HALF_LOCKED2 global &sched_debug_lock

kernel/cgroup/cgroup.c cgroup_path_ns_locked() -> kernfs_path_from_node()

Type Parameter Key Value
PARAM_VALUE 2 buf 4096-ptr_max
PARAM_VALUE 3 buflen 4096
BUF_SIZE 2 buf 4096
BUF_SIZE 2 buf 4096
DATA_SOURCE 2 buf $1
DATA_SOURCE 3 buflen $2
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &css_set_lock
LOCK2 irq
HALF_LOCKED2 &m->lock
HALF_LOCKED2 global &cgroup_mutex
HALF_LOCKED2 rcu_read

kernel/cgroup/cgroup.c cgroup_show_path() -> kernfs_path_from_node()

Type Parameter Key Value
PARAM_VALUE 0 to 4096-ptr_max
PARAM_VALUE 0 to->__parent 0
PARAM_VALUE 2 buf 4096-ptr_max
PARAM_VALUE 3 buflen 4096
BUF_SIZE 0 to s32min-(-1),1-s32max
BUF_SIZE 0 to s32min-(-1),1-s32max
BUF_SIZE 2 buf 4096
BUF_SIZE 2 buf 4096
DATA_SOURCE 0 to $1
DATA_SOURCE 2 buf r _kmalloc_noprof
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &css_set_lock
LOCK2 irq
HALF_LOCKED2 &sf->lock
HALF_LOCKED2 global &namespace_sem

kernel/cgroup/cgroup.c kernfs_path() -> kernfs_path_from_node()

Type Parameter Key Value
PARAM_VALUE 1 from 0
PARAM_VALUE 2 buf 1205399080422420480,5819024670428545024
PARAM_VALUE 3 buflen 256,1024
BUF_SIZE 2 buf 256,1024
BUF_SIZE 2 buf 256,1024
DATA_SOURCE 0 to $0
DATA_SOURCE 2 buf $1
DATA_SOURCE 3 buflen $2
HARD_MAX 3 buflen 1024
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 3 buflen unit_byte
HALF_LOCKED2 flags
HALF_LOCKED2 global &trace_cgroup_path_lock

kernel/cgroup/cgroup-v1.c kernfs_path() -> kernfs_path_from_node()

Type Parameter Key Value
PARAM_VALUE 1 from 0
PARAM_VALUE 2 buf 1205399080422420480
PARAM_VALUE 3 buflen 1024
BUF_SIZE 2 buf 1024
BUF_SIZE 2 buf 1024
DATA_SOURCE 0 to $0
DATA_SOURCE 2 buf $1
DATA_SOURCE 3 buflen $2
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 flags
LOCK2 global &cgroup_mutex
LOCK2 global &trace_cgroup_path_lock
HALF_LOCKED2 &pool->lock

kernel/events/core.c kernfs_path() -> kernfs_path_from_node()

Type Parameter Key Value
PARAM_VALUE 0 to 4096-ptr_max
PARAM_VALUE 1 from 0
PARAM_VALUE 2 buf 4096-ptr_max
PARAM_VALUE 3 buflen 4088
BUF_SIZE 2 buf 4096
BUF_SIZE 2 buf 4096
DATA_SOURCE 0 to $0
DATA_SOURCE 2 buf $1
DATA_SOURCE 3 buflen $2
RX_PATH
TASK_NOT_RUNNING
UNITS 3 buflen unit_byte
HALF_LOCKED2 global &cgroup_mutex

kernel/cgroup/freezer.c kernfs_path() -> kernfs_path_from_node()

Type Parameter Key Value
PARAM_VALUE 1 from 0
PARAM_VALUE 2 buf 1205399080422420480
PARAM_VALUE 3 buflen 1024
BUF_SIZE 2 buf 1024
BUF_SIZE 2 buf 1024
DATA_SOURCE 0 to $0
DATA_SOURCE 2 buf $1
DATA_SOURCE 3 buflen $2
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &trace_cgroup_path_lock
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 flags
HALF_LOCKED2 global &cgroup_mutex
HALF_LOCKED2 global &css_set_lock

fs/sysfs/dir.c kernfs_path() -> kernfs_path_from_node()

Type Parameter Key Value
PARAM_VALUE 0 to 4096-ptr_max
PARAM_VALUE 0 to->__parent 0
PARAM_VALUE 0 to->attr.open->nr_mmapped 0-4294967295
PARAM_VALUE 1 from 0
PARAM_VALUE 2 buf 4096-ptr_max
PARAM_VALUE 3 buflen 4096
BUF_SIZE 0 to (-1),1-s32max
BUF_SIZE 0 to (-1),1-s32max
BUF_SIZE 2 buf 4096
BUF_SIZE 2 buf 4096
DATA_SOURCE 0 to $0
DATA_SOURCE 2 buf $1
DATA_SOURCE 3 buflen $2
STR_LEN 0 to (-1),2-11,17
STR_LEN 0 to (-1),2-11,17
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING