Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # 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

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants