Skip to content

venus: Allow to select guest-based memory allocations via virgl capset and implement vkr shmem blob import.

Andrew Gazizov requested to merge andrewgazizov/virglrenderer:guest_alloc into main

The main discussion and problem intro are in related to Mesa MR: mesa/mesa!25889 (merged)

In scope of this PR there are two changes:

  1. venus: Allow to select guest-based memory allocations via virgl capset

For hypervisors that do not support host memory injection into the guest, it's necessary to have guest-based blob allocations. Therefore, allow to force guest memory allocation via new virgl capset 'requires_guest_alloc'.

  1. venus: Implement VIRGL_RESOURCE_FD_SHM resource import path

Resources with fdtype VIRGL_RESOURCE_FD_SHM must be mapped in address space of renderer server on vkr_context_import_resource() call.

It fixes the issue on import of vkr shmem blob zero to virglrenderer.

Edited by Andrew Gazizov

Merge request reports