pidfd_getfd
NR: 438
implementation
complexity: 199
similar syscall
accessed structs
func | struct | target | location | has_read | has_write |
---|---|---|---|---|---|
__ptrace_may_access | cred | user_ns | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/ptrace.c#L324 | true | true |
task_cls_classid | cgroup_cls_state | css | https://elixir.bootlin.com/linux/v6.14.7/source/include/net/cls_cgroup.h#L34 | true | true |
task_cls_classid | cgroup_cls_state | classid | https://elixir.bootlin.com/linux/v6.14.7/source/include/net/cls_cgroup.h#L34 | true | true |
__ptrace_may_access | cred | uid | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/ptrace.c#L319 | true | true |
__ptrace_may_access | cred | uid | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/ptrace.c#L313 | true | true |
__ptrace_may_access | cred | gid | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/ptrace.c#L322 | true | true |
__ptrace_may_access | cred | gid | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/ptrace.c#L314 | true | true |
__ptrace_may_access | cred | suid | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/ptrace.c#L318 | true | true |
__ptrace_may_access | cred | sgid | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/ptrace.c#L321 | true | true |
__ptrace_may_access | cred | euid | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/ptrace.c#L317 | true | true |
__ptrace_may_access | cred | egid | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/ptrace.c#L320 | true | true |
__ptrace_may_access | cred | fsuid | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/ptrace.c#L302 | true | true |
__ptrace_may_access | cred | fsgid | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/ptrace.c#L303 | true | true |
__ptrace_may_access | task_struct | mm | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/ptrace.c#L340 | true | true |
__ptrace_may_access | task_struct | real_cred | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/ptrace.c#L316 | true | true |
__ptrace_may_access | task_struct | real_cred | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/ptrace.c#L316 | false | false |
__ptrace_may_access | task_struct | cred | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/ptrace.c#L278 | true | true |
__ptrace_may_access | (unnamed class/struct/union) | user_ns | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/ptrace.c#L343 | true | true |
__pidfd_fget | task_struct | signal | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/pid.c#L793 | true | true |
__pidfd_fget | task_struct | signal | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/pid.c#L784 | true | true |
__pidfd_fget | task_struct | flags | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/pid.c#L808 | true | true |
__pidfd_fget | signal_struct | exec_update_lock | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/pid.c#L793 | false | false |
__pidfd_fget | signal_struct | exec_update_lock | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/pid.c#L784 | false | false |
__do_sys_pidfd_getfd | fd | word | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/pid.c#L867 | true | true |
__irq_work_queue_local | irq_work | node | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/irq_work.c#L107 | true | true |
__irq_work_queue_local | irq_work | node | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/irq_work.c#L95 | true | true |
__irq_work_queue_local | __call_single_node | llist | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/irq_work.c#L107 | false | false |
__irq_work_queue_local | (unnamed class/struct/union) | a_flags | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/irq_work.c#L95 | false | false |
irq_work_claim | irq_work | node | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/irq_work.c#L61 | true | true |
irq_work_claim | (unnamed class/struct/union) | a_flags | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/irq_work.c#L61 | false | false |
task_netprioidx | cgroup_subsys_state | id | https://elixir.bootlin.com/linux/v6.14.7/source/include/net/netprio_cgroup.h#L29 | true | true |
backing_file | backing_file | file | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file_table.c#L57 | true | true |
init_task_work | callback_head | func | https://elixir.bootlin.com/linux/v6.14.7/source/include/linux/task_work.h#L13 | false | false |
file_free | file | f_cred | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file_table.c#L71 | true | true |
file_free | file | f_mode | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file_table.c#L72 | true | true |
file_free | file | f_mode | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file_table.c#L69 | true | true |
__clear_open_fd | fdtable | full_fds_bits | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L327 | true | true |
__clear_open_fd | fdtable | full_fds_bits | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L326 | true | true |
__clear_open_fd | fdtable | open_fds | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L324 | true | true |
__put_unused_fd | files_struct | next_fd | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L609 | true | true |
__put_unused_fd | files_struct | next_fd | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L610 | false | false |
__put_unused_fd | files_struct | fdt | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L607 | true | true |
__put_unused_fd | files_struct | fdt | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L607 | false | false |
__put_unused_fd | files_struct | file_lock | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L607 | false | false |
fget_task | task_struct | files | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L1087 | true | true |
fget_task | task_struct | files | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L1086 | true | true |
files_lookup_fd_raw | files_struct | fdt | https://elixir.bootlin.com/linux/v6.14.7/source/include/linux/fdtable.h#L74 | true | true |
files_lookup_fd_raw | files_struct | fdt | https://elixir.bootlin.com/linux/v6.14.7/source/include/linux/fdtable.h#L74 | false | false |
files_lookup_fd_raw | fdtable | fd | https://elixir.bootlin.com/linux/v6.14.7/source/include/linux/fdtable.h#L84 | true | true |
files_lookup_fd_raw | fdtable | max_fds | https://elixir.bootlin.com/linux/v6.14.7/source/include/linux/fdtable.h#L75 | true | true |
__fget_light | files_struct | count | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L1154 | false | false |
__fget_light | task_struct | files | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L1142 | true | true |
__fget_light | file | f_mode | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L1156 | true | true |
__fget_files_rcu | files_struct | fdt | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L1030 | true | true |
__fget_files_rcu | files_struct | fdt | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L981 | true | true |
__fget_files_rcu | files_struct | fdt | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L1030 | false | false |
__fget_files_rcu | files_struct | fdt | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L981 | false | false |
__fget_files_rcu | fdtable | fd | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L993 | true | true |
__fget_files_rcu | fdtable | max_fds | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L986 | true | true |
__fget_files_rcu | file | f_ref | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L1012 | false | false |
__fget_files_rcu | file | f_mode | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L1039 | true | true |
alloc_fd | files_struct | next_fd | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L583 | true | true |
alloc_fd | files_struct | next_fd | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L562 | true | true |
alloc_fd | files_struct | next_fd | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L561 | true | true |
alloc_fd | files_struct | next_fd | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L584 | false | false |
alloc_fd | files_struct | fdt | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L559 | true | true |
alloc_fd | files_struct | fdt | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L559 | false | false |
alloc_fd | fdtable | max_fds | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L575 | true | true |
alloc_fd | fdtable | max_fds | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L564 | true | true |
alloc_fd | files_struct | file_lock | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L590 | false | false |
alloc_fd | files_struct | file_lock | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L559 | false | false |
alloc_fd | files_struct | file_lock | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L557 | false | false |
alloc_fd | task_struct | files | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L552 | true | true |
sock_from_file | file | private_data | https://elixir.bootlin.com/linux/v6.14.7/source/net/socket.c#L520 | true | true |
sock_from_file | file | f_op | https://elixir.bootlin.com/linux/v6.14.7/source/net/socket.c#L519 | true | true |
put_unused_fd | files_struct | file_lock | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L618 | false | false |
put_unused_fd | files_struct | file_lock | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L616 | false | false |
put_unused_fd | task_struct | files | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L615 | true | true |
fd_install | files_struct | resize_in_progress | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L649 | true | true |
fd_install | files_struct | fdt | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L660 | true | true |
fd_install | files_struct | fdt | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L652 | true | true |
fd_install | files_struct | fdt | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L660 | false | false |
fd_install | files_struct | fdt | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L652 | false | false |
fd_install | fdtable | fd | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L662 | true | true |
fd_install | fdtable | fd | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L661 | true | true |
fd_install | fdtable | fd | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L653 | true | true |
fd_install | fdtable | fd | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L654 | true | true |
fd_install | files_struct | file_lock | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L655 | false | false |
fd_install | files_struct | file_lock | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L651 | false | false |
fd_install | files_struct | file_lock | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L652 | false | false |
fd_install | task_struct | files | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L641 | true | true |
fd_install | file | f_mode | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L644 | true | true |
__receive_sock | sock | sk_cgrp_data | https://elixir.bootlin.com/linux/v6.14.7/source/net/core/sock.c#L3458 | false | false |
__receive_sock | sock | sk_cgrp_data | https://elixir.bootlin.com/linux/v6.14.7/source/net/core/sock.c#L3457 | false | false |
__receive_sock | socket | sk | https://elixir.bootlin.com/linux/v6.14.7/source/net/core/sock.c#L3458 | true | true |
__receive_sock | socket | sk | https://elixir.bootlin.com/linux/v6.14.7/source/net/core/sock.c#L3457 | true | true |
fput | task_struct | flags | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file_table.c#L523 | true | true |
fput | (unnamed class/struct/union) | f_task_work | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file_table.c#L525 | false | false |
fput | (unnamed class/struct/union) | f_task_work | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file_table.c#L524 | false | false |
fput | (unnamed class/struct/union) | f_llist | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file_table.c#L534 | false | false |
fput | file | f_ref | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file_table.c#L516 | false | false |
fput | file | f_mode | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file_table.c#L519 | true | true |
task_work_add | callback_head | next | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/task_work.c#L72 | false | false |
task_work_add | task_struct | task_works | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/task_work.c#L68 | true | true |
task_work_add | task_struct | task_works | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/task_work.c#L73 | false | false |
task_work_add | task_struct | task_works | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/task_work.c#L68 | false | false |
__file_ref_put | (unnamed class/struct/union) | refcnt | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L86 | false | false |
__file_ref_put | (unnamed class/struct/union) | refcnt | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L76 | false | false |
__file_ref_put | (unnamed class/struct/union) | refcnt | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file.c#L59 | false | false |
file_ref_put | (unnamed class/struct/union) | refcnt | https://elixir.bootlin.com/linux/v6.14.7/source/include/linux/file_ref.h#L157 | false | false |
pidfd_pid | inode | i_private | https://elixir.bootlin.com/linux/v6.14.7/source/fs/pidfs.c#L450 | true | true |
pidfd_pid | file | f_op | https://elixir.bootlin.com/linux/v6.14.7/source/fs/pidfs.c#L448 | true | true |
pid_task | task_struct | pid_links | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/pid.c#L417 | false | false |
pid_task | hlist_head | first | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/pid.c#L414 | false | false |
pid_task | hlist_head | first | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/pid.c#L414 | false | false |
pid_task | hlist_head | first | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/pid.c#L414 | false | false |
pid_task | hlist_head | first | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/pid.c#L414 | false | false |
pid_task | hlist_head | first | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/pid.c#L414 | false | false |
pid_task | hlist_head | first | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/pid.c#L414 | false | false |
pid_task | hlist_head | first | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/pid.c#L414 | false | false |
pid_task | hlist_head | first | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/pid.c#L414 | false | false |
pid_task | hlist_head | first | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/pid.c#L414 | false | false |
pid_task | pid | tasks | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/pid.c#L414 | false | false |
security_ptrace_access_check | static_key_false | key | https://elixir.bootlin.com/linux/v6.14.7/source/security/security.c#L1062 | false | false |
security_file_free | static_key_false | key | https://elixir.bootlin.com/linux/v6.14.7/source/security/security.c#L2889 | false | false |
security_file_free | file | f_security | https://elixir.bootlin.com/linux/v6.14.7/source/security/security.c#L2891 | true | true |
security_file_free | file | f_security | https://elixir.bootlin.com/linux/v6.14.7/source/security/security.c#L2893 | false | false |
security_file_receive | static_key_false | key | https://elixir.bootlin.com/linux/v6.14.7/source/security/security.c#L3096 | false | false |
fd_empty | fd | word | https://elixir.bootlin.com/linux/v6.14.7/source/include/linux/file.h#L47 | true | true |
sock_cgroup_set_prioidx | sock_cgroup_data | prioidx | https://elixir.bootlin.com/linux/v6.14.7/source/include/linux/cgroup-defs.h#L883 | true | true |
sock_cgroup_set_prioidx | sock_cgroup_data | prioidx | https://elixir.bootlin.com/linux/v6.14.7/source/include/linux/cgroup-defs.h#L883 | false | false |
sock_cgroup_set_classid | sock_cgroup_data | classid | https://elixir.bootlin.com/linux/v6.14.7/source/include/linux/cgroup-defs.h#L891 | true | true |
sock_cgroup_set_classid | sock_cgroup_data | classid | https://elixir.bootlin.com/linux/v6.14.7/source/include/linux/cgroup-defs.h#L891 | false | false |
mntput | mount | mnt_expiry_mark | https://elixir.bootlin.com/linux/v6.14.7/source/fs/namespace.c#L1507 | true | true |
mntput | mount | mnt_expiry_mark | https://elixir.bootlin.com/linux/v6.14.7/source/fs/namespace.c#L1508 | true | true |
mntput | mount | mnt_expiry_mark | https://elixir.bootlin.com/linux/v6.14.7/source/fs/namespace.c#L1508 | false | false |
put_cred_many | cred | usage | https://elixir.bootlin.com/linux/v6.14.7/source/include/linux/cred.h#L249 | false | false |
path_put | path | mnt | https://elixir.bootlin.com/linux/v6.14.7/source/fs/namei.c#L626 | true | true |
path_put | path | dentry | https://elixir.bootlin.com/linux/v6.14.7/source/fs/namei.c#L625 | true | true |
dput | (unnamed class/struct/union) | lock | https://elixir.bootlin.com/linux/v6.14.7/source/fs/dcache.c#L895 | false | false |
dput | (unnamed class/struct/union) | lock | https://elixir.bootlin.com/linux/v6.14.7/source/fs/dcache.c#L889 | false | false |
dput | dentry | d_lockref | https://elixir.bootlin.com/linux/v6.14.7/source/fs/dcache.c#L895 | true | true |
dput | dentry | d_lockref | https://elixir.bootlin.com/linux/v6.14.7/source/fs/dcache.c#L889 | true | true |
backing_file_user_path | (unnamed class/struct/union) | user_path | https://elixir.bootlin.com/linux/v6.14.7/source/fs/file_table.c#L62 | false | false |
kick_process | (unnamed class/struct/union) | cpu_number | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/sched/core.c#L3473 | true | true |
kick_process | (unnamed class/struct/union) | cpu_number | https://elixir.bootlin.com/linux/v6.14.7/source/kernel/sched/core.c#L3473 | false | false |
file_ref_inc | (unnamed class/struct/union) | refcnt | https://elixir.bootlin.com/linux/v6.14.7/source/include/linux/file_ref.h#L120 | false | false |
get_file | file | f_ref | https://elixir.bootlin.com/linux/v6.14.7/source/include/linux/fs.h#L1143 | false | false |
file_inode | file | f_inode | https://elixir.bootlin.com/linux/v6.14.7/source/include/linux/fs.h#L1184 | true | true |
test_and_set_tsk_thread_flag | task_struct | thread_info | https://elixir.bootlin.com/linux/v6.14.7/source/include/linux/sched.h#L2032 | false | false |