函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:include\linux\sched\task.h Create Date:2022-07-27 06:41:15
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:put_task_struct

函数原型:static inline void put_task_struct(struct task_struct *t)

返回类型:void

参数:

类型参数名称
struct task_struct *t
121  如果_dec_and_test - decrement a refcount and test if it is 0*@r: the refcount* Similar to atomic_dec_and_test(), it will WARN on underflow and fail to* decrement when saturated at REFCOUNT_SATURATED__put_task_struct(t)
调用者
名称描述
rdtgroup_move_task
wait_for_vfork_done
delayed_put_task_struct
mm_update_next_ownerA task is exiting. If it owned this mm, find a new owner for the mm.
wait_task_zombieHandle sys_wait4 work for one task in state EXIT_ZOMBIE. We hold* read_lock(&tasklist_lock) on entry. If we return zero, we still hold* the lock and this task is uninteresting. If we return nonzero, we have
wait_task_stoppedwait_task_stopped - Wait for %TASK_STOPPED or %TASK_TRACED*@wo: wait options*@ptrace: is the wait for ptrace*@p: task to wait for* Handle sys_wait4() work for %p in state %TASK_STOPPED or %TASK_TRACED
wait_task_continuedHandle do_wait work for one task in a live, non-stopped state.* read_lock(&tasklist_lock) on entry. If we return zero, we still hold* the lock and this task is uninteresting. If we return nonzero, we have
SYSCALL_DEFINE4
COMPAT_SYSCALL_DEFINE4
SYSCALL_DEFINE4
kthread_stop结束线程的运行
smpboot_destroy_threads
wake_q_add_safewake_q_add_safe() - safely queue a wakeup for 'later' waking
wake_up_q
do_sched_setscheduler
SYSCALL_DEFINE3sys_sched_setattr - same as above, but with extended sched_attr*@pid: the pid in question.*@uattr: structure containing the extended parameters.*@flags: for future extension.
sched_setaffinity
dl_change_utilization
task_contending
dl_task_timerThis is the bandwidth enforcement timer callback
inactive_task_timer
switched_to_dlWhen switching to -deadline, we may overload the rq, then* we try to push someone off, if possible.
rt_mutex_adjust_prio_chainAdjust the priority chain
__setup_irq注册中断
__free_irqInternal function to unregister an irqaction - used to free* regular and special interrupts that are part of the architecture.
SYSCALL_DEFINE5
posix_cpu_clock_get
posix_cpu_timer_delClean up a CPU-clock timer that is about to be destroyed.* This is called from timer deletion with the timer already locked.* If we return TIMER_RETRY, it's necessary to release the timer's lock* and try again
wait_for_owner_exitingwait_for_owner_exiting - Block until the owner has exited*@ret: owner's current futex lock status*@exiting: Pointer to the exiting task* Caller must hold a refcount on @exiting.
attach_to_pi_ownerLookup the task for the TID provided from user space and attach to* it after doing proper sanity checks.
cgroup_procs_write_finish
css_task_iter_nextss_task_iter_next - return the next task for the iterator*@it: the task iterator being iterated* The "next" function for task iteration. @it should have been* initialized via css_task_iter_start(). Returns NULL when the iteration* reaches the end.
css_task_iter_endss_task_iter_end - finish task iteration*@it: the task iterator to finish* Finish task iteration started by css_task_iter_start().
cgroup_transfer_tasksgroup_trasnsfer_tasks - move tasks from one cgroup to another*@to: cgroup to which the tasks will be moved*@from: cgroup in which the tasks currently reside* Locking rules between cgroup_post_fork() and the migration path* guarantee that, if a task is
rcu_lock_breakTo avoid extending the RCU grace period for an unbounded amount of time,* periodically exit the critical section and enter a new one.* For preemptible RCU it is sufficient to call rcu_read_unlock in order* to exit the grace period
fill_stats_for_pid
__wakeup_reset
bpf_task_fd_query
put_ctx
_free_event
perf_remove_from_ownerRemove user event from the owner task.
perf_event_allocAllocate and initialize an event structure
perf_event_exit_task_context
perf_event_free_taskFree a context as created by inheritance by perf_event_init_task() below,* used by fork() in case of fail.* Even though the task has never lived, the context and events have been* exposed through the child_list, so we must take care tearing it all down.
oom_evaluate_task
oom_reap_task
__oom_kill_process
oom_kill_process
process_vm_rw_coreprocess_vm_rw_core - core of reading/writing pages from task specified*@pid: PID of process to read/write from/to*@iter: where to copy to/from locally*@rvec: iovec array specifying where to copy to/from in the other process*@riovcnt: size of rvec
end_swap_bio_read
kernel_migrate_pages
kernel_move_pagesMove a list of pages in the address space of the currently executing* process.
kill_procsKill the processes that have been collected earlier.* Only do anything when DOIT is set, otherwise just free the list* (this is used for clean pages which do not need killing)* Also when FAIL is set do a force kill because something went* wrong earlier.
__report_access
report_accessdefers execution because cmdline access can sleep
yama_task_prctlyama_task_prctl - check for Yama-specific prctl operations*@option: operation*@arg2: argument*@arg3: argument*@arg4: argument*@arg5: argument* Return 0 on success, -ve on error. -ENOSYS is returned when Yama* does not handle the given option.
mounts_open_common