gfx-rs/wgpu · error
Failed to create DRM surface
Error message
Failed to create DRM surface
What it means
Panic in the Vulkan DRM surface creation: vkCreateDisplayPlaneSurfaceKHR failed while creating the display-mode surface from the chosen mode and extents, so the Vulkan surface object could not be created.
Source
Thrown at wgpu-hal/src/vulkan/drm.rs:248
&& current_mode.parameters.visible_region.height == height
{
mode = Some(current_mode)
}
}
let mode = mode.ok_or(crate::InstanceError::new(
"Failed to find suitable display mode".to_string(),
))?;
let create_info = vk::DisplaySurfaceCreateInfoKHR::default()
.display_mode(mode.display_mode)
.image_extent(mode.parameters.visible_region)
.transform(vk::SurfaceTransformFlagsKHR::IDENTITY)
.alpha_mode(vk::DisplayPlaneAlphaFlagsKHR::OPAQUE)
.plane_index(plane);
let surface = unsafe { display_instance.create_display_plane_surface(&create_info, None) }
.expect("Failed to create DRM surface");
Ok(self.create_surface_from_vk_surface_khr(surface, None))
}
}
View on GitHub (pinned to 3e11ff59bf)
Solutions
- Check driver support for display-plane surfaces and valid plane/transform parameters
- Retry with different display mode parameters
Defensive patterns
Strategy: retry
When it happens
Trigger: Thrown at wgpu-hal/src/vulkan/drm.rs:248 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of gfx-rs/wgpu@3e11ff59bf (2026-09-03).
Data as JSON: /api/errors/d745b47491a5b2b5.
Report an issue: GitHub.