STRUCT PVR_FILE(9)
β¨ struct pvr_file(9) β¨
okay so this is the struct pvr_file page from the Kernel API Manual β sit down bestie, we're learning about powervr today π
πΈ NAME πΈ
struct pvr_file β the powervr-specific data that gets assigned to &struct drm_file.driver_priv. literally what it says on the tin, no cap π«Ά
π SYNOPSIS π
struct pvr_file {
struct drm_file *file;
struct pvr_device *pvr_dev;
struct xarray ctx_handles;
struct xarray free_list_handles;
struct xarray hwrt_handles;
struct xarray vm_ctx_handles;
struct list_head contexts;
};
look at her. iconic. main character struct energy π
π Members π
fileβ a reference to the parentstruct drm_file. β οΈ and listen: do not access this member directly β callfrom_pvr_fileinstead. fr fr, that's the rule πpvr_devβ a reference to the powervr-specific wrapper for the associated device. it's giving efficiency, because it saves you from repeated calls toto_pvr_deviceβ¨ctx_handlesβ array of contexts belonging to this file. array members are of type"struct pvr_context *". this array is used to allocate handles returned to userspace πfree_list_handlesβ array of free lists belonging to this file. array members are of type"struct pvr_free_list *". this array is used to allocate handles returned to userspace π¦hwrt_handlesβ array of HWRT datasets belonging to this file. array members are of type"struct pvr_hwrt_dataset *". this array is used to allocate handles returned to userspace πΈvm_ctx_handlesβ array of VM contexts belonging to this file. array members are of type"struct pvr_vm_context *". this array is used to allocate handles returned to userspace πcontextsβ PVR context list. short and sweet, we love her π«
π SEE ALSO π
the whole friend group, in the order the page gave them:
kernel file ./drivers/gpu/drm/imagination/pvr_device.h struct pvr_gpu_id(9), struct pvr_fw_version(9), struct pvr_device_data(9), struct pvr_device(9), PVR_HAS_FEATURE(9), PVR_FEATURE_VALUE(9), PVR_HAS_QUIRK(9), PVR_HAS_ENHANCEMENT(9), PVR_PACKED_BVNC(9), pvr_gpu_id_to_packed_bvnc(9), PVR_CR_FIELD_GET(9), pvr_cr_read32(9), pvr_cr_read64(9), pvr_cr_write32(9), pvr_cr_write64(9), pvr_cr_poll_reg32(9), pvr_cr_poll_reg64(9), pvr_round_up_to_cacheline_size(9), IOCTL validation helpers(9), pvr_ioctl_union_padding_check(9), PVR_STATIC_ASSERT_64BIT_ALIGNED(9), PVR_IOCTL_UNION_PADDING_CHECK(9)
and that's the whole thing, bestie π this one lives in ./drivers/gpu/drm/imagination, it's dated October 2026, and it's officially titled struct pvr_file(9) in the Kernel API Manual. periodt. πβ¨π
π¦ 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