pvr_ioctl_u...adding_check(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– NAME πŸ’–

okay so welcome to the pvr_ioctl_u...adding_check(9) page in the Kernel API Manual β€” the main character is pvr_ioctl_union_padding_check(9), and her whole job is to validate that the implicit padding between the end of a union member and the end of the union itself is zeroed. no cap. πŸ’…


✨ SYNOPSIS ✨

bool pvr_ioctl_union_padding_check (void *instance , size_t union_offset
       , size_t union_size , size_t member_size );

🧚 ARGUMENTS 🧚

the whole cast, in order, bestie:

  • instance β€” Pointer to the instance of the struct to validate.
  • union_offset β€” Offset into the type of instance of the target union. Must be 64-bit aligned.
  • union_size β€” Size of the target union in the type of instance. Must be 64-bit aligned.
  • member_size β€” Size of the target member in the target union specified by union_offset and union_size. It is assumed that the offset of the target member is zero relative to union_offset. Must be 64-bit aligned.

πŸ¦‹ DESCRIPTION πŸ¦‹

okay so lowkey you probably want to use PVR_IOCTL_UNION_PADDING_CHECK instead of calling this function directly, since that macro abstracts away much of the setup, and also provides some static validation. See its docs for details. it’s giving β€œlet the macro handle the annoying bits” energy ✨


πŸŽ€ RETURN πŸŽ€

the vibe check comes back as:

  • true if every byte between the end of the used member of the union and the end of that union is zeroed, or
  • false otherwise.

🌈 SEE ALSO 🌈

Kernel file ./drivers/gpu/drm/imagination/pvr_device.h, plus the whole squad:


mwah πŸ’‹ β€” source/version: ./drivers/gpu/drm/imagination; date: October 2026; page title: pvr_ioctl_u...adding_check(9). bye bestie, go zero that padding 🫢

πŸ“¦ where this page comes from