Skip to content

Segfaults From Running Examples - Intel #2322

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

Closed
ztroop opened this issue Dec 27, 2021 · 2 comments
Closed

Segfaults From Running Examples - Intel #2322

ztroop opened this issue Dec 27, 2021 · 2 comments

Comments

@ztroop
Copy link

ztroop commented Dec 27, 2021

Description
I was reporting an issue in bevyengine/bevy#3449 and discovered that the underlying issue I'm experiencing is related to graphics. As suggested, I tried running some of the examples in wgpu and I'm seeing similar errors / segfaults.

System information
Linux 5.4.0-89-generic x86_64 Ubuntu 20.04.3 LTS

ztroop in ~/projects/wgpu/wgpu on master λ sudo dpkg -l | grep intel
ii  intel-media-va-driver:amd64                20.1.1+dfsg1-1                        amd64        VAAPI driver for the Intel GEN8+ Graphics family
ii  intel-microcode                            3.20210608.0ubuntu0.20.04.1           amd64        Processor microcode firmware for Intel CPUs
ii  libdrm-intel1:amd64                        2.4.105-3~20.04.2                     amd64        Userspace interface to intel-specific kernel DRM services -- runtime
ii  libdrm-intel1:i386                         2.4.105-3~20.04.2                     i386         Userspace interface to intel-specific kernel DRM services -- runtime
ii  xserver-xorg-video-intel                   2:2.99.917+git20200226-1              amd64        X.Org X server -- Intel i8xx, i9xx display driver
ztroop in ~/projects/wgpu/wgpu on master λ lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation UHD Graphics (rev 02)
ztroop in ~/projects/wgpu/wgpu on master λ sudo lshw -C display
  *-display
       description: VGA compatible controller
       product: UHD Graphics
       vendor: Intel Corporation
       physical id: 2
       bus info: pci@0000:00:02.0
       version: 02
       width: 64 bits
       clock: 33MHz
       capabilities: pciexpress msi pm vga_controller bus_master cap_list rom
       configuration: driver=i915 latency=0
       resources: irq:129 memory:b0000000-b0ffffff memory:a0000000-afffffff ioport:4000(size=64) memory:c0000-dffff

Repro steps
Other examples besides water also produce similar errors.

ztroop in ~/projects/wgpu/wgpu on master λ cargo run --example water
    Finished dev [unoptimized + debuginfo] target(s) in 0.06s
     Running `/home/ztroop/projects/wgpu/target/debug/examples/water`
VUID-VkDebugUtilsMessengerCreateInfoEXT-messageType-parameter(ERROR / SPEC): msgNum: 0 - vkCreateDebugUtilsMessengerEXT: value of pCreateInfo->messageType contains flag bits that are not recognized members of VkDebugUtilsMessageTypeFlagBitsEXT The Vulkan spec states: messageType must be a valid combination of VkDebugUtilsMessageTypeFlagBitsEXT values (https://www.khronos.org/registry/vulkan/specs/1.1-extensions/html/vkspec.html#VUID-VkDebugUtilsMessengerCreateInfoEXT-messageType-parameter)
    Objects: 1
        [0] 0, type: 0, name: NULL
Using Intel(R) UHD Graphics (CML GT2) (Vulkan)
[2021-12-27T19:29:45Z ERROR wgpu_hal::vulkan::instance] VALIDATION [VUID-VkRenderPassBeginInfo-framebuffer-03210 (0x0)]
    	VkRenderPassBeginInfo: Image view #0 created from an image with usage set as 0x16, but image info #0 used to create the framebuffer had usage set as 0x14 The Vulkan spec states: If framebuffer was created with a VkFramebufferCreateInfo::flags value that included VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT, each element of the pAttachments member of a VkRenderPassAttachmentBeginInfo structure included in the pNext chain must be a VkImageView of an image created with a value of VkImageCreateInfo::usage equal to the usage member of the corresponding element of VkFramebufferAttachmentsCreateInfo::pAttachments used to create framebuffer (https://www.khronos.org/registry/vulkan/specs/1.1-extensions/html/vkspec.html#VUID-VkRenderPassBeginInfo-framebuffer-03210)
[2021-12-27T19:29:45Z ERROR wgpu_hal::vulkan::instance] 	objects: (type: RENDER_PASS, hndl: 0x480000000048, name: ?)
[2021-12-27T19:29:45Z ERROR wgpu_hal::vulkan::instance] VALIDATION [VUID-VkRenderPassBeginInfo-framebuffer-03210 (0x0)]
    	VkRenderPassBeginInfo: Image view #1 created from an image with usage set as 0x26, but image info #1 used to create the framebuffer had usage set as 0x24 The Vulkan spec states: If framebuffer was created with a VkFramebufferCreateInfo::flags value that included VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT, each element of the pAttachments member of a VkRenderPassAttachmentBeginInfo structure included in the pNext chain must be a VkImageView of an image created with a value of VkImageCreateInfo::usage equal to the usage member of the corresponding element of VkFramebufferAttachmentsCreateInfo::pAttachments used to create framebuffer (https://www.khronos.org/registry/vulkan/specs/1.1-extensions/html/vkspec.html#VUID-VkRenderPassBeginInfo-framebuffer-03210)
[2021-12-27T19:29:45Z ERROR wgpu_hal::vulkan::instance] 	objects: (type: RENDER_PASS, hndl: 0x480000000048, name: ?)
[1]    63252 segmentation fault (core dumped)  cargo run --example water
@kvark
Copy link
Member

kvark commented Dec 28, 2021

If you catch the segfault in gdb, you could check/provide a stack trace. Here, it looks to be vulkan validation that is crashing, not wgpu. I bet if you update the vulkan validation package, it will start running properly (or if you run in release, just for a test).

@ztroop
Copy link
Author

ztroop commented Dec 29, 2021

I was using the most up to date software available in Ubuntu 20.04.3 LTS. I tried using a newer upstream kernel and mesa components that would help with vulkan functionality and couldn't get this to work. I did a bit more reading around i915, Vulkan and CML GT2 and determined that my best bet was to use a Linux distribution that's closer to upstream changes.

If there's anyone else who happens upon this issue, I ended up upgrading my system to a rolling release Linux distribution. That might sound extreme, but I have all the latest software and I'm able to run all the examples in wgpu without issue.

@ztroop ztroop closed this as completed Dec 29, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants