函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:__label_remove - remove @label from the label set*@l: label to remove*@new: label to redirect to* Requires: labels_set(@label)->lock write_lock* Returns: true if the label was in the tree and removed

函数原型:static bool __label_remove(struct aa_label *label, struct aa_label *new)

返回类型:bool

参数:

类型参数名称
struct aa_label *label
struct aa_label *new
565  ls等于labels_set(label)
567  AA_BUG(!ls)
568  AA_BUG(!label)
569  lockdep_assert_held_write( & lock)
571  如果newquires profile list write lock held
574  如果非label_is_stale(label)则__label_make_stale(label)
577  如果flags按位与 label is in tree
578  rb_erase( & node, & root)
579  flags与等于 label is in tree 的反
580  返回:true
583  返回:false
调用者
名称描述
aa_label_removeaa_label_remove - remove a label from the labelset*@label: label to remove* Returns: true if @label was removed from the tree* else @label was not in tree so it could not be removed
aa_label_replaceaa_label_replace - replace a label @old with a new version @new*@old: label to replace*@new: label replacing @old* Returns: true if @old was in tree and replaced* else @old was not in tree, and @new was not inserted
aa_labelset_destroyaa_labelset_destroy - remove all labels from the label set*@ls: label set to cleanup (NOT NULL)* Labels that are removed from the set may still exist beyond the set* being destroyed depending on their reference counting
__label_update__label_update - insert updated version of @label into labelset*@label - the label to update/replace* Returns: new label that is up to date* else NULL on failure* Requires: @ns lock be held* Note: worst case is the stale @label does not get updated and has