rendervulkan: Fix UB caused by undersized struct definition #2036
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Taken from the upstream mesa definition here. Below is a "backtrace", or my best effort in trying to explain where it went wrong.
VK_ERROR_OUT_OF_DEVICE_MEMORY) because of these linesDRM_IOCTL_PRIME_HANDLE_TO_FDwhich results in -1 (EPERM (Operation not permitted))bo->flags & AMDGPU_GEM_CREATE_VM_ALWAYS_VALIDin particular)flagsgets set to0x660which is at leastRADEON_FLAG_NO_INTERPROCESS_SHARING | RADEON_FLAG_PREFER_LOCAL_BO. (I have yet to look at the disassembly for a reasonable explanation)wsi_infoin mesa comes from theVK_STRUCTURE_TYPE_WSI_MEMORY_ALLOCATE_INFO_MESAgamescope sets in these lineswsi_info->dma_buf_sync_fileis undefined because the gamescope struct does not have that field