Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Raspberry Pi 5 Surface::configure panic #2552

Open
4 tasks done
eaglesemanation opened this issue Aug 17, 2024 · 2 comments
Open
4 tasks done

Raspberry Pi 5 Surface::configure panic #2552

eaglesemanation opened this issue Aug 17, 2024 · 2 comments
Labels
bug Something isn't working

Comments

@eaglesemanation
Copy link

eaglesemanation commented Aug 17, 2024

Is your issue REALLY a bug?

  • My issue is indeed a bug!
  • I am not crazy! I will not fill out this form just to ask a question or request a feature. Pinky promise.

Is there an existing issue for this?

  • I have searched the existing issues.

Is this issue related to iced?

  • My hardware is compatible and my graphics drivers are up-to-date.

What happened?

I'm working on a project that runs on a Raspberry Pi 5 in a kiosk mode using Cage (Wayland compositor with a single fullscreen app). This works fine on a small touchscreen display, V3D is detected and working. But if I try use external display with 3840x2160 resolution, it panics with this error:

Error in Surface::configure: Validation Error
Caused by:
     `Surface` width and height must be within the maximum supported texture size. Requested was (3840, 2160), maximum extent is 2048.

What is the expected behavior?

Raspberry Pi 5 should be able to handle that resolution without issues. After looking into vulkaninfo output, it seems to me that this is an issue of default wgpu surface limits requesting too much, while down level limits - too little. I've attached limits of V3D as log output, would appreciate it if anyone comes up with a good way to fix this.

Seems like currently the list of possible limits is hardcoded, and I don't think that exposing this as an additional setting is a good approach. Maybe this list could include Raspberry Pi specific case? If not - I guess this is not an issue report after all, but just another feature request pretending to be one. Specifically to get more control over wgpu configuration.

Version

crates.io release

Operating System

Linux

Do you have any log output?

==========
VULKANINFO
==========

Vulkan Instance Version: 1.3.283


Instance Extensions: count = 23
===============================
	VK_EXT_acquire_drm_display             : extension revision 1
	VK_EXT_acquire_xlib_display            : extension revision 1
	VK_EXT_debug_report                    : extension revision 10
	VK_EXT_debug_utils                     : extension revision 2
	VK_EXT_direct_mode_display             : extension revision 1
	VK_EXT_display_surface_counter         : extension revision 1
	VK_EXT_surface_maintenance1            : extension revision 1
	VK_EXT_swapchain_colorspace            : extension revision 4
	VK_KHR_device_group_creation           : extension revision 1
	VK_KHR_display                         : extension revision 23
	VK_KHR_external_fence_capabilities     : extension revision 1
	VK_KHR_external_memory_capabilities    : extension revision 1
	VK_KHR_external_semaphore_capabilities : extension revision 1
	VK_KHR_get_display_properties2         : extension revision 1
	VK_KHR_get_physical_device_properties2 : extension revision 2
	VK_KHR_get_surface_capabilities2       : extension revision 1
	VK_KHR_portability_enumeration         : extension revision 1
	VK_KHR_surface                         : extension revision 25
	VK_KHR_surface_protected_capabilities  : extension revision 1
	VK_KHR_wayland_surface                 : extension revision 6
	VK_KHR_xcb_surface                     : extension revision 6
	VK_KHR_xlib_surface                    : extension revision 6
	VK_LUNARG_direct_driver_loading        : extension revision 1

Layers: count = 2
=================
VK_LAYER_MESA_device_select (Linux device selection layer) Vulkan version 1.3.211, layer version 1:
	Layer Extensions: count = 0
	Devices: count = 2
		GPU id = 0 (V3D 7.1.7)
		Layer-Device Extensions: count = 0

		GPU id = 1 (llvmpipe (LLVM 17.0.6, 128 bits))
		Layer-Device Extensions: count = 0

VK_LAYER_MESA_overlay (Mesa Overlay layer) Vulkan version 1.3.211, layer version 1:
	Layer Extensions: count = 0
	Devices: count = 2
		GPU id = 0 (V3D 7.1.7)
		Layer-Device Extensions: count = 0

		GPU id = 1 (llvmpipe (LLVM 17.0.6, 128 bits))
		Layer-Device Extensions: count = 0

Device Properties and Extensions:
=================================
GPU0:
VkPhysicalDeviceProperties:
---------------------------
	apiVersion        = 1.2.274 (4202770)
	driverVersion     = 24.0.7 (100663303)
	vendorID          = 0x14e4
	deviceID          = 0x55701c33
	deviceType        = PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU
	deviceName        = V3D 7.1.7
	pipelineCacheUUID = 27cd1319-2f54-3c27-662d-3cbd4f40f130

VkPhysicalDeviceLimits:
-----------------------
	maxImageDimension1D                             = 4096
	maxImageDimension2D                             = 4096
	maxImageDimension3D                             = 4096
	maxImageDimensionCube                           = 4096
	maxImageArrayLayers                             = 2048
	maxTexelBufferElements                          = 268435456
	maxUniformBufferRange                           = 1073741824
	maxStorageBufferRange                           = 1073741824
	maxPushConstantsSize                            = 128
	maxMemoryAllocationCount                        = 1048576
	maxSamplerAllocationCount                       = 65536
	bufferImageGranularity                          = 0x00000100
	sparseAddressSpaceSize                          = 0x00000000
	maxBoundDescriptorSets                          = 16
	maxPerStageDescriptorSamplers                   = 24
	maxPerStageDescriptorUniformBuffers             = 16
	maxPerStageDescriptorStorageBuffers             = 8
	maxPerStageDescriptorSampledImages              = 16
	maxPerStageDescriptorStorageImages              = 4
	maxPerStageDescriptorInputAttachments           = 4
	maxPerStageResources                            = 128
	maxDescriptorSetSamplers                        = 144
	maxDescriptorSetUniformBuffers                  = 96
	maxDescriptorSetUniformBuffersDynamic           = 8
	maxDescriptorSetStorageBuffers                  = 48
	maxDescriptorSetStorageBuffersDynamic           = 4
	maxDescriptorSetSampledImages                   = 96
	maxDescriptorSetStorageImages                   = 24
	maxDescriptorSetInputAttachments                = 4
	maxVertexInputAttributes                        = 16
	maxVertexInputBindings                          = 16
	maxVertexInputAttributeOffset                   = 4294967295
	maxVertexInputBindingStride                     = 4294967295
	maxVertexOutputComponents                       = 64
	maxTessellationGenerationLevel                  = 0
	maxTessellationPatchSize                        = 0
	maxTessellationControlPerVertexInputComponents  = 0
	maxTessellationControlPerVertexOutputComponents = 0
	maxTessellationControlPerPatchOutputComponents  = 0
	maxTessellationControlTotalOutputComponents     = 0
	maxTessellationEvaluationInputComponents        = 0
	maxTessellationEvaluationOutputComponents       = 0
	maxGeometryShaderInvocations                    = 32
	maxGeometryInputComponents                      = 64
	maxGeometryOutputComponents                     = 64
	maxGeometryOutputVertices                       = 256
	maxGeometryTotalOutputComponents                = 1024
	maxFragmentInputComponents                      = 64
	maxFragmentOutputAttachments                    = 4
	maxFragmentDualSrcAttachments                   = 0
	maxFragmentCombinedOutputResources              = 20
	maxComputeSharedMemorySize                      = 16384
	maxComputeWorkGroupCount: count = 3
		65535
		65535
		65535
	maxComputeWorkGroupInvocations                  = 256
	maxComputeWorkGroupSize: count = 3
		256
		256
		256
	subPixelPrecisionBits                           = 6
	subTexelPrecisionBits                           = 8
	mipmapPrecisionBits                             = 8
	maxDrawIndexedIndexValue                        = 4294967295
	maxDrawIndirectCount                            = 2147483647
	maxSamplerLodBias                               = 14
	maxSamplerAnisotropy                            = 16
	maxViewports                                    = 1
	maxViewportDimensions: count = 2
		4096
		4096
	viewportBoundsRange: count = 2
		-8192
		8191
	viewportSubPixelBits                            = 0
	minMemoryMapAlignment                           = 4096
	minTexelBufferOffsetAlignment                   = 0x00000040
	minUniformBufferOffsetAlignment                 = 0x00000020
	minStorageBufferOffsetAlignment                 = 0x00000020
	minTexelOffset                                  = -8
	maxTexelOffset                                  = 7
	minTexelGatherOffset                            = -8
	maxTexelGatherOffset                            = 7
	minInterpolationOffset                          = -0.5
	maxInterpolationOffset                          = 0.5
	subPixelInterpolationOffsetBits                 = 6
	maxFramebufferWidth                             = 4096
	maxFramebufferHeight                            = 4096
	maxFramebufferLayers                            = 256
	framebufferColorSampleCounts: count = 2
		SAMPLE_COUNT_1_BIT
		SAMPLE_COUNT_4_BIT
	framebufferDepthSampleCounts: count = 2
		SAMPLE_COUNT_1_BIT
		SAMPLE_COUNT_4_BIT
	framebufferStencilSampleCounts: count = 2
		SAMPLE_COUNT_1_BIT
		SAMPLE_COUNT_4_BIT
	framebufferNoAttachmentsSampleCounts: count = 2
		SAMPLE_COUNT_1_BIT
		SAMPLE_COUNT_4_BIT
	maxColorAttachments                             = 8
	sampledImageColorSampleCounts: count = 2
		SAMPLE_COUNT_1_BIT
		SAMPLE_COUNT_4_BIT
	sampledImageIntegerSampleCounts: count = 2
		SAMPLE_COUNT_1_BIT
		SAMPLE_COUNT_4_BIT
	sampledImageDepthSampleCounts: count = 2
		SAMPLE_COUNT_1_BIT
		SAMPLE_COUNT_4_BIT
	sampledImageStencilSampleCounts: count = 2
		SAMPLE_COUNT_1_BIT
		SAMPLE_COUNT_4_BIT
	storageImageSampleCounts: count = 1
		SAMPLE_COUNT_1_BIT
	maxSampleMaskWords                              = 1
	timestampComputeAndGraphics                     = true
	timestampPeriod                                 = 1
	maxClipDistances                                = 8
	maxCullDistances                                = 0
	maxCombinedClipAndCullDistances                 = 8
	discreteQueuePriorities                         = 2
	pointSizeRange: count = 2
		0.03125
		512
	lineWidthRange: count = 2
		1
		32
	pointSizeGranularity                            = 0.03125
	lineWidthGranularity                            = 0.03125
	strictLines                                     = true
	standardSampleLocations                         = false
	optimalBufferCopyOffsetAlignment                = 0x00000020
	optimalBufferCopyRowPitchAlignment              = 0x00000020
	nonCoherentAtomSize                             = 0x00000100

VkPhysicalDeviceSparseProperties:
---------------------------------
	residencyStandard2DBlockShape            = false
	residencyStandard2DMultisampleBlockShape = false
	residencyStandard3DBlockShape            = false
	residencyAlignedMipSize                  = false
	residencyNonResidentStrict               = false

VkPhysicalDeviceCustomBorderColorPropertiesEXT:
-----------------------------------------------
	maxCustomBorderColorSamplers = 24

VkPhysicalDeviceDrmPropertiesEXT:
---------------------------------
	hasPrimary   = true
	hasRender    = true
	primaryMajor = 226
	primaryMinor = 2
	renderMajor  = 226
	renderMinor  = 128

VkPhysicalDeviceInlineUniformBlockPropertiesEXT:
------------------------------------------------
	maxInlineUniformBlockSize                               = 4096
	maxPerStageDescriptorInlineUniformBlocks                = 4
	maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks = 4
	maxDescriptorSetInlineUniformBlocks                     = 4
	maxDescriptorSetUpdateAfterBindInlineUniformBlocks      = 4

VkPhysicalDeviceLineRasterizationPropertiesKHR:
-----------------------------------------------
	lineSubPixelPrecisionBits = 6

VkPhysicalDeviceMaintenance4PropertiesKHR:
------------------------------------------
	maxBufferSize = 0x40000000

VkPhysicalDeviceMultiDrawPropertiesEXT:
---------------------------------------
	maxMultiDrawCount = 2048

VkPhysicalDevicePerformanceQueryPropertiesKHR:
----------------------------------------------
	allowCommandBufferQueryCopies = true

VkPhysicalDevicePipelineRobustnessPropertiesEXT:
------------------------------------------------
	defaultRobustnessStorageBuffers = PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_DEVICE_DEFAULT_EXT
	defaultRobustnessUniformBuffers = PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_DEVICE_DEFAULT_EXT
	defaultRobustnessVertexInputs = PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_DEVICE_DEFAULT_EXT
	defaultRobustnessImages = PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_DEVICE_DEFAULT_EXT

VkPhysicalDeviceProvokingVertexPropertiesEXT:
---------------------------------------------
	provokingVertexModePerPipeline                       = true
	transformFeedbackPreservesTriangleFanProvokingVertex = false

VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR:
-----------------------------------------------------
	integerDotProduct8BitUnsignedAccelerated                                      = false
	integerDotProduct8BitSignedAccelerated                                        = false
	integerDotProduct8BitMixedSignednessAccelerated                               = false
	integerDotProduct4x8BitPackedUnsignedAccelerated                              = false
	integerDotProduct4x8BitPackedSignedAccelerated                                = false
	integerDotProduct4x8BitPackedMixedSignednessAccelerated                       = false
	integerDotProduct16BitUnsignedAccelerated                                     = false
	integerDotProduct16BitSignedAccelerated                                       = false
	integerDotProduct16BitMixedSignednessAccelerated                              = false
	integerDotProduct32BitUnsignedAccelerated                                     = false
	integerDotProduct32BitSignedAccelerated                                       = false
	integerDotProduct32BitMixedSignednessAccelerated                              = false
	integerDotProduct64BitUnsignedAccelerated                                     = false
	integerDotProduct64BitSignedAccelerated                                       = false
	integerDotProduct64BitMixedSignednessAccelerated                              = false
	integerDotProductAccumulatingSaturating8BitUnsignedAccelerated                = false
	integerDotProductAccumulatingSaturating8BitSignedAccelerated                  = false
	integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated         = false
	integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated        = false
	integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated          = false
	integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated = false
	integerDotProductAccumulatingSaturating16BitUnsignedAccelerated               = false
	integerDotProductAccumulatingSaturating16BitSignedAccelerated                 = false
	integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated        = false
	integerDotProductAccumulatingSaturating32BitUnsignedAccelerated               = false
	integerDotProductAccumulatingSaturating32BitSignedAccelerated                 = false
	integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated        = false
	integerDotProductAccumulatingSaturating64BitUnsignedAccelerated               = false
	integerDotProductAccumulatingSaturating64BitSignedAccelerated                 = false
	integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated        = false

VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT:
----------------------------------------------------
	shaderModuleIdentifierAlgorithmUUID     = 4d455341-2d42-4c41-4b45-330000000000

VkPhysicalDeviceSubgroupSizeControlPropertiesEXT:
-------------------------------------------------
	minSubgroupSize              = 16
	maxSubgroupSize              = 16
	maxComputeWorkgroupSubgroups = 16
	requiredSubgroupSizeStages: count = 1
		SHADER_STAGE_COMPUTE_BIT

VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT:
--------------------------------------------------
	storageTexelBufferOffsetAlignmentBytes       = 0x00000040
	storageTexelBufferOffsetSingleTexelAlignment = false
	uniformTexelBufferOffsetAlignmentBytes       = 0x00000040
	uniformTexelBufferOffsetSingleTexelAlignment = false

VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT:
----------------------------------------------------
	maxVertexAttribDivisor = 65535

VkPhysicalDeviceVulkan11Properties:
-----------------------------------
	deviceUUID                        = 5fd8106e-741a-cafa-e080-fdb16cf11a80
	driverUUID                        = 52877ce8-45b9-b177-1525-db5eca00397d
	deviceNodeMask                    = 0
	deviceLUIDValid                   = false
	subgroupSize                      = 16
	subgroupSupportedStages: count = 1
		SHADER_STAGE_COMPUTE_BIT
	subgroupSupportedOperations: count = 1
		SUBGROUP_FEATURE_BASIC_BIT
	subgroupQuadOperationsInAllStages = false
	pointClippingBehavior             = POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES
	maxMultiviewViewCount             = 16
	maxMultiviewInstanceIndex         = 4294967294
	protectedNoFault                  = false
	maxPerSetDescriptors              = 67108863
	maxMemoryAllocationSize           = 0x40000000

VkPhysicalDeviceVulkan12Properties:
-----------------------------------
	driverID                                             = DRIVER_ID_MESA_V3DV
	driverName                                           = V3DV Mesa
	driverInfo                                           = Mesa 24.0.7
	conformanceVersion:
		major    = 1
		minor    = 3
		subminor = 6
		patch    = 1
	denormBehaviorIndependence                           = SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL
	roundingModeIndependence                             = SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL
	shaderSignedZeroInfNanPreserveFloat16                = true
	shaderSignedZeroInfNanPreserveFloat32                = true
	shaderSignedZeroInfNanPreserveFloat64                = false
	shaderDenormPreserveFloat16                          = true
	shaderDenormPreserveFloat32                          = true
	shaderDenormPreserveFloat64                          = false
	shaderDenormFlushToZeroFloat16                       = false
	shaderDenormFlushToZeroFloat32                       = false
	shaderDenormFlushToZeroFloat64                       = false
	shaderRoundingModeRTEFloat16                         = true
	shaderRoundingModeRTEFloat32                         = true
	shaderRoundingModeRTEFloat64                         = false
	shaderRoundingModeRTZFloat16                         = false
	shaderRoundingModeRTZFloat32                         = false
	shaderRoundingModeRTZFloat64                         = false
	maxUpdateAfterBindDescriptorsInAllPools              = 0
	shaderUniformBufferArrayNonUniformIndexingNative     = false
	shaderSampledImageArrayNonUniformIndexingNative      = false
	shaderStorageBufferArrayNonUniformIndexingNative     = false
	shaderStorageImageArrayNonUniformIndexingNative      = false
	shaderInputAttachmentArrayNonUniformIndexingNative   = false
	robustBufferAccessUpdateAfterBind                    = false
	quadDivergentImplicitLod                             = false
	maxPerStageDescriptorUpdateAfterBindSamplers         = 0
	maxPerStageDescriptorUpdateAfterBindUniformBuffers   = 0
	maxPerStageDescriptorUpdateAfterBindStorageBuffers   = 0
	maxPerStageDescriptorUpdateAfterBindSampledImages    = 0
	maxPerStageDescriptorUpdateAfterBindStorageImages    = 0
	maxPerStageDescriptorUpdateAfterBindInputAttachments = 0
	maxPerStageUpdateAfterBindResources                  = 0
	maxDescriptorSetUpdateAfterBindSamplers              = 0
	maxDescriptorSetUpdateAfterBindUniformBuffers        = 0
	maxDescriptorSetUpdateAfterBindUniformBuffersDynamic = 0
	maxDescriptorSetUpdateAfterBindStorageBuffers        = 0
	maxDescriptorSetUpdateAfterBindStorageBuffersDynamic = 0
	maxDescriptorSetUpdateAfterBindSampledImages         = 0
	maxDescriptorSetUpdateAfterBindStorageImages         = 0
	maxDescriptorSetUpdateAfterBindInputAttachments      = 0
	supportedDepthResolveModes: count = 1
		RESOLVE_MODE_SAMPLE_ZERO_BIT
	supportedStencilResolveModes: count = 1
		RESOLVE_MODE_SAMPLE_ZERO_BIT
	independentResolveNone                               = false
	independentResolve                                   = false
	filterMinmaxSingleComponentFormats                   = false
	filterMinmaxImageComponentMapping                    = false
	maxTimelineSemaphoreValueDifference                  = 18446744073709551615
	framebufferIntegerColorSampleCounts: count = 2
		SAMPLE_COUNT_1_BIT
		SAMPLE_COUNT_4_BIT

Device Extensions: count = 78
	VK_EXT_4444_formats                       : extension revision 1
	VK_EXT_attachment_feedback_loop_layout    : extension revision 2
	VK_EXT_border_color_swizzle               : extension revision 1
	VK_EXT_color_write_enable                 : extension revision 1
	VK_EXT_custom_border_color                : extension revision 12
	VK_EXT_depth_clip_control                 : extension revision 1
	VK_EXT_external_memory_dma_buf            : extension revision 1
	VK_EXT_host_query_reset                   : extension revision 1
	VK_EXT_image_drm_format_modifier          : extension revision 2
	VK_EXT_image_robustness                   : extension revision 1
	VK_EXT_index_type_uint8                   : extension revision 1
	VK_EXT_inline_uniform_block               : extension revision 1
	VK_EXT_line_rasterization                 : extension revision 1
	VK_EXT_load_store_op_none                 : extension revision 1
	VK_EXT_memory_budget                      : extension revision 1
	VK_EXT_multi_draw                         : extension revision 1
	VK_EXT_physical_device_drm                : extension revision 1
	VK_EXT_pipeline_creation_cache_control    : extension revision 3
	VK_EXT_pipeline_creation_feedback         : extension revision 1
	VK_EXT_pipeline_robustness                : extension revision 1
	VK_EXT_primitive_topology_list_restart    : extension revision 1
	VK_EXT_private_data                       : extension revision 1
	VK_EXT_provoking_vertex                   : extension revision 1
	VK_EXT_separate_stencil_usage             : extension revision 1
	VK_EXT_shader_demote_to_helper_invocation : extension revision 1
	VK_EXT_shader_module_identifier           : extension revision 1
	VK_EXT_subgroup_size_control              : extension revision 2
	VK_EXT_texel_buffer_alignment             : extension revision 1
	VK_EXT_tooling_info                       : extension revision 1
	VK_EXT_vertex_attribute_divisor           : extension revision 3
	VK_KHR_16bit_storage                      : extension revision 1
	VK_KHR_8bit_storage                       : extension revision 1
	VK_KHR_bind_memory2                       : extension revision 1
	VK_KHR_buffer_device_address              : extension revision 1
	VK_KHR_copy_commands2                     : extension revision 1
	VK_KHR_create_renderpass2                 : extension revision 1
	VK_KHR_dedicated_allocation               : extension revision 3
	VK_KHR_depth_stencil_resolve              : extension revision 1
	VK_KHR_descriptor_update_template         : extension revision 1
	VK_KHR_device_group                       : extension revision 4
	VK_KHR_driver_properties                  : extension revision 1
	VK_KHR_external_fence                     : extension revision 1
	VK_KHR_external_fence_fd                  : extension revision 1
	VK_KHR_external_memory                    : extension revision 1
	VK_KHR_external_memory_fd                 : extension revision 1
	VK_KHR_external_semaphore                 : extension revision 1
	VK_KHR_external_semaphore_fd              : extension revision 1
	VK_KHR_format_feature_flags2              : extension revision 2
	VK_KHR_get_memory_requirements2           : extension revision 1
	VK_KHR_image_format_list                  : extension revision 1
	VK_KHR_imageless_framebuffer              : extension revision 1
	VK_KHR_incremental_present                : extension revision 2
	VK_KHR_maintenance1                       : extension revision 2
	VK_KHR_maintenance2                       : extension revision 1
	VK_KHR_maintenance3                       : extension revision 1
	VK_KHR_maintenance4                       : extension revision 2
	VK_KHR_multiview                          : extension revision 1
	VK_KHR_performance_query                  : extension revision 1
	VK_KHR_pipeline_executable_properties     : extension revision 1
	VK_KHR_relaxed_block_layout               : extension revision 1
	VK_KHR_sampler_mirror_clamp_to_edge       : extension revision 3
	VK_KHR_sampler_ycbcr_conversion           : extension revision 14
	VK_KHR_separate_depth_stencil_layouts     : extension revision 1
	VK_KHR_shader_float_controls              : extension revision 4
	VK_KHR_shader_integer_dot_product         : extension revision 1
	VK_KHR_shader_non_semantic_info           : extension revision 1
	VK_KHR_shader_terminate_invocation        : extension revision 1
	VK_KHR_spirv_1_4                          : extension revision 1
	VK_KHR_storage_buffer_storage_class       : extension revision 1
	VK_KHR_swapchain                          : extension revision 70
	VK_KHR_swapchain_mutable_format           : extension revision 1
	VK_KHR_synchronization2                   : extension revision 1
	VK_KHR_timeline_semaphore                 : extension revision 2
	VK_KHR_uniform_buffer_standard_layout     : extension revision 1
	VK_KHR_variable_pointers                  : extension revision 1
	VK_KHR_vulkan_memory_model                : extension revision 3
	VK_KHR_workgroup_memory_explicit_layout   : extension revision 1
	VK_KHR_zero_initialize_workgroup_memory   : extension revision 1

VkQueueFamilyProperties:
========================
	queueProperties[0]:
	-------------------
		minImageTransferGranularity = (1,1,1)
		queueCount                  = 1
		queueFlags                  = QUEUE_GRAPHICS_BIT | QUEUE_COMPUTE_BIT | QUEUE_TRANSFER_BIT
		timestampValidBits          = 64
		present support             = false

VkPhysicalDeviceMemoryProperties:
=================================
memoryHeaps: count = 1
	memoryHeaps[0]:
		size   = 4294967296 (0x100000000) (4.00 GiB)
		budget = 4294967296 (0x100000000) (4.00 GiB)
		usage  = 0 (0x00000000) (0.00 B)
		flags: count = 1
			MEMORY_HEAP_DEVICE_LOCAL_BIT
memoryTypes: count = 1
	memoryTypes[0]:
		heapIndex     = 0
		propertyFlags = 0x0007: count = 3
			MEMORY_PROPERTY_DEVICE_LOCAL_BIT
			MEMORY_PROPERTY_HOST_VISIBLE_BIT
			MEMORY_PROPERTY_HOST_COHERENT_BIT
		usable for:
			IMAGE_TILING_OPTIMAL:
				color images
				FORMAT_D16_UNORM
				FORMAT_X8_D24_UNORM_PACK32
				FORMAT_D32_SFLOAT
				FORMAT_D24_UNORM_S8_UINT
				(non-sparse)
			IMAGE_TILING_LINEAR:
				color images
				(non-sparse)

VkPhysicalDeviceFeatures:
=========================
	robustBufferAccess                      = true
	fullDrawIndexUint32                     = true
	imageCubeArray                          = true
	independentBlend                        = true
	geometryShader                          = true
	tessellationShader                      = false
	sampleRateShading                       = true
	dualSrcBlend                            = false
	logicOp                                 = true
	multiDrawIndirect                       = false
	drawIndirectFirstInstance               = true
	depthClamp                              = true
	depthBiasClamp                          = true
	fillModeNonSolid                        = true
	depthBounds                             = true
	wideLines                               = true
	largePoints                             = true
	alphaToOne                              = true
	multiViewport                           = false
	samplerAnisotropy                       = true
	textureCompressionETC2                  = true
	textureCompressionASTC_LDR              = true
	textureCompressionBC                    = false
	occlusionQueryPrecise                   = true
	pipelineStatisticsQuery                 = false
	vertexPipelineStoresAndAtomics          = true
	fragmentStoresAndAtomics                = true
	shaderTessellationAndGeometryPointSize  = true
	shaderImageGatherExtended               = true
	shaderStorageImageExtendedFormats       = true
	shaderStorageImageMultisample           = false
	shaderStorageImageReadWithoutFormat     = true
	shaderStorageImageWriteWithoutFormat    = false
	shaderUniformBufferArrayDynamicIndexing = false
	shaderSampledImageArrayDynamicIndexing  = false
	shaderStorageBufferArrayDynamicIndexing = false
	shaderStorageImageArrayDynamicIndexing  = false
	shaderClipDistance                      = true
	shaderCullDistance                      = false
	shaderFloat64                           = false
	shaderInt64                             = false
	shaderInt16                             = false
	shaderResourceResidency                 = false
	shaderResourceMinLod                    = false
	sparseBinding                           = false
	sparseResidencyBuffer                   = false
	sparseResidencyImage2D                  = false
	sparseResidencyImage3D                  = false
	sparseResidency2Samples                 = false
	sparseResidency4Samples                 = false
	sparseResidency8Samples                 = false
	sparseResidency16Samples                = false
	sparseResidencyAliased                  = false
	variableMultisampleRate                 = false
	inheritedQueries                        = true

VkPhysicalDevice4444FormatsFeaturesEXT:
---------------------------------------
	formatA4R4G4B4 = true
	formatA4B4G4R4 = true

VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT:
--------------------------------------------------------
	attachmentFeedbackLoopLayout = true

VkPhysicalDeviceBorderColorSwizzleFeaturesEXT:
----------------------------------------------
	borderColorSwizzle          = true
	borderColorSwizzleFromImage = true

VkPhysicalDeviceColorWriteEnableFeaturesEXT:
--------------------------------------------
	colorWriteEnable = true

VkPhysicalDeviceCustomBorderColorFeaturesEXT:
---------------------------------------------
	customBorderColors             = true
	customBorderColorWithoutFormat = false

VkPhysicalDeviceDepthClipControlFeaturesEXT:
--------------------------------------------
	depthClipControl = true

VkPhysicalDeviceImageRobustnessFeaturesEXT:
-------------------------------------------
	robustImageAccess = true

VkPhysicalDeviceIndexTypeUint8FeaturesKHR:
------------------------------------------
	indexTypeUint8 = true

VkPhysicalDeviceInlineUniformBlockFeaturesEXT:
----------------------------------------------
	inlineUniformBlock                                 = true
	descriptorBindingInlineUniformBlockUpdateAfterBind = false

VkPhysicalDeviceLineRasterizationFeaturesKHR:
---------------------------------------------
	rectangularLines         = true
	bresenhamLines           = true
	smoothLines              = false
	stippledRectangularLines = false
	stippledBresenhamLines   = false
	stippledSmoothLines      = false

VkPhysicalDeviceMaintenance4FeaturesKHR:
----------------------------------------
	maintenance4 = true

VkPhysicalDeviceMultiDrawFeaturesEXT:
-------------------------------------
	multiDraw = true

VkPhysicalDevicePerformanceQueryFeaturesKHR:
--------------------------------------------
	performanceCounterQueryPools         = true
	performanceCounterMultipleQueryPools = false

VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT:
--------------------------------------------------------
	pipelineCreationCacheControl = true

VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR:
--------------------------------------------------------
	pipelineExecutableInfo = true

VkPhysicalDevicePipelineRobustnessFeaturesEXT:
----------------------------------------------
	pipelineRobustness = true

VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT:
--------------------------------------------------------
	primitiveTopologyListRestart      = true
	primitiveTopologyPatchListRestart = false

VkPhysicalDevicePrivateDataFeaturesEXT:
---------------------------------------
	privateData = true

VkPhysicalDeviceProvokingVertexFeaturesEXT:
-------------------------------------------
	provokingVertexLast                       = true
	transformFeedbackPreservesProvokingVertex = false

VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT:
----------------------------------------------------------
	shaderDemoteToHelperInvocation = true

VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR:
---------------------------------------------------
	shaderIntegerDotProduct = true

VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT:
--------------------------------------------------
	shaderModuleIdentifier = true

VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR:
-----------------------------------------------------
	shaderTerminateInvocation = true

VkPhysicalDeviceSubgroupSizeControlFeaturesEXT:
-----------------------------------------------
	subgroupSizeControl  = true
	computeFullSubgroups = true

VkPhysicalDeviceSynchronization2FeaturesKHR:
--------------------------------------------
	synchronization2 = true

VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT:
------------------------------------------------
	texelBufferAlignment = true

VkPhysicalDeviceVertexAttributeDivisorFeaturesKHR:
--------------------------------------------------
	vertexAttributeInstanceRateDivisor     = true
	vertexAttributeInstanceRateZeroDivisor = false

VkPhysicalDeviceVulkan11Features:
---------------------------------
	storageBuffer16BitAccess           = true
	uniformAndStorageBuffer16BitAccess = true
	storagePushConstant16              = true
	storageInputOutput16               = false
	multiview                          = true
	multiviewGeometryShader            = false
	multiviewTessellationShader        = false
	variablePointersStorageBuffer      = true
	variablePointers                   = false
	protectedMemory                    = false
	samplerYcbcrConversion             = true
	shaderDrawParameters               = false

VkPhysicalDeviceVulkan12Features:
---------------------------------
	samplerMirrorClampToEdge                           = true
	drawIndirectCount                                  = false
	storageBuffer8BitAccess                            = true
	uniformAndStorageBuffer8BitAccess                  = true
	storagePushConstant8                               = true
	shaderBufferInt64Atomics                           = false
	shaderSharedInt64Atomics                           = false
	shaderFloat16                                      = false
	shaderInt8                                         = false
	descriptorIndexing                                 = false
	shaderInputAttachmentArrayDynamicIndexing          = false
	shaderUniformTexelBufferArrayDynamicIndexing       = false
	shaderStorageTexelBufferArrayDynamicIndexing       = false
	shaderUniformBufferArrayNonUniformIndexing         = false
	shaderSampledImageArrayNonUniformIndexing          = false
	shaderStorageBufferArrayNonUniformIndexing         = false
	shaderStorageImageArrayNonUniformIndexing          = false
	shaderInputAttachmentArrayNonUniformIndexing       = false
	shaderUniformTexelBufferArrayNonUniformIndexing    = false
	shaderStorageTexelBufferArrayNonUniformIndexing    = false
	descriptorBindingUniformBufferUpdateAfterBind      = false
	descriptorBindingSampledImageUpdateAfterBind       = false
	descriptorBindingStorageImageUpdateAfterBind       = false
	descriptorBindingStorageBufferUpdateAfterBind      = false
	descriptorBindingUniformTexelBufferUpdateAfterBind = false
	descriptorBindingStorageTexelBufferUpdateAfterBind = false
	descriptorBindingUpdateUnusedWhilePending          = false
	descriptorBindingPartiallyBound                    = false
	descriptorBindingVariableDescriptorCount           = false
	runtimeDescriptorArray                             = false
	samplerFilterMinmax                                = false
	scalarBlockLayout                                  = true
	imagelessFramebuffer                               = true
	uniformBufferStandardLayout                        = true
	shaderSubgroupExtendedTypes                        = true
	separateDepthStencilLayouts                        = true
	hostQueryReset                                     = true
	timelineSemaphore                                  = true
	bufferDeviceAddress                                = true
	bufferDeviceAddressCaptureReplay                   = false
	bufferDeviceAddressMultiDevice                     = false
	vulkanMemoryModel                                  = true
	vulkanMemoryModelDeviceScope                       = true
	vulkanMemoryModelAvailabilityVisibilityChains      = true
	shaderOutputViewportIndex                          = false
	shaderOutputLayer                                  = false
	subgroupBroadcastDynamicId                         = true

VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR:
---------------------------------------------------------
	workgroupMemoryExplicitLayout                  = true
	workgroupMemoryExplicitLayoutScalarBlockLayout = false
	workgroupMemoryExplicitLayout8BitAccess        = true
	workgroupMemoryExplicitLayout16BitAccess       = true

VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR:
---------------------------------------------------------
	shaderZeroInitializeWorkgroupMemory = true


<Trunkated GPU1 log>
@eaglesemanation eaglesemanation added the bug Something isn't working label Aug 17, 2024
@matteliot
Copy link

I've got the same issue if I call maximize on impl Application::new:
return (retval, window::change_mode(window::Id::MAIN, iced::window::Mode::Fullscreen));

Anti-aliasing is set to false. Screen size is: 2560x1600 (or 1600x2560 doesn't matter)

Also on rpi5 bookworm 64bit wayland defaults, and it's a showstopper for me.

@tvolk131
Copy link
Contributor

+1, also experiencing this on Raspberry Pi 5 running Raspberry Pi OS when using wgpu renderer (but not with tiny-skia renderer). Fullscreen doesn't matter, if I resize the app's height or width above 2048 pixels it immediately crashes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants