aa_update_label_name(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

🌸 aa_update_label_name(9) 🌸

okay so bestie, welcome to the Kernel API Manual β€” yes, the whole kernel API manual, and this little icon right here is aa_update_label_name, and her whole job is literally just giving a label a stored name. that's it. that's the gig. πŸ’…


✨ NAME ✨

aa_update_label_name β€” update a label to have a stored name πŸŽ€


✨ SYNOPSIS ✨

bool aa_update_label_name (struct aa_ns *ns , struct aa_label *label ,
gfp_t gfp );

like, look at her. three args, returns a bool, no notes. πŸ‘‘


✨ ARGUMENTS ✨

  • ns β€” the ns you're viewing from. and listen, this one is NOT NULL, okay? do not come in here with a null ns, i'm begging. 🫢
  • label β€” the label you're updating. also NOT NULL, same energy, no nulls allowed, we are not doing that today. πŸ¦‹
  • gfp β€” the type of memory allocation. yes ma'am, we're allocating, pick your flag. ✨

✨ DESCRIPTION ✨

okay so the requirement here is so important, and honestly it's giving main character rules energy:

Requires: labels_set(label) not locked in caller

literally do not hold that lock, bestie. that's the whole vibe. the function handles its business and you show up with your hands clean and your lock unheld. πŸ”₯


✨ NOTE ✨

the actual behaviour, and this is the part you gotta internalize:

  • it only updates the label name if it does not have a name already
  • and it only does it if the label is in the labelset

so like… no name yet and in the labelset = we go. anything else = we don't. no cap. πŸ’€


✨ SEE ALSO ✨

okay this list is genuinely iconic, she's connected to everyone, kernel file ./security/apparmor/label.c and the whole friend group:

ns_cmp(9), profile_cmp(9), vec_cmp(9), aa_vec_unique(9), aa_label_alloc(9), label_cmp(9), __aa_label_next_not_in_set(9), aa_label_is_subset(9), aa_label_is_unconfined_subset(9), __label_remove(9), __label_replace(9), __label_insert(9), __vec_find(9), __label_find(9), aa_label_remove(9), aa_label_replace(9), vec_find(9), aa_label_insert(9), aa_label_next_in_merge(9), label_merge_cmp(9), label_merge_insert(9), labelset_of_merge(9), __label_find_merge(9), aa_label_find_merge(9), aa_label_merge(9), label_compound_match(9), label_components_match(9), aa_label_match(9), aa_profile_snxprint(9), aa_label_snxprint(9), aa_label_asxprint(9), aa_label_acntsxprint(9), aa_label_strn_parse(9), aa_labelset_destroy(9), __label_update(9), __labelset_update(9), __aa_labelset_update_subtree(9)

like, thirty-plus besties. she's not a stranger, she's known. 🌈


and that's the page! πŸŽ€ this one came from the kernel source at ./security/apparmor, dated October 2026, and it's filed under aa_update_label_name(9) β€” mwah, go read the friends next, they all ate. πŸ’–πŸ§š

πŸ“¦ where this page comes from