rutabaga_gfx: rutabaga_gralloc: Request instance extensions

VK_KHR_external_memory requires VK_KHR_external_memory_capabilities which
requires VK_KHR_get_physical_device_properties2. Ash has started to check
that the instance extensions were required when creating devices.

BUG=b:189133053
TEST=launch Cuttlefish w/ Vulkano feature enabled in Crosvm

Change-Id: Ifaafda72500ccbd16dd461bcd5dc2633de4b8cfc
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3203233
Commit-Queue: Gurchetan Singh <gurchetansingh@chromium.org>
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Gurchetan Singh <gurchetansingh@chromium.org>
Reviewed-by: Dennis Kempin <denniskempin@google.com>
This commit is contained in:
Jason Macnak 2021-10-04 14:17:52 -07:00 committed by Commit Bot
parent 60102cdd2f
commit 0024533253

View file

@ -70,7 +70,12 @@ impl VulkanoGralloc {
pub fn init() -> RutabagaResult<Box<dyn Gralloc>> {
// Initialization copied from triangle.rs in Vulkano. Look there for a more detailed
// explanation of VK initialization.
let instance = Instance::new(None, Version::V1_1, &InstanceExtensions::none(), None)?;
let instance_extensions = InstanceExtensions {
khr_external_memory_capabilities: true,
khr_get_physical_device_properties2: true,
..InstanceExtensions::none()
};
let instance = Instance::new(None, Version::V1_1, &instance_extensions, None)?;
let mut devices: Map<PhysicalDeviceType, Arc<Device>> = Default::default();
let mut has_integrated_gpu = false;