Lines Matching refs:new
954 if (ent->new == profile) in __list_lookup_parent()
956 if (strncmp(ent->new->base.hname, profile->base.hname, len) == in __list_lookup_parent()
957 0 && ent->new->base.hname[len] == 0) in __list_lookup_parent()
958 return ent->new; in __list_lookup_parent()
977 static void __replace_profile(struct aa_profile *old, struct aa_profile *new, in __replace_profile() argument
990 p = __find_child(&new->base.profiles, child->base.name); in __replace_profile()
1001 rcu_assign_pointer(child->parent, aa_get_profile(new)); in __replace_profile()
1002 list_add_rcu(&child->base.list, &new->base.profiles); in __replace_profile()
1007 if (!rcu_access_pointer(new->parent)) { in __replace_profile()
1009 rcu_assign_pointer(new->parent, aa_get_profile(parent)); in __replace_profile()
1011 __aa_update_replacedby(old, new); in __replace_profile()
1013 aa_put_replacedby(new->replacedby); in __replace_profile()
1014 new->replacedby = aa_get_replacedby(old->replacedby); in __replace_profile()
1015 } else if (!rcu_access_pointer(new->replacedby->profile)) in __replace_profile()
1017 rcu_assign_pointer(new->replacedby->profile, in __replace_profile()
1018 aa_get_profile(new)); in __replace_profile()
1019 __aa_fs_profile_migrate_dents(old, new); in __replace_profile()
1021 if (list_empty(&new->base.list)) { in __replace_profile()
1023 list_replace_rcu(&old->base.list, &new->base.list); in __replace_profile()
1024 aa_get_profile(new); in __replace_profile()
1096 name = ent->new->base.hname; in aa_replace_profiles()
1097 error = __lookup_replace(ns, ent->new->base.hname, noreplace, in aa_replace_profiles()
1102 if (ent->new->rename) { in aa_replace_profiles()
1103 error = __lookup_replace(ns, ent->new->rename, in aa_replace_profiles()
1111 ent->new->ns = aa_get_namespace(ns); in aa_replace_profiles()
1117 policy = __lookup_parent(ns, ent->new->base.hname); in aa_replace_profiles()
1120 p = __list_lookup_parent(&lh, ent->new); in aa_replace_profiles()
1124 name = ent->new->base.hname; in aa_replace_profiles()
1127 rcu_assign_pointer(ent->new->parent, aa_get_profile(p)); in aa_replace_profiles()
1131 rcu_assign_pointer(ent->new->parent, aa_get_profile(p)); in aa_replace_profiles()
1146 if (rcu_access_pointer(ent->new->parent)) { in aa_replace_profiles()
1148 p = aa_deref_parent(ent->new); in aa_replace_profiles()
1151 parent = ns_subprofs_dir(ent->new->ns); in aa_replace_profiles()
1152 error = __aa_fs_profile_mkdir(ent->new, parent); in aa_replace_profiles()
1166 audit_policy(op, GFP_ATOMIC, ent->new->base.name, NULL, error); in aa_replace_profiles()
1169 __replace_profile(ent->old, ent->new, 1); in aa_replace_profiles()
1172 struct aa_replacedby *r = ent->new->replacedby; in aa_replace_profiles()
1174 aa_get_profile(ent->new)); in aa_replace_profiles()
1175 __replace_profile(ent->rename, ent->new, 0); in aa_replace_profiles()
1179 rcu_assign_pointer(ent->new->replacedby->profile, in aa_replace_profiles()
1180 aa_get_profile(ent->new)); in aa_replace_profiles()
1181 __replace_profile(ent->rename, ent->new, 0); in aa_replace_profiles()
1182 } else if (ent->new->parent) { in aa_replace_profiles()
1184 parent = aa_deref_parent(ent->new); in aa_replace_profiles()
1191 rcu_assign_pointer(ent->new->parent, newest); in aa_replace_profiles()
1195 rcu_assign_pointer(ent->new->replacedby->profile, in aa_replace_profiles()
1196 aa_get_profile(ent->new)); in aa_replace_profiles()
1197 __list_add_profile(&parent->base.profiles, ent->new); in aa_replace_profiles()
1200 rcu_assign_pointer(ent->new->replacedby->profile, in aa_replace_profiles()
1201 aa_get_profile(ent->new)); in aa_replace_profiles()
1202 __list_add_profile(&ns->base.profiles, ent->new); in aa_replace_profiles()