Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

Name:css_release_work_fn

Proto:static void css_release_work_fn(struct work_struct *work)

Type:void

Parameter:

TypeParameterName
struct work_struct *work
4949  css = container_of - cast a member of a structure out to the containing structure*@ptr: the pointer to the member.*@type: the type of the container struct this is embedded in.*@member: the name of the member within the struct.(work, structcgroup_subsys_state, destroy_work)
4951  ss = PI: the cgroup subsystem that this css is attached to
4952  cgrp = PI: the cgroup that this css is attached to
4954  mutex_lock( & cgroup_mutex is the master lock)
4956  flags |= CSS_RELEASED
4957  list_del_rcu - deletes entry from list without re-initialization*@entry: the element to delete from the list
4959  If ss Then
4966  cgroup_idr_replace( & idr for css->id , NULL, PI: Subsys-unique ID. 0 is unused and root is always 1. The* matching css can be looked up using css_from_id().)
4967  If css_released Then css_released(css)
4969  Else
4973  cgroup_path() takes a spin lock(release, cgrp)
4975  If group_on_dfl - test whether a cgroup is on the default hierarchy*@cgrp: the cgroup of interest* The default hierarchy is the v2 interface of cgroup and this function* can be used to test whether a cgroup is on the default hierarchy for* cases where a Then cgroup_rstat_flush(cgrp)
4978  spin_lock_irq( & css_set_lock)
4979  When tcgrp cycle nr_dying_descendants--
4982  spin_unlock_irq( & css_set_lock)
4991  If cgroup kernfs entry Then RCU_INIT_POINTER() - initialize an RCU protected pointer*@p: The pointer to be initialized.*@v: The value to initialized the pointer to.* Initialize an RCU-protected pointer in special cases where readers( * (void__rcu__force * * ) & priv, NULL)
4996  mutex_unlock - release the mutex*@lock: the mutex to be released* Unlock a mutex that has been locked by this task previously.* This function must not be used in interrupt context. Unlocking* of a not locked mutex is not allowed.
4998  INIT_RCU_WORK( & destroy_rwork, ss destruction is four-stage process)
4999  queue_rcu_work - queue work after a RCU grace period*@wq: workqueue to use*@rwork: work to queue* Return: %false if @rwork was already pending, %true otherwise