papr_phy_at...reate_handle(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… papr_phy_attest_create_handle β€” the Kernel API Manual, but make it make sense πŸŽ€

okay so bestie, we're in the Kernel API Manual, and today's main character is papr_phy_attest_create_handle. no cap, this one's a lil niche but it eats.

✨ NAME ✨

papr_phy_attest_create_handle β€” creates a fd-based handle so you can read the response for a given attestation command πŸ¦‹

🌸 SYNOPSIS 🌸

long papr_phy_attest_create_handle (struct papr_phy_attest_io_block
__user *ulc );

πŸ’– ARGUMENTS πŸ’–

  • ulc β€” the attestation command, living in user memory 🫢. it literally defines the scope of data for the attestation command to retrieve. that's its whole job.

πŸ‘‘ DESCRIPTION πŸ‘‘

so this is the handler for the PAPR_PHYSICAL_ATTESTATION_IOC_CREATE_HANDLE ioctl command. iconic behavior only.

it validates ulc and instantiates an immutable response "blob" for the attestation command ✨. that blob gets attached to a file descriptor for reading by user space, and the memory backing the blob is freed when the file is released. clean. no leaks. we love to see it πŸ’…

and here's the part where it gets highkey smart: the entire requested response buffer for the attestation command retrieved by this call β€” plus all the necessary RTAS interactions β€” is performed before returning the fd to user space 🫑. this keeps the read handler simple, and it ensures the kernel can prevent interleaving ibm,physical-attestation call sequences. like, no interleaving. not on her watch. periodt.

πŸ”₯ RETURN πŸ”₯

the installed fd number if it slays (successful), or -ve errno otherwise 😭

🌈 SEE ALSO 🌈


and that's the whole vibe check πŸ§šπŸ’œ this one lives in ./arch/powerpc/platforms/pseries, dated October 2026 β€” see u at the next papr_phy_at...reate_handle(9) reading, bestie πŸ“β­

πŸ“¦ where this page comes from