| Function report | 
| Source Code: security\apparmor\label.c | Create Date:2022-07-28 19:54:27 | 
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick | 
| home page | Tree | 
| Annotation kernel can get tool activity | Download SCCT | Chinese | 
Name:__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
Proto:static struct aa_label *__label_update(struct aa_label *label)
Type:struct aa_label
Parameter:
| Type | Parameter | Name | 
|---|---|---|
| struct aa_label * | label | 
| 2026 | invcount = 0 | 
| 2029 | AA_BUG(!mutex_is_locked( & lock)) | 
| 2032 | If Not new Then Return NULL | 
| 2039 | ls = labels_set(label) | 
| 2040 | write_lock_irqsave( & lock, flags) | 
| 2052 | If invcount Then | 
| 2056 | If size == 1 Then | 
| 2061 | If labels_set(label) != labels_set(new) Then | 
| 2062 | write_unlock_irqrestore( & lock, flags) | 
| 2064 | write_lock_irqsave( & lock, flags) | 
| 2065 | Go to remove | 
| 2071 | remove : | 
| 2074 | write_unlock_irqrestore( & lock, flags) | 
| 2075 | label_free_or_put_new(tmp, new) | 
| 2077 | Return tmp | 
| Name | Describe | 
|---|---|
| __labelset_update | __labelset_update - update labels in @ns*@ns: namespace to update labels in (NOT NULL)* Requires: @ns lock be held* Walk the labelset ensuring that all labels are up to date and valid* Any label that has a stale component is marked stale and replaced and | 
| Source code conversion tool public plug-in interface | X | 
|---|---|
| Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |