PAPR_SYSPARM_IOC_GET(9)
β¨ PAPR_SYSPARM_IOC_GET β¨
kernel api manual, but make it bestie-friendly π β yes we're reading a section 9 page together, hold my iced coffee π§
π NAME π
PAPR_SYSPARM_IOC_GET β the ioctl that goes and fetches the value of a PAPR system parameter for you. that's it, that's the whole vibe π¦
πΈ SYNOPSIS πΈ
PAPR_SYSPARM_IOC_GET
literally just the one thing, no arguments to memorize, we love a low-maintenance icon π
π¦ DESCRIPTION π¦
okay so first thing you're gonna notice: this bad boy uses _IOWR and you might be like "girl why is it read and write??" and the answer is one corner case π
pulling the value of the "OS Service Entitlement Status" parameter (60) needs the caller to actually supply input data β a date string β in the buffer that gets passed to firmware. so yeah, it writes to you but it also needs a lil something from you first. give and take, healthy relationship π«Ά
because of that, the length and data of the incoming papr_sysparm_io_block are always used to initialize the work area that gets handed to ibm,get-system-parameter. always always. no skipping.
now, no other parameters are known to take input this way β none, zero, nada β so in the normal everyday case, callers are encouraged (but not required) to zero-initialize length and data. encouraged bestie, not forced. it's giving polite suggestion energy π
β οΈ real talk though: on error the contents of the ioblock are indeterminate. like, unknown. do not trust them. do not build a personality around them. π
π₯ RETURN π₯
here's your vibe check on what comes back:
0β success, slay π andlengthis the length of valid data indata, and it will not exceedPAPR_SYSPARM_MAX_OUTPUT.-EIOβ platform error. (-1) π-EINVALβ incorrect data length or format. (-9999) π-EPERMβ the calling partition is not allowed to access this parameter. (-9002) like, security said no π«-EOPNOTSUPPβ parameter not supported on this platform. (-3) wrong platform, wrong era, moving on β¨
π SEE ALSO π
- kernel file
./arch/powerpc/include/uapi/asm/papr-sysparm.hβ go read it, iykyk π PAPR_SYSPARM_IOC_SET(9)β the setter sibling, the other main character π
and that's the whole page, bestie!! πΈ this gem lives in ./arch/powerpc/include/uapi/asm, stamped October 2026 β no cap, go get those system parameters πβ¨π¦π
π¦ 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