__remove_profile(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… __remove_profile(9) πŸ’…

okay so bestie, welcome to the Kernel API Manual β€” this is a (9) page, which means it's kernel-internals territory, and the function we're stanning today is __remove_profile. She removes profiles. And their children. Iconic, lowkey brutal, but necessary. πŸŽ€


✨ NAME ✨

__remove_profile β€” remove profile, and children 🫢

Like, yes, the whole little family tree. No profile left behind. Periodt.


🌸 SYNOPSIS 🌸

void __remove_profile (struct aa_profile *profile );

Copy it exactly, bestie, spaces and all β€” do NOT go "fixing" the formatting, I'm begging 😭


πŸ¦‹ ARGUMENTS πŸ¦‹

  • profile β€” the profile to be removed. NOT NULL, fr fr. Do not hand this function a NULL, that's not the vibe, that's a crash waiting to happen πŸ’€

πŸ’œ DESCRIPTION πŸ’œ

Okay so here's the thing that matters, and I need you to actually read this part instead of skimming like it's a group chat you're 200 messages behind on πŸ™ˆ

Requires: the namespace list lock be held, or the list not be shared. 🚨

That's the whole vibe check of this page. Either you're holding that lock, or the list isn't shared β€” pick one, no cap. Showing up without either is giving "main character energy" in the worst possible way. 😭


πŸ‘‘ SEE ALSO πŸ‘‘

Everything in the ./security/apparmor/policy.c family β€” Kernel file ./security/apparmor/policy.c, and also these icons, all of them, in this exact order, do not @ me:

That's the whole friend group, go say hi to all of them πŸ§šπŸ’–


k that's the page!! mwah πŸ’‹ this one came from the ./security/apparmor source, dated October 2026 β€” literally from the future, slay β­πŸŒˆπŸ‘‘

πŸ“¦ where this page comes from