Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\cgroup\cpuset.c Create Date:2022-07-28 11:17:18
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:cpuset_css_online

Proto:static int cpuset_css_online(struct cgroup_subsys_state *css)

Type:int

Parameter:

TypeParameterName
struct cgroup_subsys_state *css
2724  cs = css_cs(css)
2725  parent = parent_cs(cs)
2729  If Not parent Then Return 0
2732  get_online_cpus()
2733  percpu_down_write( & cpuset_rwsem)
2735  Atomically set a bit in memory
2736  If is_spread_page(parent) Then Atomically set a bit in memory
2738  If is_spread_slab(parent) Then Atomically set a bit in memory
2741  cpuset_inc()
2743  spin_lock_irq( & callback_lock)
2744  If Cgroup v2 behavior is used when on default hierarchy or the* cgroup_v2_mode flag is set. Then
2745  pumask_copy - *dstp = *srcp*@dstp: the result*@srcp: the input cpumask
2746  effective_mems = effective_mems
2747  * Default hierarchy only: * use_parent_ecpus - set if using parent's effective_cpus * child_ecpus_count - # of children with use_parent_ecpus set = true
2748  child_ecpus_count++
2750  spin_unlock_irq( & callback_lock)
2752  If Not st_bit - Determine whether a bit is set*@nr: bit number to test*@addr: Address to start counting from Then Go to out_unlock
2768  _read_lock() - mark the beginning of an RCU read-side critical section* When synchronize_rcu() is invoked on one CPU while other CPUs* are within RCU read-side critical sections, then the* synchronize_rcu() is guaranteed to block until after all the other
2769  cpuset_for_each_child - traverse online children of a cpuset*@child_cs: loop cursor pointing to the current child*@pos_css: used for iteration*@parent_cs: target cpuset to walk children of* Walk @child_cs through the online children of @parent_cs(tmp_cs, pos_css, parent)
2772  Go to out_unlock
2775  _read_unlock() - marks the end of an RCU read-side critical section.* In most situations, rcu_read_unlock() is immune from deadlock.* However, in kernels built with CONFIG_RCU_BOOST, rcu_read_unlock()
2777  spin_lock_irq( & callback_lock)
2778  mems_allowed = mems_allowed
2779  effective_mems = mems_allowed
2780  pumask_copy - *dstp = *srcp*@dstp: the result*@srcp: the input cpumask
2781  pumask_copy - *dstp = *srcp*@dstp: the result*@srcp: the input cpumask
2782  spin_unlock_irq( & callback_lock)
2783  out_unlock :
2784  percpu_up_write( & cpuset_rwsem)
2785  put_online_cpus()
2786  Return 0