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

Linux/i3: screen artifacts and crash #116

Closed
theduke opened this issue Dec 7, 2019 · 4 comments
Closed

Linux/i3: screen artifacts and crash #116

theduke opened this issue Dec 7, 2019 · 4 comments
Labels
bug Something isn't working
Milestone

Comments

@theduke
Copy link

theduke commented Dec 7, 2019

On Linux, with the i3 tiling WM, iced does not work correctly.

When running a example or a custom project, the window shows weird black/white artifacts and the program crashes with a assertion failure after moving the mouse a round a bit.

thread 'main' panicked at 'assertion failed: `(left == right)`
  left: `0`,
 right: `1`', /home/theduke/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/wgpu-native-0.4.1/src/hub.rs:120:9
stack backtrace:
   0: backtrace::backtrace::libunwind::trace
             at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.37/src/backtrace/libunwind.rs:88
   1: backtrace::backtrace::trace_unsynchronized
             at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.37/src/backtrace/mod.rs:66
   2: std::sys_common::backtrace::_print_fmt
             at src/libstd/sys_common/backtrace.rs:76
   3: <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt
             at src/libstd/sys_common/backtrace.rs:60
   4: core::fmt::write
             at src/libcore/fmt/mod.rs:1030
   5: std::io::Write::write_fmt
             at src/libstd/io/mod.rs:1412
   6: std::sys_common::backtrace::_print
             at src/libstd/sys_common/backtrace.rs:64
   7: std::sys_common::backtrace::print
             at src/libstd/sys_common/backtrace.rs:49
   8: std::panicking::default_hook::{{closure}}
             at src/libstd/panicking.rs:196
   9: std::panicking::default_hook
             at src/libstd/panicking.rs:210
  10: std::panicking::rust_panic_with_hook
             at src/libstd/panicking.rs:473
  11: std::panicking::continue_panic_fmt
             at src/libstd/panicking.rs:380
  12: std::panicking::begin_panic_fmt
             at src/libstd/panicking.rs:335
  13: <wgpu_native::hub::Storage<T,I> as core::ops::index::Index<I>>::index
             at /home/theduke/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/wgpu-native-0.4.1/src/hub.rs:120
  14: wgpu_native::command::command_encoder_begin_render_pass::{{closure}}
             at /home/theduke/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/wgpu-native-0.4.1/src/command/mod.rs:261
  15: core::option::Option<T>::map
             at /rustc/4560ea788cb760f0a34127156c78e2552949f734/src/libcore/option.rs:447
  16: wgpu_native::command::command_encoder_begin_render_pass
             at /home/theduke/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/wgpu-native-0.4.1/src/command/mod.rs:259
  17: wgpu_command_encoder_begin_render_pass
             at /home/theduke/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/wgpu-native-0.4.1/src/command/mod.rs:734
  18: wgpu::CommandEncoder::begin_render_pass
             at /home/theduke/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/wgpu-0.4.0/src/lib.rs:1059
  19: iced_wgpu::renderer::Renderer::draw
             at ./wgpu/src/renderer.rs:94
  20: <iced_wgpu::renderer::Renderer as iced_native::renderer::windowed::Windowed>::draw
             at ./wgpu/src/renderer.rs:427
  21: iced_winit::application::Application::run::{{closure}}
             at ./winit/src/application.rs:254
  22: winit::platform_impl::platform::sticky_exit_callback
             at /home/theduke/.local/share/cargo/git/checkouts/winit-c2fdb27092aba5a7/709808e/src/platform_impl/linux/mod.rs:693
  23: winit::platform_impl::platform::x11::EventLoop<T>::run_return
             at /home/theduke/.local/share/cargo/git/checkouts/winit-c2fdb27092aba5a7/709808e/src/platform_impl/linux/x11/mod.rs:305
  24: winit::platform_impl::platform::x11::EventLoop<T>::run
             at /home/theduke/.local/share/cargo/git/checkouts/winit-c2fdb27092aba5a7/709808e/src/platform_impl/linux/x11/mod.rs:399
  25: winit::platform_impl::platform::EventLoop<T>::run
             at /home/theduke/.local/share/cargo/git/checkouts/winit-c2fdb27092aba5a7/709808e/src/platform_impl/linux/mod.rs:640
  26: winit::event_loop::EventLoop<T>::run
             at /home/theduke/.local/share/cargo/git/checkouts/winit-c2fdb27092aba5a7/709808e/src/event_loop.rs:148
  27: iced_winit::application::Application::run
             at ./winit/src/application.rs:158
  28: iced::application::Application::run
             at ./src/application.rs:140
  29: iced::sandbox::Sandbox::run
             at ./src/sandbox.rs:128
  30: counter::main
             at examples/counter.rs:4
  31: std::rt::lang_start::{{closure}}
             at /rustc/4560ea788cb760f0a34127156c78e2552949f734/src/libstd/rt.rs:64
  32: std::rt::lang_start_internal::{{closure}}
             at src/libstd/rt.rs:49
  33: std::panicking::try::do_call
             at src/libstd/panicking.rs:292
  34: __rust_maybe_catch_panic
             at src/libpanic_unwind/lib.rs:80
  35: std::panicking::try
             at src/libstd/panicking.rs:271
  36: std::panic::catch_unwind
             at src/libstd/panic.rs:394
  37: std::rt::lang_start_internal
             at src/libstd/rt.rs:48
  38: std::rt::lang_start
             at /rustc/4560ea788cb760f0a34127156c78e2552949f734/src/libstd/rt.rs:64
  39: main
  40: __libc_start_main
  41: _start
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

OS: Arch Linux
DE: xorg + i3
Iced version: master

@theduke
Copy link
Author

theduke commented Dec 7, 2019

iced

@hecrj
Copy link
Member

hecrj commented Dec 7, 2019

Hey, sorry to hear that.

Do the wgpu examples work for you? Some people have been able to fix glitches and crashes by updating the graphics drivers, specially if you have an integrated device (see #98).

@hecrj hecrj added the bug Something isn't working label Dec 7, 2019
@hecrj hecrj added this to the 0.1.0 milestone Dec 7, 2019
@theduke
Copy link
Author

theduke commented Dec 7, 2019

Do the wgpu examples work for you?

Nope, seems to be a wgpu issue. Apparently doesn't work with Vulkan/AMD Ryzen 3000 APUs right now (my drivers are up to date).

@theduke
Copy link
Author

theduke commented Dec 7, 2019

Ah I got it working in the end.

For others in the same situation, the required Arch packages for a AMD Ryzen 5 3400G APU (Radeon Vega Graphics) are:

  • mesa
  • amdvlk
  • vulkan-radeon

@theduke theduke closed this as completed Dec 7, 2019
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

2 participants