pkgsrc-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: terminal emulator



It actually kinda works,

On Tue, 18 Jun 2024 at 13:14, Jonathan Perkin <jperkin%mnx.io@localhost> wrote:
>
> * On 2024-06-18 at 12:58 BST, Chavdar Ivanov wrote:
>
> >I built it. It now starts the window and one can see the initial
> >message, before crashing. It dumps core for me, but it seems unusable:
> >...
> >Reading symbols from /usr/pkg/bin/rio...
> >(No debugging symbols found in /usr/pkg/bin/rio)
>
> Check INSTALL_UNSTRIPPED and/or STRIP_DEBUG.

I tried placing these in the Makefile, to no avail -the resulting
image was stripped. However, I got a debug image running cargo in the
work directory; I only had to use it with
LD_LIBRARY_PATH=/usr/pkg/lib. When I run the debug version, I get:

$ rio-debug
xkbcommon: ERROR: couldn't find a Compose file for locale
"en_GB.UTF-8" (mapped to "en_GB.UTF-8")
thread 'main' panicked at
/usr/pkgsrc/wip/rio/work/rio-0.1.1/sugarloaf/src/context/mod.rs:92:55:
called `Result::unwrap()` on an `Err` value: CreateSurfaceError {
inner: Hal(FailedToCreateSurfaceForAnyBackend({})) }
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

I don't get a rust backtrace with RUST_BACKTRACE=full, as it doesn't
ever complete - it creates the window which contains a rectangle from
the terminal window I am starting it from and eventually freezes, I
have to let the wm kill it.

If I run the debug version under gdb, the trace is as follows:
------
(gdb) thread apply all bt

Thread 10 (LWP 3873 of process 3339 "notify-rs kqueu"):
#0  0x000075b572de03aa in _sys___kevent100 () from /usr/lib/libc.so.12
#1  0x000075b5731d7857 in __kevent100 () from /usr/lib/libpthread.so.1
#2  0x000075b572e1f9c5 in __kevent50 () from /usr/lib/libc.so.12
#3  0x00000000008c4c02 in
mio::sys::unix::selector::kqueue::Selector::select
(self=0x75b56f5fe688, events=0x75b56f5fe550, timeout=...) at
src/sys/unix/selector/kqueue.rs:108
#4  0x00000000008c4571 in mio::poll::Poll::poll (self=0x75b56f5fe680,
events=0x75b56f5fe550, timeout=...) at src/poll.rs:426
#5  0x00000000008b16ec in notify::kqueue::EventLoop::event_loop_thread
(self=...) at src/kqueue.rs:88
#6  0x00000000008b165f in notify::kqueue::{impl#0}::run::{closure#0}
() at src/kqueue.rs:81
#7  0x0000000000887986 in
std::sys_common::backtrace::__rust_begin_short_backtrace<notify::kqueue::{impl#0}::run::{closure_env#0},
()> (f=<error reading variable: Cannot access memory at address 0xa>)
at /usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/std/src/sys_common/backtrace.rs:155
#8  0x000000000088a300 in
std::thread::{impl#0}::spawn_unchecked_::{closure#1}::{closure#0}<notify::kqueue::{impl#0}::run::{closure_env#0},
()> () at /usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/std/src/thread/mod.rs:528
#9  0x00000000008bdd04 in
core::panic::unwind_safe::{impl#23}::call_once<(),
std::thread::{impl#0}::spawn_unchecked_::{closure#1}::{closure_env#0}<notify::kqueue::{impl#0}::run::{closure_env#0},
()>> (self=...) at
/usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/core/src/panic/unwind_safe.rs:272
#10 0x00000000008ad204 in
std::panicking::try::do_call<core::panic::unwind_safe::AssertUnwindSafe<std::thread::{impl#0}::spawn_unchecked_::{closure#1}::{closure_env#0}<notify::kqueue::{impl#0}::run::{closure_env#0},
()>>, ()> (data=0x75b56f5fe980) at
/usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/std/src/panicking.rs:552
#11 0x00000000008af4fb in __rust_try ()
#12 0x00000000008ad068 in std::panicking::try<(),
core::panic::unwind_safe::AssertUnwindSafe<std::thread::{impl#0}::spawn_unchecked_::{closure#1}::{closure_env#0}<notify::kqueue::{impl#0}::run::{closure_env#0},
()>>> (f=...) at
/usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/std/src/panicking.rs:516
#13 0x000000000088a11c in
std::panic::catch_unwind<core::panic::unwind_safe::AssertUnwindSafe<std::thread::{impl#0}::spawn_unchecked_::{closure#1}::{closure_env#0}<notify::kqueue::{impl#0}::run::{closure_env#0},
()>>, ()> (f=<error reading variable: Cannot access memory at address
0x0>) at /usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/std/src/panic.rs:146
#14 std::thread::{impl#0}::spawn_unchecked_::{closure#1}<notify::kqueue::{impl#0}::run::{closure_env#0},
()> () at /usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/std/src/thread/mod.rs:527
#15 0x000000000088d51f in
core::ops::function::FnOnce::call_once<std::thread::{impl#0}::spawn_unchecked_::{closure_env#1}<notify::kqueue::{impl#0}::run::{closure_env#0},
()>, ()> () at /usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/core/src/ops/function.rs:250
#16 0x000000000253a8b5 in
std::sys::pal::unix::thread::Thread::new::thread_start::h3d43ae00a76054ec
()
#17 0x000075b5731dc145 in ?? () from /usr/lib/libpthread.so.1
#18 0x000075b572e31590 in ?? () from /usr/lib/libc.so.12
#19 0x0000000000000000 in ?? ()

Thread 7 (LWP 4392 of process 3339 "tokio-runtime-w"):
#0  0x000075b572e48c6a in ___lwp_park60 () from /usr/lib/libc.so.12
#1  0x0000000002523b11 in std::thread::park::h97a3ad7f2bd32b8a ()
#2  0x0000000000626355 in
std::sync::mpmc::context::Context::wait_until (self=0x75b5715fdcc8,
deadline=...) at
/usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/std/src/sync/mpmc/context.rs:139
#3  0x000000000071131a in
std::sync::mpmc::list::{impl#3}::recv::{closure#1}<core::result::Result<notify::event::Event,
notify::error::Error>> (cx=0x75b5715fdcc8) at
/usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/std/src/sync/mpmc/list.rs:444
#4  0x0000000000671286 in
std::sync::mpmc::context::{impl#0}::with::{closure#0}<std::sync::mpmc::list::{impl#3}::recv::{closure_env#1}<core::result::Result<notify::event::Event,
notify::error::Error>>, ()> (cx=<optimized out>, cx=<optimized out>)
at /usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/std/src/sync/mpmc/context.rs:50
#5  std::sync::mpmc::context::{impl#0}::with::{closure#1}<std::sync::mpmc::list::{impl#3}::recv::{closure_env#1}<core::result::Result<notify::event::Event,
notify::error::Error>>, ()> (cell=0x75b571dd4b48) at
/usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/std/src/sync/mpmc/context.rs:58
#6  0x00000000007cda3b in
std::thread::local::LocalKey<core::cell::Cell<core::option::Option<std::sync::mpmc::context::Context>>>::try_with<core::cell::Cell<core::option::Option<std::sync::mpmc::context::Context>>,
std::sync::mpmc::context::{impl#0}::with::{closure_env#1}<std::sync::mpmc::list::{impl#3}::recv::{closure_env#1}<core::result::Result<notify::event::Event,
notify::error::Error>>, ()>, ()> (self=0x33e4a00, f=...) at
/usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/std/src/thread/local.rs:284
#7  0x000000000066f6aa in
std::sync::mpmc::context::Context::with<std::sync::mpmc::list::{impl#3}::recv::{closure_env#1}<core::result::Result<notify::event::Event,
notify::error::Error>>, ()> (f=...) at
/usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/std/src/sync/mpmc/context.rs:53
#8  0x00000000007111d3 in
std::sync::mpmc::list::Channel<core::result::Result<notify::event::Event,
notify::error::Error>>::recv<core::result::Result<notify::event::Event,
notify::error::Error>> (self=0x75b571a9c200, deadline=...) at
/usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/std/src/sync/mpmc/list.rs:434
#9  0x000000000065767f in
std::sync::mpmc::Receiver<core::result::Result<notify::event::Event,
notify::error::Error>>::recv<core::result::Result<notify::event::Event,
notify::error::Error>> (self=0x75b5715fe3f0) at
/usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/std/src/sync/mpmc/mod.rs:307
#10 0x0000000000797f3b in
std::sync::mpsc::Receiver<core::result::Result<notify::event::Event,
notify::error::Error>>::recv<core::result::Result<notify::event::Event,
notify::error::Error>> (self=<optimized out>) at
/usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/std/src/sync/mpsc/mod.rs:849
#11 std::sync::mpsc::{impl#15}::next<core::result::Result<notify::event::Event,
notify::error::Error>> (self=0x75b5715fe3f0) at
/usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/std/src/sync/mpsc/mod.rs:1075
#12 0x000000000076f9c4 in
rio::watcher::configuration_file_updates::{async_block#0}<std::path::PathBuf,
rio_backend::event::EventProxy> () at
frontends/rioterm/src/watcher.rs:33
#13 0x00000000006e8659 in
tokio::runtime::task::core::{impl#6}::poll::{closure#0}<rio::watcher::configuration_file_updates::{async_block_env#0}<std::path::PathBuf,
rio_backend::event::EventProxy>,
alloc::sync::Arc<tokio::runtime::scheduler::multi_thread::handle::Handle,
alloc::alloc::Global>> (ptr=0x75b572a13a30) at
/usr/pkgsrc/wip/rio/work/vendor/tokio-1.37.0/src/runtime/task/core.rs:328
#14 0x00000000006e8076 in
tokio::loom::std::unsafe_cell::UnsafeCell<tokio::runtime::task::core::Stage<rio::watcher::configuration_file_updates::{async_block_env#0}<std::path::PathBuf,
rio_backend::event::EventProxy>>>::with_mut<tokio::runtime::task::core::Stage<rio::watcher::configuration_file_updates::{async_block_env#0}<std::path::PathBuf,
rio_backend::event::EventProxy>>, core::task::poll::Poll<()>,
tokio::runtime::task::core::{impl#6}::poll::{closure_env#0}<rio::watcher::configuration_file_updates::{async_block_env#0}<std::path::PathBuf,
rio_backend::event::EventProxy>,
alloc::sync::Arc<tokio::runtime::scheduler::multi_thread::handle::Handle,
alloc::alloc::Global>>> (self=0x75b572a13a30, f=...) at
/usr/pkgsrc/wip/rio/work/vendor/tokio-1.37.0/src/loom/std/unsafe_cell.rs:16
#15 tokio::runtime::task::core::Core<rio::watcher::configuration_file_updates::{async_block_env#0}<std::path::PathBuf,
rio_backend::event::EventProxy>,
alloc::sync::Arc<tokio::runtime::scheduler::multi_thread::handle::Handle,
alloc::alloc::Global>>::poll<rio::watcher::configuration_file_updates::{async_block_env#0}<std::path::PathBuf,
rio_backend::event::EventProxy>,
alloc::sync::Arc<tokio::runtime::scheduler::multi_thread::handle::Handle,
alloc::alloc::Global>> (self=0x75b572a13a20, cx=...) at
/usr/pkgsrc/wip/rio/work/vendor/tokio-1.37.0/src/runtime/task/core.rs:317
#16 0x00000000006e3c2b in
tokio::runtime::task::harness::poll_future::{closure#0}<rio::watcher::configuration_file_updates::{async_block_env#0}<std::path::PathBuf,
rio_backend::event::EventProxy>,
alloc::sync::Arc<tokio::runtime::scheduler::multi_thread::handle::Handle,
alloc::alloc::Global>> () at
/usr/pkgsrc/wip/rio/work/vendor/tokio-1.37.0/src/runtime/task/harness.rs:485
#17 0x0000000000611f38 in
core::panic::unwind_safe::{impl#23}::call_once<core::task::poll::Poll<()>,
tokio::runtime::task::harness::poll_future::{closure_env#0}<rio::watcher::configuration_file_updates::{async_block_env#0}<std::path::PathBuf,
rio_backend::event::EventProxy>,
alloc::sync::Arc<tokio::runtime::scheduler::multi_thread::handle::Handle,
alloc::alloc::Global>>> (self=...) at
/usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/core/src/panic/unwind_safe.rs:272
#18 0x00000000006c0b71 in
std::panicking::try::do_call<core::panic::unwind_safe::AssertUnwindSafe<tokio::runtime::task::harness::poll_future::{closure_env#0}<rio::watcher::configuration_file_updates::{async_block_env#0}<std::path::PathBuf,
rio_backend::event::EventProxy>,
alloc::sync::Arc<tokio::runtime::scheduler::multi_thread::handle::Handle,
alloc::alloc::Global>>>, core::task::poll::Poll<()>>
(data=0x75b5715fe8b8) at
/usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/std/src/panicking.rs:552
#19 0x00000000006c17bb in __rust_try ()
#20 0x00000000006bfa18 in
std::panicking::try<core::task::poll::Poll<()>,
core::panic::unwind_safe::AssertUnwindSafe<tokio::runtime::task::harness::poll_future::{closure_env#0}<rio::watcher::configuration_file_updates::{async_block_env#0}<std::path::PathBuf,
rio_backend::event::EventProxy>,
alloc::sync::Arc<tokio::runtime::scheduler::multi_thread::handle::Handle,
alloc::alloc::Global>>>> (f=...) at
/usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/std/src/panicking.rs:516
--Type <RET> for more, q to quit, c to continue without paging--c
#21 0x00000000005dc1dd in
std::panic::catch_unwind<core::panic::unwind_safe::AssertUnwindSafe<tokio::runtime::task::harness::poll_future::{closure_env#0}<rio::watcher::configuration_file_updates::{async_block_env#0}<std::path::PathBuf,
rio_backend::event::EventProxy>,
alloc::sync::Arc<tokio::runtime::scheduler::multi_thread::handle::Handle,
alloc::alloc::Global>>>, core::task::poll::Poll<()>> (f=<error reading
variable: Cannot access memory at address 0x0>) at
/usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/std/src/panic.rs:146
#22 0x00000000006e3010 in
tokio::runtime::task::harness::poll_future<rio::watcher::configuration_file_updates::{async_block_env#0}<std::path::PathBuf,
rio_backend::event::EventProxy>,
alloc::sync::Arc<tokio::runtime::scheduler::multi_thread::handle::Handle,
alloc::alloc::Global>> (core=0x75b572a13a20, cx=...) at
/usr/pkgsrc/wip/rio/work/vendor/tokio-1.37.0/src/runtime/task/harness.rs:473
#23 0x00000000006e4049 in
tokio::runtime::task::harness::Harness<rio::watcher::configuration_file_updates::{async_block_env#0}<std::path::PathBuf,
rio_backend::event::EventProxy>,
alloc::sync::Arc<tokio::runtime::scheduler::multi_thread::handle::Handle,
alloc::alloc::Global>>::poll_inner<rio::watcher::configuration_file_updates::{async_block_env#0}<std::path::PathBuf,
rio_backend::event::EventProxy>,
alloc::sync::Arc<tokio::runtime::scheduler::multi_thread::handle::Handle,
alloc::alloc::Global>> (self=0x75b5715feae0) at
/usr/pkgsrc/wip/rio/work/vendor/tokio-1.37.0/src/runtime/task/harness.rs:208
#24 0x00000000006e4c33 in
tokio::runtime::task::harness::Harness<rio::watcher::configuration_file_updates::{async_block_env#0}<std::path::PathBuf,
rio_backend::event::EventProxy>,
alloc::sync::Arc<tokio::runtime::scheduler::multi_thread::handle::Handle,
alloc::alloc::Global>>::poll<rio::watcher::configuration_file_updates::{async_block_env#0}<std::path::PathBuf,
rio_backend::event::EventProxy>,
alloc::sync::Arc<tokio::runtime::scheduler::multi_thread::handle::Handle,
alloc::alloc::Global>> (self=...) at
/usr/pkgsrc/wip/rio/work/vendor/tokio-1.37.0/src/runtime/task/harness.rs:153
#25 0x00000000006e256b in
tokio::runtime::task::raw::poll<rio::watcher::configuration_file_updates::{async_block_env#0}<std::path::PathBuf,
rio_backend::event::EventProxy>,
alloc::sync::Arc<tokio::runtime::scheduler::multi_thread::handle::Handle,
alloc::alloc::Global>> (ptr=...) at
/usr/pkgsrc/wip/rio/work/vendor/tokio-1.37.0/src/runtime/task/raw.rs:271
#26 0x000000000084dc17 in tokio::runtime::task::raw::RawTask::poll
(self=...) at src/runtime/task/raw.rs:201
#27 0x0000000000840862 in
tokio::runtime::task::LocalNotified<alloc::sync::Arc<tokio::runtime::scheduler::multi_thread::handle::Handle,
alloc::alloc::Global>>::run<alloc::sync::Arc<tokio::runtime::scheduler::multi_thread::handle::Handle,
alloc::alloc::Global>> (self=...) at src/runtime/task/mod.rs:427
#28 0x0000000000826f8d in
tokio::runtime::scheduler::multi_thread::worker::{impl#1}::run_task::{closure#0}
() at src/runtime/scheduler/multi_thread/worker.rs:576
#29 0x0000000000826de4 in
tokio::runtime::coop::with_budget<core::result::Result<alloc::boxed::Box<tokio::runtime::scheduler::multi_thread::worker::Core,
alloc::alloc::Global>, ()>,
tokio::runtime::scheduler::multi_thread::worker::{impl#1}::run_task::{closure_env#0}>
(budget=..., f=...) at src/runtime/coop.rs:107
#30 tokio::runtime::coop::budget<core::result::Result<alloc::boxed::Box<tokio::runtime::scheduler::multi_thread::worker::Core,
alloc::alloc::Global>, ()>,
tokio::runtime::scheduler::multi_thread::worker::{impl#1}::run_task::{closure_env#0}>
(f=...) at src/runtime/coop.rs:73
#31 tokio::runtime::scheduler::multi_thread::worker::Context::run_task
(self=0x75b5715ff158, task=..., core=0x75b572c67230) at
src/runtime/scheduler/multi_thread/worker.rs:575
#32 0x0000000000826481 in
tokio::runtime::scheduler::multi_thread::worker::Context::run
(self=0x75b5715ff158, core=0x75b572c67230) at
src/runtime/scheduler/multi_thread/worker.rs:526
#33 0x00000000008260d9 in
tokio::runtime::scheduler::multi_thread::worker::run::{closure#0}::{closure#0}
() at src/runtime/scheduler/multi_thread/worker.rs:491
#34 0x0000000000854980 in
tokio::runtime::context::scoped::Scoped<tokio::runtime::scheduler::Context>::set<tokio::runtime::scheduler::Context,
tokio::runtime::scheduler::multi_thread::worker::run::{closure#0}::{closure_env#0},
()> (self=0x75b571dd4890, t=0x75b5715ff150, f=...) at
src/runtime/context/scoped.rs:40
#35 0x00000000008704bb in
tokio::runtime::context::set_scheduler::{closure#0}<(),
tokio::runtime::scheduler::multi_thread::worker::run::{closure#0}::{closure_env#0}>
(c=0x75b571dd4858) at src/runtime/context.rs:176
#36 0x000000000086a130 in
std::thread::local::LocalKey<tokio::runtime::context::Context>::try_with<tokio::runtime::context::Context,
tokio::runtime::context::set_scheduler::{closure_env#0}<(),
tokio::runtime::scheduler::multi_thread::worker::run::{closure#0}::{closure_env#0}>,
()> (self=0x33f4f70, f=...) at
/usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/std/src/thread/local.rs:284
#37 0x000000000086990b in
std::thread::local::LocalKey<tokio::runtime::context::Context>::with<tokio::runtime::context::Context,
tokio::runtime::context::set_scheduler::{closure_env#0}<(),
tokio::runtime::scheduler::multi_thread::worker::run::{closure#0}::{closure_env#0}>,
()> (self=0x33f4f70, f=<error reading variable: Cannot access memory
at address 0x0>) at
/usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/std/src/thread/local.rs:260
#38 0x0000000000870444 in tokio::runtime::context::set_scheduler<(),
tokio::runtime::scheduler::multi_thread::worker::run::{closure#0}::{closure_env#0}>
(v=0x75b5715ff150, f=...) at src/runtime/context.rs:176
#39 0x0000000000825fe1 in
tokio::runtime::scheduler::multi_thread::worker::run::{closure#0} ()
at src/runtime/scheduler/multi_thread/worker.rs:486
#40 0x000000000085f648 in
tokio::runtime::context::runtime::enter_runtime<tokio::runtime::scheduler::multi_thread::worker::run::{closure_env#0},
()> (handle=0x75b5715ff358, allow_block_in_place=true, f=...) at
src/runtime/context/runtime.rs:65
#41 0x0000000000825d7c in
tokio::runtime::scheduler::multi_thread::worker::run (worker=...) at
src/runtime/scheduler/multi_thread/worker.rs:478
#42 0x0000000000825beb in
tokio::runtime::scheduler::multi_thread::worker::{impl#0}::launch::{closure#0}
() at src/runtime/scheduler/multi_thread/worker.rs:447
#43 0x0000000000855f9e in
tokio::runtime::blocking::task::{impl#2}::poll<tokio::runtime::scheduler::multi_thread::worker::{impl#0}::launch::{closure_env#0},
()> (self=..., _cx=0x75b5715ff4e8) at src/runtime/blocking/task.rs:42
#44 0x000000000082b30c in
tokio::runtime::task::core::{impl#6}::poll::{closure#0}<tokio::runtime::blocking::task::BlockingTask<tokio::runtime::scheduler::multi_thread::worker::{impl#0}::launch::{closure_env#0}>,
tokio::runtime::blocking::schedule::BlockingSchedule>
(ptr=0x75b572c5c4a8) at src/runtime/task/core.rs:328
#45 0x000000000082b08a in
tokio::loom::std::unsafe_cell::UnsafeCell<tokio::runtime::task::core::Stage<tokio::runtime::blocking::task::BlockingTask<tokio::runtime::scheduler::multi_thread::worker::{impl#0}::launch::{closure_env#0}>>>::with_mut<tokio::runtime::task::core::Stage<tokio::runtime::blocking::task::BlockingTask<tokio::runtime::scheduler::multi_thread::worker::{impl#0}::launch::{closure_env#0}>>,
core::task::poll::Poll<()>,
tokio::runtime::task::core::{impl#6}::poll::{closure_env#0}<tokio::runtime::blocking::task::BlockingTask<tokio::runtime::scheduler::multi_thread::worker::{impl#0}::launch::{closure_env#0}>,
tokio::runtime::blocking::schedule::BlockingSchedule>>
(self=0x75b572c5c4a8, f=...) at src/loom/std/unsafe_cell.rs:16
#46 tokio::runtime::task::core::Core<tokio::runtime::blocking::task::BlockingTask<tokio::runtime::scheduler::multi_thread::worker::{impl#0}::launch::{closure_env#0}>,
tokio::runtime::blocking::schedule::BlockingSchedule>::poll<tokio::runtime::blocking::task::BlockingTask<tokio::runtime::scheduler::multi_thread::worker::{impl#0}::launch::{closure_env#0}>,
tokio::runtime::blocking::schedule::BlockingSchedule>
(self=0x75b572c5c4a0, cx=...) at src/runtime/task/core.rs:317
#47 0x00000000008722ef in
tokio::runtime::task::harness::poll_future::{closure#0}<tokio::runtime::blocking::task::BlockingTask<tokio::runtime::scheduler::multi_thread::worker::{impl#0}::launch::{closure_env#0}>,
tokio::runtime::blocking::schedule::BlockingSchedule> () at
src/runtime/task/harness.rs:485
#48 0x000000000086c479 in
core::panic::unwind_safe::{impl#23}::call_once<core::task::poll::Poll<()>,
tokio::runtime::task::harness::poll_future::{closure_env#0}<tokio::runtime::blocking::task::BlockingTask<tokio::runtime::scheduler::multi_thread::worker::{impl#0}::launch::{closure_env#0}>,
tokio::runtime::blocking::schedule::BlockingSchedule>> (self=...) at
/usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/core/src/panic/unwind_safe.rs:272
#49 0x00000000008637f2 in
std::panicking::try::do_call<core::panic::unwind_safe::AssertUnwindSafe<tokio::runtime::task::harness::poll_future::{closure_env#0}<tokio::runtime::blocking::task::BlockingTask<tokio::runtime::scheduler::multi_thread::worker::{impl#0}::launch::{closure_env#0}>,
tokio::runtime::blocking::schedule::BlockingSchedule>>,
core::task::poll::Poll<()>> (data=0x75b5715ff678) at
/usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/std/src/panicking.rs:552
#50 0x0000000000868e8b in __rust_try ()
#51 0x0000000000863568 in
std::panicking::try<core::task::poll::Poll<()>,
core::panic::unwind_safe::AssertUnwindSafe<tokio::runtime::task::harness::poll_future::{closure_env#0}<tokio::runtime::blocking::task::BlockingTask<tokio::runtime::scheduler::multi_thread::worker::{impl#0}::launch::{closure_env#0}>,
tokio::runtime::blocking::schedule::BlockingSchedule>>> (f=...) at
/usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/std/src/panicking.rs:516
#52 0x00000000008698be in
std::panic::catch_unwind<core::panic::unwind_safe::AssertUnwindSafe<tokio::runtime::task::harness::poll_future::{closure_env#0}<tokio::runtime::blocking::task::BlockingTask<tokio::runtime::scheduler::multi_thread::worker::{impl#0}::launch::{closure_env#0}>,
tokio::runtime::blocking::schedule::BlockingSchedule>>,
core::task::poll::Poll<()>> (f=<error reading variable: Cannot access
memory at address 0x0>) at
/usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/std/src/panic.rs:146
#53 0x0000000000871dc1 in
tokio::runtime::task::harness::poll_future<tokio::runtime::blocking::task::BlockingTask<tokio::runtime::scheduler::multi_thread::worker::{impl#0}::launch::{closure_env#0}>,
tokio::runtime::blocking::schedule::BlockingSchedule>
(core=0x75b572c5c4a0, cx=...) at src/runtime/task/harness.rs:473
#54 0x0000000000870c02 in
tokio::runtime::task::harness::Harness<tokio::runtime::blocking::task::BlockingTask<tokio::runtime::scheduler::multi_thread::worker::{impl#0}::launch::{closure_env#0}>,
tokio::runtime::blocking::schedule::BlockingSchedule>::poll_inner<tokio::runtime::blocking::task::BlockingTask<tokio::runtime::scheduler::multi_thread::worker::{impl#0}::launch::{closure_env#0}>,
tokio::runtime::blocking::schedule::BlockingSchedule>
(self=0x75b5715ff8a0) at src/runtime/task/harness.rs:208
#55 0x0000000000870ac7 in
tokio::runtime::task::harness::Harness<tokio::runtime::blocking::task::BlockingTask<tokio::runtime::scheduler::multi_thread::worker::{impl#0}::launch::{closure_env#0}>,
tokio::runtime::blocking::schedule::BlockingSchedule>::poll<tokio::runtime::blocking::task::BlockingTask<tokio::runtime::scheduler::multi_thread::worker::{impl#0}::launch::{closure_env#0}>,
tokio::runtime::blocking::schedule::BlockingSchedule> (self=...) at
src/runtime/task/harness.rs:153
#56 0x000000000084de3d in
tokio::runtime::task::raw::poll<tokio::runtime::blocking::task::BlockingTask<tokio::runtime::scheduler::multi_thread::worker::{impl#0}::launch::{closure_env#0}>,
tokio::runtime::blocking::schedule::BlockingSchedule> (ptr=...) at
src/runtime/task/raw.rs:271
#57 0x000000000084dc17 in tokio::runtime::task::raw::RawTask::poll
(self=...) at src/runtime/task/raw.rs:201
#58 0x0000000000840927 in
tokio::runtime::task::UnownedTask<tokio::runtime::blocking::schedule::BlockingSchedule>::run<tokio::runtime::blocking::schedule::BlockingSchedule>
(self=...) at src/runtime/task/mod.rs:464
#59 0x0000000000843647 in tokio::runtime::blocking::pool::Task::run
(self=...) at src/runtime/blocking/pool.rs:159
#60 0x0000000000845cbb in tokio::runtime::blocking::pool::Inner::run
(self=0x75b572c60010, worker_thread_id=4) at
src/runtime/blocking/pool.rs:513
#61 0x00000000008459c4 in
tokio::runtime::blocking::pool::{impl#6}::spawn_thread::{closure#0} ()
at src/runtime/blocking/pool.rs:471
#62 0x000000000082c816 in
std::sys_common::backtrace::__rust_begin_short_backtrace<tokio::runtime::blocking::pool::{impl#6}::spawn_thread::{closure_env#0},
()> (f=<error reading variable: Cannot access memory at address 0x0>)
at /usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/std/src/sys_common/backtrace.rs:155
#63 0x000000000086dbc2 in
std::thread::{impl#0}::spawn_unchecked_::{closure#1}::{closure#0}<tokio::runtime::blocking::pool::{impl#6}::spawn_thread::{closure_env#0},
()> () at /usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/std/src/thread/mod.rs:528
#64 0x000000000086c512 in
core::panic::unwind_safe::{impl#23}::call_once<(),
std::thread::{impl#0}::spawn_unchecked_::{closure#1}::{closure_env#0}<tokio::runtime::blocking::pool::{impl#6}::spawn_thread::{closure_env#0},
()>> (self=...) at
/usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/core/src/panic/unwind_safe.rs:272
#65 0x0000000000863943 in
std::panicking::try::do_call<core::panic::unwind_safe::AssertUnwindSafe<std::thread::{impl#0}::spawn_unchecked_::{closure#1}::{closure_env#0}<tokio::runtime::blocking::pool::{impl#6}::spawn_thread::{closure_env#0},
()>>, ()> (data=0x75b5715ffd60) at
/usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/std/src/panicking.rs:552
#66 0x0000000000868e8b in __rust_try ()
#67 0x0000000000863631 in std::panicking::try<(),
core::panic::unwind_safe::AssertUnwindSafe<std::thread::{impl#0}::spawn_unchecked_::{closure#1}::{closure_env#0}<tokio::runtime::blocking::pool::{impl#6}::spawn_thread::{closure_env#0},
()>>> (f=...) at
/usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/std/src/panicking.rs:516
#68 0x000000000086d9cb in
std::panic::catch_unwind<core::panic::unwind_safe::AssertUnwindSafe<std::thread::{impl#0}::spawn_unchecked_::{closure#1}::{closure_env#0}<tokio::runtime::blocking::pool::{impl#6}::spawn_thread::{closure_env#0},
()>>, ()> (f=<error reading variable: Cannot access memory at address
0x0>) at /usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/std/src/panic.rs:146
#69 std::thread::{impl#0}::spawn_unchecked_::{closure#1}<tokio::runtime::blocking::pool::{impl#6}::spawn_thread::{closure_env#0},
()> () at /usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/std/src/thread/mod.rs:527
#70 0x0000000000847d3f in
core::ops::function::FnOnce::call_once<std::thread::{impl#0}::spawn_unchecked_::{closure_env#1}<tokio::runtime::blocking::pool::{impl#6}::spawn_thread::{closure_env#0},
()>, ()> () at /usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/core/src/ops/function.rs:250
#71 0x000000000253a8b5 in
std::sys::pal::unix::thread::Thread::new::thread_start::h3d43ae00a76054ec
()
#72 0x000075b5731dc145 in ?? () from /usr/lib/libpthread.so.1
#73 0x000075b572e31590 in ?? () from /usr/lib/libc.so.12
#74 0x0000000000200000 in ?? ()
#75 0x0000000000000000 in ?? ()

Thread 1 (LWP 3339 of process 3339 ""):
#0  0x000075b572e48c6a in ___lwp_park60 () from /usr/lib/libc.so.12
#1  0x000075b5731dab34 in pthread_cond_timedwait () from
/usr/lib/libpthread.so.1
#2  0x00000000008413c9 in
std::sys::sync::condvar::pthread::Condvar::wait (self=0x75b572c663a0,
mutex=0x75b572c66390) at
/usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/std/src/sys/sync/condvar/pthread.rs:117
#3  0x000000000082dcee in std::sync::condvar::Condvar::wait<()>
(self=0x75b572c663a0, guard=...) at
/usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/std/src/sync/condvar.rs:189
#4  0x0000000000858331 in tokio::runtime::park::Inner::park
(self=0x75b572c66390) at src/runtime/park.rs:116
#5  0x0000000000858f57 in
tokio::runtime::park::{impl#4}::park::{closure#0}
(park_thread=0x75b572cf6908) at src/runtime/park.rs:254
#6  0x00000000008590d6 in
tokio::runtime::park::{impl#4}::with_current::{closure#0}<tokio::runtime::park::{impl#4}::park::{closure_env#0},
()> (inner=0x75b572cf6908) at src/runtime/park.rs:268
#7  0x000000000086ad5e in
std::thread::local::LocalKey<tokio::runtime::park::ParkThread>::try_with<tokio::runtime::park::ParkThread,
tokio::runtime::park::{impl#4}::with_current::{closure_env#0}<tokio::runtime::park::{impl#4}::park::{closure_env#0},
()>, ()> (self=0x33f4408, f=...) at
/usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/std/src/thread/local.rs:284
#8  0x0000000000859096 in
tokio::runtime::park::CachedParkThread::with_current<tokio::runtime::park::{impl#4}::park::{closure_env#0},
()> (self=0x7f7fffd2cc46, f=...) at src/runtime/park.rs:268
#9  0x0000000000858ede in tokio::runtime::park::CachedParkThread::park
(self=0x7f7fffd2cc46) at src/runtime/park.rs:254
#10 0x0000000000859579 in
tokio::runtime::park::CachedParkThread::block_on<&mut
tokio::sync::oneshot::Receiver<()>> (self=0x7f7fffd2cc46,
f=0x7f7fffd2fbb0) at src/runtime/park.rs:285
#11 0x0000000000859859 in
tokio::runtime::context::blocking::BlockingRegionGuard::block_on<&mut
tokio::sync::oneshot::Receiver<()>> (self=0x7f7fffd2ccb6,
f=0x7f7fffd2fbb0) at src/runtime/context/blocking.rs:66
#12 0x0000000000855e7e in
tokio::runtime::blocking::shutdown::Receiver::wait
(self=0x7f7fffd2fbb0, timeout=...) at
src/runtime/blocking/shutdown.rs:67
#13 0x0000000000843fbf in
tokio::runtime::blocking::pool::BlockingPool::shutdown
(self=0x7f7fffd2fba8, timeout=...) at src/runtime/blocking/pool.rs:261
#14 0x000000000084439e in
tokio::runtime::blocking::pool::{impl#4}::drop (self=0x7f7fffd2fba8)
at src/runtime/blocking/pool.rs:278
#15 0x000000000084af37 in
core::ptr::drop_in_place<tokio::runtime::blocking::pool::BlockingPool>
() at /usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/core/src/ptr/mod.rs:515
#16 0x000000000084a874 in
core::ptr::drop_in_place<tokio::runtime::runtime::Runtime> () at
/usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/core/src/ptr/mod.rs:515
#17 0x000000000074ff87 in rio::main () at frontends/rioterm/src/main.rs:160
#18 0x000000000077d8eb in core::ops::function::FnOnce::call_once<fn()
-> core::result::Result<(), alloc::boxed::Box<dyn core::error::Error,
alloc::alloc::Global>>, ()> () at
/usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/core/src/ops/function.rs:250
#19 0x000000000074b96e in
std::sys_common::backtrace::__rust_begin_short_backtrace<fn() ->
core::result::Result<(), alloc::boxed::Box<dyn core::error::Error,
alloc::alloc::Global>>, core::result::Result<(), alloc::boxed::Box<dyn
core::error::Error, alloc::alloc::Global>>> (f=0x74fe00 <rio::main>)
at /usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/std/src/sys_common/backtrace.rs:155
#20 0x0000000000691361 in
std::rt::lang_start::{closure#0}<core::result::Result<(),
alloc::boxed::Box<dyn core::error::Error, alloc::alloc::Global>>> ()
at /usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/std/src/rt.rs:166
#21 0x0000000002537084 in std::panicking::try::ha26cb81663be4bbe ()
#22 0x000000000250a51b in std::rt::lang_start_internal::hda2a9bac586d7332 ()
#23 0x000000000069133a in std::rt::lang_start<core::result::Result<(),
alloc::boxed::Box<dyn core::error::Error, alloc::alloc::Global>>>
(main=0x74fe00 <rio::main>, argc=1, argv=0x7f7fffd32978, sigpipe=0) at
/usr/pkgsrc/wip/rust178/work/rustc-1.78.0-src/library/std/src/rt.rs:165
#24 0x000000000075003e in main ()
#25 0x00000000005c7375 in ___start ()
#26 0x00007f7ff76cb0d8 in ?? () from /usr/libexec/ld.elf_so
#27 0x0000000000000001 in ?? ()
......................

I could never get the debug version to actually work. The non-debug
version works if invoked like

rio --command /bin/sh

Then the window comes up, furst time with some initial message and
then directoy to the prompt. The terminal type is rio, which I can't
use when I tic rio.terminfo I've got from a few months ago, I get many
unknown fields. I can set TERM to xterm-256color, though.

From now on, I can run /bin/vi, that's ok. Almost anything else that
deals with the terminal crashes rio - e.g. any fancy shell like ksh,
ksh93, fish, elvish, zsh, nu or tmux immediately crashes rio.

If I use sudo, e.g. sudo zsh, that works, I get fully working root zsh
and  I can start any other shell as root, including tmux, where I can
then su back to my user account, which works as expected. So it is
some weird (orr not...) protection issue. Once under root, rio works
as expected, with the exception of the jagged lines I mentioned before
if one has weird prompt like from starship.

Weird.

>
> --
> Jonathan Perkin   -   mnx.io   -   pkgsrc.smartos.org
> Open Source Complete Cloud   www.tritondatacenter.com



--
----


Home | Main Index | Thread Index | Old Index