函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:quires sort and merge done first

函数原型:static struct aa_label *vec_create_and_insert_label(struct aa_profile **vec, int len, gfp_t gfp)

返回类型:struct aa_label

参数:

类型参数名称
struct aa_profile **vec
intlen
gfp_tgfp
828  struct aa_label * label = NULL
834  AA_BUG(!vec)
836  如果len恒等于1则返回:aa_get_label( & label)
839  ls等于labels_set( & label)
844  new等于aa_label_alloc - allocate a label with a profile vector of @size length*@size: size of profile vector in the label*@proxy: proxy to use OR null if to allocate a new one*@gfp: memory allocation type* Returns: new label* else NULL if failed
845  如果非new则返回:NULL
848 i小于len循环vec[i]等于aa_get_profile - increment refcount on profile @p*@p: profile (MAYBE NULL)* Returns: pointer to @p if @p is NULL will return NULL* Requires: @p must be held with valid refcount when called
851  write_lock_irqsave( & lock, flags)
852  label等于__label_insert - attempt to insert @l into a label set*@ls: set of labels to insert @l into (NOT NULL)*@label: new label to insert (NOT NULL)*@replace: whether insertion should replace existing entry that is not stale* Requires: @ls->lock* caller to hold
853  write_unlock_irqrestore( & lock, flags)
854  label_free_or_put_new(label, new)
856  返回:label
调用者
名称描述
aa_vec_find_or_create_label