Lines Matching full:ls

597 	struct aa_labelset *ls = labels_set(label);  in __label_remove()  local
599 AA_BUG(!ls); in __label_remove()
601 lockdep_assert_held_write(&ls->lock); in __label_remove()
610 rb_erase(&label->node, &ls->root); in __label_remove()
633 struct aa_labelset *ls = labels_set(old); in __label_replace() local
635 AA_BUG(!ls); in __label_replace()
638 lockdep_assert_held_write(&ls->lock); in __label_replace()
645 rb_replace_node(&old->node, &new->node, &ls->root); in __label_replace()
656 * @ls: set of labels to insert @l into (NOT NULL)
660 * Requires: @ls->lock
667 static struct aa_label *__label_insert(struct aa_labelset *ls, in __label_insert() argument
672 AA_BUG(!ls); in __label_insert()
674 AA_BUG(labels_set(label) != ls); in __label_insert()
675 lockdep_assert_held_write(&ls->lock); in __label_insert()
679 new = &ls->root.rb_node; in __label_insert()
706 rb_insert_color(&label->node, &ls->root); in __label_insert()
776 struct aa_labelset *ls = labels_set(label); in aa_label_remove() local
780 AA_BUG(!ls); in aa_label_remove()
782 write_lock_irqsave(&ls->lock, flags); in aa_label_remove()
784 write_unlock_irqrestore(&ls->lock, flags); in aa_label_remove()
812 struct aa_labelset *ls = labels_set(old); in aa_label_replace() local
814 write_lock_irqsave(&ls->lock, flags); in aa_label_replace()
817 write_unlock_irqrestore(&ls->lock, flags); in aa_label_replace()
818 ls = labels_set(new); in aa_label_replace()
819 write_lock_irqsave(&ls->lock, flags); in aa_label_replace()
821 l = __label_insert(ls, new, true); in aa_label_replace()
823 write_unlock_irqrestore(&ls->lock, flags); in aa_label_replace()
840 struct aa_labelset *ls; in vec_find() local
848 ls = vec_labelset(vec, n); in vec_find()
849 read_lock_irqsave(&ls->lock, flags); in vec_find()
851 read_unlock_irqrestore(&ls->lock, flags); in vec_find()
861 struct aa_labelset *ls; in vec_create_and_insert_label() local
871 ls = labels_set(&vec[len - 1]->label); in vec_create_and_insert_label()
883 write_lock_irqsave(&ls->lock, flags); in vec_create_and_insert_label()
884 label = __label_insert(ls, new, false); in vec_create_and_insert_label()
885 write_unlock_irqrestore(&ls->lock, flags); in vec_create_and_insert_label()
904 * aa_label_insert - insert label @label into @ls or return existing label
905 * @ls: labelset to insert @label into
913 struct aa_label *aa_label_insert(struct aa_labelset *ls, struct aa_label *label) in aa_label_insert() argument
918 AA_BUG(!ls); in aa_label_insert()
923 read_lock_irqsave(&ls->lock, flags); in aa_label_insert()
925 read_unlock_irqrestore(&ls->lock, flags); in aa_label_insert()
930 write_lock_irqsave(&ls->lock, flags); in aa_label_insert()
931 l = __label_insert(ls, label, false); in aa_label_insert()
932 write_unlock_irqrestore(&ls->lock, flags); in aa_label_insert()
1039 struct aa_labelset *ls; in label_merge_insert() local
1089 ls = labels_set(new); in label_merge_insert()
1090 write_lock_irqsave(&ls->lock, flags); in label_merge_insert()
1092 write_unlock_irqrestore(&ls->lock, flags); in label_merge_insert()
1117 * @ls: set of labels to search (NOT NULL)
1121 * Requires: ls->lock read_lock held
1126 static struct aa_label *__label_find_merge(struct aa_labelset *ls, in __label_find_merge() argument
1132 AA_BUG(!ls); in __label_find_merge()
1139 node = ls->root.rb_node; in __label_find_merge()
1169 struct aa_labelset *ls; in aa_label_find_merge() local
1180 ls = labelset_of_merge(a, b); in aa_label_find_merge()
1181 read_lock_irqsave(&ls->lock, flags); in aa_label_find_merge()
1182 label = __label_find_merge(ls, a, b); in aa_label_find_merge()
1183 read_unlock_irqrestore(&ls->lock, flags); in aa_label_find_merge()
1431 struct aa_labelset *ls; in aa_update_label_name() local
1445 ls = labels_set(label); in aa_update_label_name()
1446 write_lock_irqsave(&ls->lock, flags); in aa_update_label_name()
1452 write_unlock_irqrestore(&ls->lock, flags); in aa_update_label_name()
1945 * @ls: label set to cleanup (NOT NULL)
1950 void aa_labelset_destroy(struct aa_labelset *ls) in aa_labelset_destroy() argument
1955 AA_BUG(!ls); in aa_labelset_destroy()
1957 write_lock_irqsave(&ls->lock, flags); in aa_labelset_destroy()
1958 for (node = rb_first(&ls->root); node; node = rb_first(&ls->root)) { in aa_labelset_destroy()
1967 write_unlock_irqrestore(&ls->lock, flags); in aa_labelset_destroy()
1971 * @ls: labelset to init (NOT NULL)
1973 void aa_labelset_init(struct aa_labelset *ls) in aa_labelset_init() argument
1975 AA_BUG(!ls); in aa_labelset_init()
1977 rwlock_init(&ls->lock); in aa_labelset_init()
1978 ls->root = RB_ROOT; in aa_labelset_init()
1981 static struct aa_label *labelset_next_stale(struct aa_labelset *ls) in labelset_next_stale() argument
1987 AA_BUG(!ls); in labelset_next_stale()
1989 read_lock_irqsave(&ls->lock, flags); in labelset_next_stale()
1991 __labelset_for_each(ls, node) { in labelset_next_stale()
2002 read_unlock_irqrestore(&ls->lock, flags); in labelset_next_stale()
2022 struct aa_labelset *ls; in __label_update() local
2037 ls = labels_set(label); in __label_update()
2038 write_lock_irqsave(&ls->lock, flags); in __label_update()
2060 write_unlock_irqrestore(&ls->lock, flags); in __label_update()
2062 write_lock_irqsave(&ls->lock, flags); in __label_update()
2072 write_unlock_irqrestore(&ls->lock, flags); in __label_update()