plpks_remove_var(9)
π plpks_remove_var β the "yeet that variable out of PLPKS" kernel function
Okay bestie, so this is a page from the Kernel API Manual, and I'm gonna walk you through plpks_remove_var(9) like we're texting about it at 2am. It's giving "cleanup era" and honestly? Iconic. ποΈβ¨
β¨ NAME β¨
plpks_remove_var β Remove the specified variable and its data from PLPKS. That's it. That's the whole vibe. Bye-bye variable, bye-bye data, no notes. π«Ά
πΈ SYNOPSIS πΈ
int plpks_remove_var (char *component , u8 varos , struct plpks_var_name
vname );
π¦ ARGUMENTS π¦
componentβ the metadata prefix in the object label metadata structure. Basically the little name-tag prefix, iykyk. π·οΈvarosβ the metadata OS flags in the object label metadata structure. Flags, but make them OS-flavored. π©vnameβ the object label for the object that needs to be removed. Like, this is the actual thing we're evicting from the group chat. π
π DESCRIPTION π
So the H_PKS_REMOVE_OBJECT HCALL removes an object from the PLPKS. Periodt. And the removal is independent of the policy bits that are set β like, the policy bits don't even get a vote. It just goes. π
Now, possible reasons for the returned errno values, bestie β memorize these, fr fr:
-ENXIOβ if PLPKS is not supported. Rip, no PLPKS for you. π-EIOβ if PLPKS access is blocked due to the LPAR's state; if PLPKS modification is blocked due to the LPAR's state; if an error occurred while processing the request. Three-for-one error moment, lowkey messy. π-EINVALβ if invalid authorization parameter; if invalid object label parameter; if invalid object label len parameter. So many invalid params, not the vibe. π-EPERMβ if access is denied. Nope, not allowed, blocked, go away. π«-ENOENTβ if the requested object was not found. She's not here, hun. π»-EBUSYβ if unable to handle the request. Busy girl, can't come to the phone rn. π
π₯ RETURN π₯
On success 0 is returned, a negative errno if not. That's the whole tea. Zero means slay, negative means something's off. β¨
π SEE ALSO π
Kernel file ./arch/powerpc/platforms/pseries/plpks.c β go read the source, it's giving main character energy. π
And the whole plpks fam, no cap:
plpks_get_version(9), plpks_get_objoverhead(9), plpks_get_maxpwsize(9), plpks_get_maxobjectsize(9), plpks_get_maxobjectlabelsize(9), plpks_get_totalsize(9), plpks_get_usedspace(9), plpks_get_supportedpolicies(9), plpks_get_maxlargeobjectsize(9), plpks_get_signedupdatealgorithms(9), plpks_get_wrappingfeatures(9), plpks_get_passwordlen(9), plpks_is_available(9), plpks_signed_update_var(9), plpks_write_var(9), plpks_wrapping_is_supported(9), plpks_gen_wrapping_key(9), plpks_wrap_object(9), plpks_unwrap_object(9), plpks_read_os_var(9), plpks_read_fw_var(9), plpks_read_bootloader_var(9), plpks_populate_fdt(9), plpks_early_init_devtree(9)
And that's the page, bestie! This little gem lives under ./arch/powerpc/platforms/pseries, dated October 2026, and it's part of the Kernel API Manual β so yeah, it's official, it's iconic, and now you know it. Mwah! πππ¦
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms