gfx-rs / wgpu

A cross-platform, safe, pure-Rust graphics API.
https://wgpu.rs
Apache License 2.0
11.57k stars 859 forks source link

Upgrading android example from 0.16.3 to 0.17.2 causes process to hang #4785

Open FallingSnow opened 7 months ago

FallingSnow commented 7 months ago

Description Upgrading the android wgpu winit example from wgpu 0.16.3 to 0.17.2 causes the example to hang on get_current_texture.

Repro steps

git clone https://github.com/rust-mobile/rust-android-examples.git
cd rust-android-examples/agdk-winit-wgpu
cargo run --features=desktop     # See that events are constantly flowing in when you move the mouse
vim Cargo.toml                   # Upgrade wgpu to 0.17
cargo run --features=desktop     # The process should freeze and no longer report mouse movements

Expected vs observed behavior get_current_texture should return the current texture without blocking indefinitely.

Platform

Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz
[2023-11-27T06:10:08Z WARN  wgpu_hal::vulkan::instance] Disabling presentation on 'Intel(R) UHD Graphics 630 (CFL GT2)' (id 0x55e5b4b531b0) because of NV Optimus (on Linux)
[2023-11-27T06:10:08Z INFO  wgpu_hal::gles::egl] Max label length: 256
[2023-11-27T06:10:08Z INFO  wgpu_hal::gles::egl] Enabling GLES debug output
[2023-11-27T06:10:08Z INFO  wgpu_hal::gles::adapter] Vendor: Intel
[2023-11-27T06:10:08Z INFO  wgpu_hal::gles::adapter] Renderer: Mesa Intel(R) UHD Graphics 630 (CFL GT2)
[2023-11-27T06:10:08Z INFO  wgpu_hal::gles::adapter] Version: OpenGL ES 3.2 Mesa 23.2.1-arch1.2
[2023-11-27T06:10:08Z INFO  wgpu_hal::gles::adapter] SL version: OpenGL ES GLSL ES 3.20
[2023-11-27T06:10:08Z WARN  wgpu_hal::gles::adapter] Detected skylake derivative running on mesa i915. Clears to srgb textures will use manual shader clears.
[2023-11-27T06:10:08Z INFO  wgpu_core::instance] Adapter Vulkan AdapterInfo { name: "NVIDIA GeForce GTX 1650", vendor: 4318, device: 8081, device_type: DiscreteGpu, driver: "NVIDIA", driver_info: "545.29.02", backend: Vulkan }
teoxoy commented 7 months ago

Could you use git bisect to pinpoint the commit that caused this regression?