plpks_remove_var(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… 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