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

Random crash when filesystem is changed #145

Closed
Antidote opened this issue Dec 16, 2024 · 3 comments
Closed

Random crash when filesystem is changed #145

Antidote opened this issue Dec 16, 2024 · 3 comments

Comments

@Antidote
Copy link

When attempting to update the MusyX submodule in mario party 4 I ran into a fairly consistent crash, unfortunately I couldn't get a full backtrace but I was able to get this:

thread 'notify-rs debouncer loop' panicked at core/src/slice/sort/shared/smallsort.rs:865:5:
user-provided comparison function does not correctly implement a total order
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
thread 'notify-rs inotify loop' panicked at /home/runner/.cargo/git/checkouts/notify-0d883586d83a0811/128bf62/notify-debouncer-full/src/lib.rs:676:42:
called `Result::unwrap()` on an `Err` value: PoisonError { .. }
thread 'main' panicked at /home/runner/.cargo/git/checkouts/notify-0d883586d83a0811/128bf62/notify/src/inotify.rs:597:51:
called `Result::unwrap()` on an `Err` value: SendError { .. }

To recreate it's a simple matter of getting the latest commit to marioparty 4, going into extern/musyx and updating to latest HEAD on main, that should immediately cause a crash.

@Antidote
Copy link
Author

I managed to get a backtrace this time, it's definitely related to the fs monitor

2024-12-16T14:49:05.332120Z  INFO eframe: Both the glow and wgpu renderers are available. Using wgpu.    
2024-12-16T14:49:05.365058Z  INFO wgpu_hal::gles::egl: Using Wayland platform    
2024-12-16T14:49:05.378937Z  WARN wgpu_hal::gles::egl: Re-initializing Gles context due to Wayland window    
2024-12-16T14:49:05.386041Z  INFO wgpu_core::instance: Adapter Gl AdapterInfo { name: "AMD Radeon RX 6700 XT (radeonsi, navi22, LLVM 18.1.8, DRM 3.59, 6.12.4-arch1-1)", vendor: 4098, device: 0, device_type: Other, driver: "", driver_info: "4.6 (Core Profile) Mesa 24.3.1-arch1.3", backend: Gl }    
2024-12-16T14:49:05.386276Z  INFO wgpu_core::instance: Adapter Gl AdapterInfo { name: "AMD Radeon RX 6700 XT (radeonsi, navi22, LLVM 18.1.8, DRM 3.59, 6.12.4-arch1-1)", vendor: 4098, device: 0, device_type: Other, driver: "", driver_info: "4.6 (Core Profile) Mesa 24.3.1-arch1.3", backend: Gl }    
thread 'notify-rs debouncer loop' panicked at core/src/slice/sort/shared/smallsort.rs:865:5:
user-provided comparison function does not correctly implement a total order
stack backtrace:
   0: rust_begin_unwind
   1: core::panicking::panic_fmt
   2: core::slice::sort::shared::smallsort::panic_on_ord_violation
   3: core::slice::sort::stable::quicksort::quicksort
   4: core::slice::sort::stable::quicksort::quicksort
   5: core::slice::sort::stable::driftsort_main
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
thread 'notify-rs inotify loop' panicked at /home/runner/.cargo/git/checkouts/notify-0d883586d83a0811/128bf62/notify-debouncer-full/src/lib.rs:676:42:
called `Result::unwrap()` on an `Err` value: PoisonError { .. }
stack backtrace:
   0: rust_begin_unwind
   1: core::panicking::panic_fmt
   2: core::result::unwrap_failed
   3: <F as notify::EventHandler>::handle_event
   4: notify::inotify::EventLoop::handle_event
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
thread 'main' panicked at /home/runner/.cargo/git/checkouts/notify-0d883586d83a0811/128bf62/notify/src/inotify.rs:597:51:
called `Result::unwrap()` on an `Err` value: SendError { .. }
stack backtrace:
   0: rust_begin_unwind
   1: core::panicking::panic_fmt
   2: core::result::unwrap_failed
   3: <notify::inotify::INotifyWatcher as core::ops::drop::Drop>::drop
   4: core::ptr::drop_in_place<core::option::Option<notify_debouncer_full::Debouncer<notify::inotify::INotifyWatcher,notify_debouncer_full::cache::NoCache>>>
   5: objdiff::app::App::post_update
   6: <objdiff::app::App as eframe::epi::App>::update
   7: eframe::native::epi_integration::EpiIntegration::update
   8: <eframe::native::run::WinitAppWrapper<T> as winit::application::ApplicationHandler<eframe::native::winit_integration::UserEvent>>::window_event
   9: core::ops::function::impls::<impl core::ops::function::FnMut<A> for &mut F>::call_mut
  10: winit::platform_impl::linux::wayland::event_loop::EventLoop<T>::pump_events
  11: eframe::native::run::run_wgpu
  12: objdiff::run_eframe
  13: objdiff::main
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

@Antidote
Copy link
Author

Antidote commented Jan 1, 2025

This also affects windows.

@Antidote Antidote changed the title Crash when updating MusyX submodule in marioparty4 Random crash when filesystem is changed Jan 1, 2025
@encounter
Copy link
Owner

Updated to latest notify-rs, included in v2.7.0

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