Skip to content

Test flake in phd_tests::stats::instance_vcpu_stats #1072

@papertigers

Description

@papertigers

When I merged #1031 I noticed that we hit a test failure on the commit:
https://github.com/oxidecomputer/propolis/runs/66235331050

It looks like the instance failed to boot in a timely manner:

phd-runner: test phd_tests::stats::instance_vcpu_stats ... FAILED: timed out while waiting to boot
    
    Stack backtrace:
       0: anyhow::error::<impl anyhow::Error>::msg
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.100/src/backtrace.rs:27:14
       1: anyhow::__private::format_err
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.100/src/lib.rs:695:13
       2: phd_framework::test_vm::TestVm::wait_to_boot::{{closure}}
                 at ./oxidecomputer/propolis/phd-tests/framework/src/test_vm/mod.rs:890:23
       3: phd_tests::stats::instance_vcpu_stats::{{closure}}::{{closure}}
                 at ./oxidecomputer/propolis/phd-tests/tests/src/stats.rs:238:23
       4: <tracing::instrument::Instrumented<T> as core::future::future::Future>::poll
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tracing-0.1.40/src/instrument.rs:321:15
       5: phd_tests::stats::instance_vcpu_stats::{{closure}}
                 at ./oxidecomputer/propolis/phd-tests/tests/src/stats.rs:198:1
       6: <core::pin::Pin<P> as core::future::future::Future>::poll
                 at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/future/future.rs:133:9
       7: phd_testcase::TestCase::run::{{closure}}
                 at ./oxidecomputer/propolis/phd-tests/testcase/src/lib.rs:79:32
       8: phd_runner::execute::run_tests_with_ctx::{{closure}}::{{closure}}::{{closure}}
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/macros/select.rs:707:49
       9: <core::future::poll_fn::PollFn<F> as core::future::future::Future>::poll
                 at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/future/poll_fn.rs:151:9
      10: phd_runner::execute::run_tests_with_ctx::{{closure}}::{{closure}}
                 at ./oxidecomputer/propolis/phd-tests/runner/src/execute.rs:106:13
      11: tokio::runtime::task::core::Core<T,S>::poll::{{closure}}
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/task/core.rs:374:24
      12: tokio::loom::std::unsafe_cell::UnsafeCell<T>::with_mut
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/loom/std/unsafe_cell.rs:16:9
      13: tokio::runtime::task::core::Core<T,S>::poll
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/task/core.rs:363:30
      14: tokio::runtime::task::harness::poll_future::{{closure}}
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/task/harness.rs:535:30
      15: <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once
                 at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/panic/unwind_safe.rs:272:9
      16: std::panicking::catch_unwind::do_call
                 at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panicking.rs:589:40
      17: __rust_try
      18: std::panicking::catch_unwind
                 at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panicking.rs:552:19
      19: std::panic::catch_unwind
                 at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panic.rs:359:14
      20: tokio::runtime::task::harness::poll_future
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/task/harness.rs:523:18
      21: tokio::runtime::task::harness::Harness<T,S>::poll_inner
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/task/harness.rs:210:27
      22: tokio::runtime::task::harness::Harness<T,S>::poll
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/task/harness.rs:155:20
      23: tokio::runtime::task::raw::poll
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/task/raw.rs:337:13
      24: tokio::runtime::task::raw::RawTask::poll
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/task/raw.rs:267:18
      25: tokio::runtime::task::LocalNotified<S>::run
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/task/mod.rs:515:13
      26: tokio::runtime::scheduler::multi_thread::worker::Context::run_task::{{closure}}
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/multi_thread/worker.rs:643:18
      27: tokio::task::coop::with_budget
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/task/coop/mod.rs:167:5
      28: tokio::task::coop::budget
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/task/coop/mod.rs:133:5
      29: tokio::runtime::scheduler::multi_thread::worker::Context::run_task
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/multi_thread/worker.rs:634:9
      30: tokio::runtime::scheduler::multi_thread::worker::Context::run
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/multi_thread/worker.rs:567:29
      31: tokio::runtime::scheduler::multi_thread::worker::run::{{closure}}::{{closure}}
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/multi_thread/worker.rs:532:24
      32: tokio::runtime::context::scoped::Scoped<T>::set
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/context/scoped.rs:40:9
      33: tokio::runtime::context::set_scheduler::{{closure}}
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/context.rs:176:38
      34: std::thread::local::LocalKey<T>::try_with
                 at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/thread/local.rs:315:12
      35: std::thread::local::LocalKey<T>::with
                 at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/thread/local.rs:279:20
      36: tokio::runtime::context::set_scheduler
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/context.rs:176:17
      37: tokio::runtime::scheduler::multi_thread::worker::run::{{closure}}
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/multi_thread/worker.rs:527:9
      38: tokio::runtime::context::runtime::enter_runtime
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/context/runtime.rs:65:16
      39: tokio::runtime::scheduler::multi_thread::worker::run
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/multi_thread/worker.rs:519:5
      40: tokio::runtime::scheduler::multi_thread::worker::Launch::launch::{{closure}}
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/multi_thread/worker.rs:485:45
      41: <tokio::runtime::blocking::task::BlockingTask<T> as core::future::future::Future>::poll
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/blocking/task.rs:42:21
      42: tokio::runtime::task::core::Core<T,S>::poll::{{closure}}
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/task/core.rs:374:24
      43: tokio::loom::std::unsafe_cell::UnsafeCell<T>::with_mut
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/loom/std/unsafe_cell.rs:16:9
      44: tokio::runtime::task::core::Core<T,S>::poll
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/task/core.rs:363:30
      45: tokio::runtime::task::harness::poll_future::{{closure}}
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/task/harness.rs:535:30
      46: <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once
                 at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/panic/unwind_safe.rs:272:9
      47: std::panicking::catch_unwind::do_call
                 at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panicking.rs:589:40
      48: __rust_try
      49: std::panicking::catch_unwind
                 at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panicking.rs:552:19
      50: std::panic::catch_unwind
                 at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panic.rs:359:14
      51: tokio::runtime::task::harness::poll_future
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/task/harness.rs:523:18
      52: tokio::runtime::task::harness::Harness<T,S>::poll_inner
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/task/harness.rs:210:27
      53: tokio::runtime::task::harness::Harness<T,S>::poll
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/task/harness.rs:155:20
      54: tokio::runtime::task::raw::poll
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/task/raw.rs:337:13
      55: tokio::runtime::task::raw::RawTask::poll
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/task/raw.rs:267:18
      56: tokio::runtime::task::UnownedTask<S>::run
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/task/mod.rs:552:13
      57: tokio::runtime::blocking::pool::Task::run
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/blocking/pool.rs:161:19
      58: tokio::runtime::blocking::pool::Inner::run
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/blocking/pool.rs:516:22
      59: tokio::runtime::blocking::pool::Spawner::spawn_thread::{{closure}}
                 at /home/build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/blocking/pool.rs:474:47
      60: std::sys::backtrace::__rust_begin_short_backtrace
                 at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/sys/backtrace.rs:158:18
      61: std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}
                 at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/thread/mod.rs:559:17
      62: <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once
                 at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/panic/unwind_safe.rs:272:9
      63: std::panicking::catch_unwind::do_call
                 at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panicking.rs:589:40
      64: __rust_try
      65: std::panicking::catch_unwind
                 at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panicking.rs:552:19
      66: std::panic::catch_unwind
                 at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panic.rs:359:14
      67: std::thread::Builder::spawn_unchecked_::{{closure}}
                 at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/thread/mod.rs:557:30
      68: core::ops::function::FnOnce::call_once{{vtable.shim}}
                 at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/ops/function.rs:253:5
      69: <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once
                 at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/alloc/src/boxed.rs:1971:9
      70: std::sys::pal::unix::thread::Thread::new::thread_start
                 at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/sys/pal/unix/thread.rs:107:17
      71: _thrp_setup
      72: <unknown>
    file = phd-tests/runner/src/execute.rs
    line = 130
    target = phd_runner::execute

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions