函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\cgroup\cpuset.c Create Date:2022-07-27 12:19:52
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:hotplug_update_tasks_legacy

函数原型:static void hotplug_update_tasks_legacy(struct cpuset *cs, struct cpumask *new_cpus, nodemask_t *new_mems, bool cpus_updated, bool mems_updated)

返回类型:void

参数:

类型参数名称
struct cpuset *cs
struct cpumask *new_cpus
nodemask_t *new_mems
boolcpus_updated
boolmems_updated
2946  spin_lock_irq( & callback_lock)
2947  pumask_copy - *dstp = *srcp*@dstp: the result*@srcp: the input cpumask
2948  pumask_copy - *dstp = *srcp*@dstp: the result*@srcp: the input cpumask
2949  mems_allowed等于new_mems
2950  effective_mems等于new_mems
2951  spin_unlock_irq( & callback_lock)
2957  如果cpus_updated且非pumask_empty - *srcp == 0*@srcp: the cpumask to that all cpus < nr_cpu_ids are clear.pdate_tasks_cpumask - Update the cpumasks of tasks in the cpuset.*@cs: the cpuset in which each task's cpus_allowed mask needs to be changed* Iterate through each task of @cs updating its cpus_allowed to the* effective cpuset's
2959  如果mems_updated且非nodes_empty(mems_allowed)则pdate_tasks_nodemask - Update the nodemasks of tasks in the cpuset.*@cs: the cpuset in which each task's mems_allowed mask needs to be changed* Iterate through each task of @cs updating its mems_allowed to the* effective cpuset's
2962  is_empty等于pumask_empty - *srcp == 0*@srcp: the cpumask to that all cpus < nr_cpu_ids are clear.nodes_empty(mems_allowed)
2965  percpu_up_write( & cpuset_rwsem)
2972  如果is_emptyIf CPU and/or memory hotplug handlers, below, unplug any CPUs* or memory nodes, we need to walk over the cpuset hierarchy,* removing that CPU or node from all cpusets. If this removes the* last CPU or node from a cpuset, then move the tasks in the empty
2975  percpu_down_write( & cpuset_rwsem)
调用者
名称描述
cpuset_hotplug_update_taskspuset_hotplug_update_tasks - update tasks in a cpuset for hotunplug*@cs: cpuset in interest*@tmp: the tmpmasks structure pointer* Compare @cs's cpu and mem masks against top_cpuset and if some have gone* offline, update @cs accordingly