函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:propagate_exception - propagates a new exception to the children*@devcg_root: device cgroup that added a new exception*@ex: new exception to be propagated* returns: 0 in case of success, != 0 in case of error

函数原型:static int propagate_exception(struct dev_cgroup *devcg_root, struct dev_exception_item *ex)

返回类型:int

参数:

类型参数名称
struct dev_cgroup *devcg_root
struct dev_exception_item *ex
537  rc等于0
539  _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
542  devcg等于css_to_devcgroup(pos)
550  如果pos恒等于css或非is_devcg_online(devcg)则继续下一循环
553  _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()
559  如果behavior恒等于DEVCG_DEFAULT_ALLOWbehavior恒等于DEVCG_DEFAULT_ALLOW
561  rc等于alled under devcgroup_mutex
562  如果rc则返回:rc
564  否则
571  alled under devcgroup_mutex
573  validate_active_exceptions - walks through the active exception list and* revalidates the exceptions based on parent's* behavior and exceptions
575  _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
578  _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()
579  返回:rc
调用者
名称描述
devcgroup_update_accessModify the exception list using allow/deny rules