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

Runtime panic due to missing GUI extensions on VM. #39

Open
H0mTanks opened this issue Mar 16, 2023 · 2 comments
Open

Runtime panic due to missing GUI extensions on VM. #39

H0mTanks opened this issue Mar 16, 2023 · 2 comments
Labels

Comments

@H0mTanks
Copy link

H0mTanks commented Mar 16, 2023

Describe the bug
Runtime panic due to missing GUI extensions on VM. There seem to be some missing vsync extensions on a windows 11 vm.

This might be due to a lack of hardware acceleration on the VM, therefore a lack of graphics drivers?

Being able to build in a VM environment would be a great help since it's a common environment for driver development and testing, and a project like this goes hand-in-hand with network drivers.

    Finished dev [unoptimized + debuginfo] target(s) in 1.69s
     Running `target\debug\mitm_proxy.exe`
thread 'main' panicked at 'failed to set vsync swap interval: Error { raw_code: None, raw_os_message: None, kind: NotSupported("swap contol extrensions are not supported") }', C:\Users\User\.cargo\registry\src\git.luolix.top-1ecc6299db9ec823\eframe-0.20.1\src\native\run.rs:415:18
stack backtrace:
   0: std::panicking::begin_panic_handler
             at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library\std\src\panicking.rs:575
   1: core::panicking::panic_fmt
             at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library\core\src\panicking.rs:64
   2: core::result::unwrap_failed
             at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library\core\src\result.rs:1791
   3: enum2$<core::result::Result<tuple$<>,glutin::error::Error> >::expect<tuple$<>,glutin::error::Error>
             at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483\library\core\src\result.rs:1070
   4: eframe::native::run::glow_integration::GlutinWindowContext::new
             at C:\Users\User\.cargo\registry\src\git.luolix.top-1ecc6299db9ec823\eframe-0.20.1\src\native\run.rs:413
   5: eframe::native::run::glow_integration::GlowWinitApp::create_glutin_windowed_context
             at C:\Users\User\.cargo\registry\src\git.luolix.top-1ecc6299db9ec823\eframe-0.20.1\src\native\run.rs:505
   6: eframe::native::run::glow_integration::GlowWinitApp::init_run_state
             at C:\Users\User\.cargo\registry\src\git.luolix.top-1ecc6299db9ec823\eframe-0.20.1\src\native\run.rs:521
   7: eframe::native::run::glow_integration::impl$2::on_event
             at C:\Users\User\.cargo\registry\src\git.luolix.top-1ecc6299db9ec823\eframe-0.20.1\src\native\run.rs:733
   8: eframe::native::run::run_and_return::closure$0<eframe::native::run::glow_integration::GlowWinitApp>
             at C:\Users\User\.cargo\registry\src\git.luolix.top-1ecc6299db9ec823\eframe-0.20.1\src\native\run.rs:140
   9: winit::platform_impl::platform::event_loop::impl$3::run_return::closure$0<enum2$<eframe::native::run::UserEvent>,eframe::native::run::run_and_return::closure_env$0<eframe::native::run::glow_integration::GlowWinitApp> >
             at C:\Users\User\.cargo\registry\src\git.luolix.top-1ecc6299db9ec823\winit-0.27.5\src\platform_impl\windows\event_loop.rs:254
  10: alloc::boxed::impl$46::call_mut<tuple$<enum2$<winit::event::Event<enum2$<eframe::native::run::UserEvent> > >,ref_mut$<enum2$<winit::event_loop::ControlFlow> > >,dyn$<core::ops::function::FnMut<tuple$<enum2$<winit::event::Event<enum2$<eframe::native::run::
             at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483\library\alloc\src\boxed.rs:2016
  11: winit::platform_impl::platform::event_loop::runner::impl$3::call_event_handler::closure$0<enum2$<eframe::native::run::UserEvent> >
             at C:\Users\User\.cargo\registry\src\git.luolix.top-1ecc6299db9ec823\winit-0.27.5\src\platform_impl\windows\event_loop\runner.rs:250
  12: core::panic::unwind_safe::impl$23::call_once<tuple$<>,winit::platform_impl::platform::event_loop::runner::impl$3::call_event_handler::closure_env$0<enum2$<eframe::native::run::UserEvent> > >
             at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483\library\core\src\panic\unwind_safe.rs:271
  13: std::panicking::try::do_call<core::panic::unwind_safe::AssertUnwindSafe<winit::platform_impl::platform::event_loop::runner::impl$3::call_event_handler::closure_env$0<enum2$<eframe::native::run::UserEvent> > >,tuple$<> >
             at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483\library\std\src\panicking.rs:483
  14: eframe::epi::impl$43::clone
  15: std::panicking::try<tuple$<>,core::panic::unwind_safe::AssertUnwindSafe<winit::platform_impl::platform::event_loop::runner::impl$3::call_event_handler::closure_env$0<enum2$<eframe::native::run::UserEvent> > > >
             at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483\library\std\src\panicking.rs:447
  16: std::panic::catch_unwind<core::panic::unwind_safe::AssertUnwindSafe<winit::platform_impl::platform::event_loop::runner::impl$3::call_event_handler::closure_env$0<enum2$<eframe::native::run::UserEvent> > >,tuple$<> >
             at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483\library\std\src\panic.rs:137
  17: winit::platform_impl::platform::event_loop::runner::EventLoopRunner<enum2$<eframe::native::run::UserEvent> >::catch_unwind<enum2$<eframe::native::run::UserEvent>,tuple$<>,winit::platform_impl::platform::event_loop::runner::impl$3::call_event_handler::clos
             at C:\Users\User\.cargo\registry\src\git.luolix.top-1ecc6299db9ec823\winit-0.27.5\src\platform_impl\windows\event_loop\runner.rs:157
  18: winit::platform_impl::platform::event_loop::runner::EventLoopRunner<enum2$<eframe::native::run::UserEvent> >::call_event_handler<enum2$<eframe::native::run::UserEvent> >
             at C:\Users\User\.cargo\registry\src\git.luolix.top-1ecc6299db9ec823\winit-0.27.5\src\platform_impl\windows\event_loop\runner.rs:242
  19: winit::platform_impl::platform::event_loop::runner::EventLoopRunner<enum2$<eframe::native::run::UserEvent> >::call_new_events<enum2$<eframe::native::run::UserEvent> >
             at C:\Users\User\.cargo\registry\src\git.luolix.top-1ecc6299db9ec823\winit-0.27.5\src\platform_impl\windows\event_loop\runner.rs:402
  20: winit::platform_impl::platform::event_loop::runner::EventLoopRunner<enum2$<eframe::native::run::UserEvent> >::move_state_to<enum2$<eframe::native::run::UserEvent> >
             at C:\Users\User\.cargo\registry\src\git.luolix.top-1ecc6299db9ec823\winit-0.27.5\src\platform_impl\windows\event_loop\runner.rs:312
  21: winit::platform_impl::platform::event_loop::runner::EventLoopRunner<enum2$<eframe::native::run::UserEvent> >::poll<enum2$<eframe::native::run::UserEvent> >
             at C:\Users\User\.cargo\registry\src\git.luolix.top-1ecc6299db9ec823\winit-0.27.5\src\platform_impl\windows\event_loop\runner.rs:206
  22: winit::platform_impl::platform::event_loop::EventLoop<enum2$<eframe::native::run::UserEvent> >::run_return<enum2$<eframe::native::run::UserEvent>,eframe::native::run::run_and_return::closure_env$0<eframe::native::run::glow_integration::GlowWinitApp> >
             at C:\Users\User\.cargo\registry\src\git.luolix.top-1ecc6299db9ec823\winit-0.27.5\src\platform_impl\windows\event_loop.rs:263
  23: winit::platform::run_return::impl$0::run_return<enum2$<eframe::native::run::UserEvent>,eframe::native::run::run_and_return::closure_env$0<eframe::native::run::glow_integration::GlowWinitApp> >
             at C:\Users\User\.cargo\registry\src\git.luolix.top-1ecc6299db9ec823\winit-0.27.5\src\platform\run_return.rs:62
  24: eframe::native::run::run_and_return<eframe::native::run::glow_integration::GlowWinitApp>
             at C:\Users\User\.cargo\registry\src\git.luolix.top-1ecc6299db9ec823\eframe-0.20.1\src\native\run.rs:107
  25: eframe::native::run::glow_integration::run_glow::closure$0
             at C:\Users\User\.cargo\registry\src\git.luolix.top-1ecc6299db9ec823\eframe-0.20.1\src\native\run.rs:852
  26: eframe::native::run::with_event_loop::closure$0<eframe::native::run::glow_integration::run_glow::closure_env$0>
             at C:\Users\User\.cargo\registry\src\git.luolix.top-1ecc6299db9ec823\eframe-0.20.1\src\native\run.rs:96
  27: std::thread::local::LocalKey<core::cell::RefCell<enum2$<core::option::Option<winit::event_loop::EventLoop<enum2$<eframe::native::run::UserEvent> > > > > >::try_with<core::cell::RefCell<enum2$<core::option::Option<winit::event_loop::EventLoop<enum2$<eframe
             at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483\library\std\src\thread\local.rs:446
  28: std::thread::local::LocalKey<core::cell::RefCell<enum2$<core::option::Option<winit::event_loop::EventLoop<enum2$<eframe::native::run::UserEvent> > > > > >::with<core::cell::RefCell<enum2$<core::option::Option<winit::event_loop::EventLoop<enum2$<eframe::na
             at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483\library\std\src\thread\local.rs:422
  29: eframe::native::run::with_event_loop<eframe::native::run::glow_integration::run_glow::closure_env$0>
             at C:\Users\User\.cargo\registry\src\git.luolix.top-1ecc6299db9ec823\eframe-0.20.1\src\native\run.rs:89
  30: eframe::native::run::glow_integration::run_glow
             at C:\Users\User\.cargo\registry\src\git.luolix.top-1ecc6299db9ec823\eframe-0.20.1\src\native\run.rs:845
  31: eframe::run_native
             at C:\Users\User\.cargo\registry\src\git.luolix.top-1ecc6299db9ec823\eframe-0.20.1\src\lib.rs:192
  32: mitm_proxy::main
             at .\mitm_proxy\src\main.rs:59
  33: core::ops::function::FnOnce::call_once<void (*)(),tuple$<> >
             at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483\library\core\src\ops\function.rs:507
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
error: process didn't exit successfully: `target\debug\mitm_proxy.exe` (exit code: 101)

To Reproduce
Steps to reproduce the behavior:

  1. Install a Windows 11 Hyper-V VM using Hyper-V manager.
  2. Build and run the project.

Expected behavior
The built project should run successfully.

Desktop (please complete the following information):

  • OS: Windows 11 Hyper-V VM

Additional context
I also built it on a machine with integrated graphics, worked fine. Although that isn't really representative of the VM case since an integrated machine still has the intel graphics driver.

@emanuele-em
Copy link
Owner

this is likely a egui problem, try to take a look at #2545

@emanuele-em emanuele-em added the invalid / unrelated This doesn't seem right label Mar 16, 2023
@sak96
Copy link
Contributor

sak96 commented Mar 25, 2023

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

No branches or pull requests

3 participants