diff options
| author | Valentin Popov <valentin@popov.link> | 2026-06-25 06:35:48 +0300 |
|---|---|---|
| committer | Valentin Popov <valentin@popov.link> | 2026-06-25 10:45:38 +0300 |
| commit | 8f0dcd7f4ddfbb4a3eb4e0845c06bfb925b92e94 (patch) | |
| tree | a0b1f5692b76abcadb72f10a6ad838ad2285d7ee /adapters | |
| parent | 97f56c56ba1f809dd1c1fae8fd238f1e7de4c4b9 (diff) | |
| download | fparkan-8f0dcd7f4ddfbb4a3eb4e0845c06bfb925b92e94.tar.xz fparkan-8f0dcd7f4ddfbb4a3eb4e0845c06bfb925b92e94.zip | |
feat(vulkan-smoke): verify macos portability evidence
Diffstat (limited to 'adapters')
| -rw-r--r-- | adapters/fparkan-render-vulkan/src/ffi/smoke.rs | 7 | ||||
| -rw-r--r-- | adapters/fparkan-render-vulkan/src/ffi/smoke_types.rs | 2 |
2 files changed, 9 insertions, 0 deletions
diff --git a/adapters/fparkan-render-vulkan/src/ffi/smoke.rs b/adapters/fparkan-render-vulkan/src/ffi/smoke.rs index b911b1e..f10cd7c 100644 --- a/adapters/fparkan-render-vulkan/src/ffi/smoke.rs +++ b/adapters/fparkan-render-vulkan/src/ffi/smoke.rs @@ -13,6 +13,7 @@ use super::{ VulkanSurfaceProbe, VulkanSwapchainProbe, VulkanSwapchainResources, VulkanValidationMessenger, VulkanValidationReport, }; +use crate::policy::KHR_PORTABILITY_SUBSET_EXTENSION; use crate::shader_manifest::{triangle_shader_manifest, validate_shader_manifest}; fn take_runtime_owners_in_dependency_order<Instance, Validation, Surface, Device, Swapchain>( @@ -142,6 +143,7 @@ impl VulkanSmokeRenderer { report: VulkanSmokeRendererReport { shader_manifest_hash: shader_manifest.manifest_hash.clone(), portability_enumeration: instance_config.enable_portability_enumeration, + portability_subset_enabled: false, device_name: String::new(), graphics_queue_family: 0, present_queue_family: 0, @@ -159,6 +161,11 @@ impl VulkanSmokeRenderer { .instance .as_ref() .is_some_and(|instance| instance.report.create_flags != 0), + portability_subset_enabled: device_ref + .report + .enabled_extensions + .iter() + .any(|extension| extension == KHR_PORTABILITY_SUBSET_EXTENSION), device_name: device_ref.report.device_name.clone(), graphics_queue_family: device_ref.report.graphics_queue_family, present_queue_family: device_ref.report.present_queue_family, diff --git a/adapters/fparkan-render-vulkan/src/ffi/smoke_types.rs b/adapters/fparkan-render-vulkan/src/ffi/smoke_types.rs index 7c581c3..87d7992 100644 --- a/adapters/fparkan-render-vulkan/src/ffi/smoke_types.rs +++ b/adapters/fparkan-render-vulkan/src/ffi/smoke_types.rs @@ -29,6 +29,8 @@ pub struct VulkanSmokeRendererReport { pub shader_manifest_hash: String, /// Whether portability enumeration was enabled at instance creation. pub portability_enumeration: bool, + /// Whether the logical device enabled `VK_KHR_portability_subset`. + pub portability_subset_enabled: bool, /// Selected device name. pub device_name: String, /// Graphics queue-family index. |
