Skip to content

log-keys - crash with "Illegal argument 4" on footpedal #53

@KG7QIN

Description

@KG7QIN

On the VEC Infinity-3-USB footpedal when in log-mode, pressing the right button causes a panic.

Here is the output of a RUST_BACKTRACE=full

(Command ran to produce this: sudo RUST_BACKTRACE=full ./kbct-x86_64.AppImage log-keys --device-path /dev/input/event11)

thread 'main' panicked at 'Illegal argument 4', src/util/util.rs:101:14
stack backtrace:
   0:     0x565221228af0 - std::backtrace_rs::backtrace::libunwind::trace::h5e9d00f0cdf4f57e
                               at /rustc/2fd73fabe469357a12c2c974c140f67e7cdd76d0/library/std/src/../../backtrace/src/backtrace/libunwind.rs:90:5
   1:     0x565221228af0 - std::backtrace_rs::backtrace::trace_unsynchronized::hd5302bd66215dab9
                               at /rustc/2fd73fabe469357a12c2c974c140f67e7cdd76d0/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   2:     0x565221228af0 - std::sys_common::backtrace::_print_fmt::ha0237cd11a34e2bf
                               at /rustc/2fd73fabe469357a12c2c974c140f67e7cdd76d0/library/std/src/sys_common/backtrace.rs:67:5
   3:     0x565221228af0 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h171d4c10df1a98ee
                               at /rustc/2fd73fabe469357a12c2c974c140f67e7cdd76d0/library/std/src/sys_common/backtrace.rs:46:22
   4:     0x56522124800c - core::fmt::write::h89e4288724daa3fa
                               at /rustc/2fd73fabe469357a12c2c974c140f67e7cdd76d0/library/core/src/fmt/mod.rs:1096:17
   5:     0x565221225852 - std::io::Write::write_fmt::h6d40f996e84584d9
                               at /rustc/2fd73fabe469357a12c2c974c140f67e7cdd76d0/library/std/src/io/mod.rs:1568:15
   6:     0x56522122ac35 - std::sys_common::backtrace::_print::h0c0b93221682afc8
                               at /rustc/2fd73fabe469357a12c2c974c140f67e7cdd76d0/library/std/src/sys_common/backtrace.rs:49:5
   7:     0x56522122ac35 - std::sys_common::backtrace::print::h57a9f95204c2fdd6
                               at /rustc/2fd73fabe469357a12c2c974c140f67e7cdd76d0/library/std/src/sys_common/backtrace.rs:36:9
   8:     0x56522122ac35 - std::panicking::default_hook::{{closure}}::h4245258b50e37e69
                               at /rustc/2fd73fabe469357a12c2c974c140f67e7cdd76d0/library/std/src/panicking.rs:208:50
   9:     0x56522122a793 - std::panicking::default_hook::h7b00dcc1d0944747
                               at /rustc/2fd73fabe469357a12c2c974c140f67e7cdd76d0/library/std/src/panicking.rs:225:9
  10:     0x56522122b3d1 - std::panicking::rust_panic_with_hook::h71e6a073d87de1f5
                               at /rustc/2fd73fabe469357a12c2c974c140f67e7cdd76d0/library/std/src/panicking.rs:591:17
  11:     0x565220faca3e - std::panicking::begin_panic::{{closure}}::h18ff497c1afef3f1
                               at /home/sme/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:520:9
  12:     0x565220efd3af - std::sys_common::backtrace::__rust_end_short_backtrace::h4ff8b34bfba49aa3
                               at /home/sme/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys_common/backtrace.rs:141:18
  13:     0x565220fac93c - std::panicking::begin_panic::hd61ca9d1bfd1d46a
                               at /home/sme/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:519:12
  14:     0x565220d5fc1a - kbct::util::util::map_status_from_linux::h46fc7d59147dd438
                               at /home/sme/src/kbct/src/util/util.rs:101:8
  15:     0x565220d5fcbc - kbct::util::util::kbct_from_uinput_event::h4e2c207359f5dc42
                               at /home/sme/src/kbct/src/util/util.rs:117:13
  16:     0x565220d6b024 - <kbct::KeyLogger as kbct::nio::EventObserver>::on_event::h409c08170bfa828e
                               at /home/sme/src/kbct/src/main.rs:247:31
  17:     0x565220d3c580 - kbct::nio::EventLoop::run::h81776f0a537dbce6
                               at /home/sme/src/kbct/src/nio.rs:46:11
  18:     0x565220d6ca72 - kbct::log_keys::hda5fcbd32cb1372e
                               at /home/sme/src/kbct/src/main.rs:305:2
  19:     0x565220d6ce25 - kbct::main::hf140f9ed72c3bbb9
                               at /home/sme/src/kbct/src/main.rs:373:4
  20:     0x565220d8e3d2 - core::ops::function::FnOnce::call_once::h437e19c21ddd9d80
                               at /home/sme/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:227:5
  21:     0x565220d7978a - std::sys_common::backtrace::__rust_begin_short_backtrace::h6ac56ed2bd5d58d5
                               at /home/sme/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys_common/backtrace.rs:125:18
  22:     0x565220d75b56 - std::rt::lang_start::{{closure}}::ha608ed6b8114b7f3
                               at /home/sme/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/rt.rs:66:18
  23:     0x56522122b7f7 - core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once::h527fb2333ede305e
                               at /rustc/2fd73fabe469357a12c2c974c140f67e7cdd76d0/library/core/src/ops/function.rs:259:13
  24:     0x56522122b7f7 - std::panicking::try::do_call::h309d8aee8149866c
                               at /rustc/2fd73fabe469357a12c2c974c140f67e7cdd76d0/library/std/src/panicking.rs:379:40
  25:     0x56522122b7f7 - std::panicking::try::h75a60c31fd16bfc6
                               at /rustc/2fd73fabe469357a12c2c974c140f67e7cdd76d0/library/std/src/panicking.rs:343:19
  26:     0x56522122b7f7 - std::panic::catch_unwind::h1f9892423e99bc00
                               at /rustc/2fd73fabe469357a12c2c974c140f67e7cdd76d0/library/std/src/panic.rs:431:14
  27:     0x56522122b7f7 - std::rt::lang_start_internal::hd5b67df56ca01dae
                               at /rustc/2fd73fabe469357a12c2c974c140f67e7cdd76d0/library/std/src/rt.rs:51:25
  28:     0x565220d75b27 - std::rt::lang_start::h324a23944f56788f
                               at /home/sme/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/rt.rs:65:5
  29:     0x565220d6e78a - main
  30:     0x7f226e5bcd90 - <unknown>
  31:     0x7f226e5bce40 - __libc_start_main
  32:     0x565220d2a0ae - _start
  33:                0x0 - <unknown>

Device info from dmesg

[78352.483818] usb 1-1.4.4.2.1: new full-speed USB device number 16 using ehci-pci
[78352.598581] usb 1-1.4.4.2.1: New USB device found, idVendor=05f3, idProduct=00ff, bcdDevice= 1.20
[78352.598587] usb 1-1.4.4.2.1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[78352.598589] usb 1-1.4.4.2.1: Product: VEC USB Footpedal
[78352.598590] usb 1-1.4.4.2.1: Manufacturer: VEC
[78352.599925] input: VEC VEC USB Footpedal as /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.4/1-1.4.4/1-1.4.4.2/1-1.4.4.2.1/1-1.4.4.2.1:1.0/0003:05F3:00FF.0012/input/input44

udevadm info

P: /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.4/1-1.4.4/1-1.4.4.2/1-1.4.4.2.1/1-1.4.4.2.1:1.0/0003:05F3:00FF.0013/input/input45/event11
N: input/event11
L: 0
S: input/by-id/usb-VEC_VEC_USB_Footpedal-event-if00
S: input/by-path/pci-0000:00:1a.0-usb-0:1.4.4.2.1:1.0-event
E: DEVPATH=/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.4/1-1.4.4/1-1.4.4.2/1-1.4.4.2.1/1-1.4.4.2.1:1.0/0003:05F3:00FF.0013/input/input45/event11
E: DEVNAME=/dev/input/event11
E: MAJOR=13
E: MINOR=75
E: SUBSYSTEM=input
E: USEC_INITIALIZED=82188444452
E: ID_INPUT=1
E: ID_VENDOR=VEC
E: ID_VENDOR_ENC=VEC
E: ID_VENDOR_ID=05f3
E: ID_MODEL=VEC_USB_Footpedal
E: ID_MODEL_ENC=VEC\x20USB\x20Footpedal
E: ID_MODEL_ID=00ff
E: ID_REVISION=0120
E: ID_SERIAL=VEC_VEC_USB_Footpedal
E: ID_TYPE=hid
E: ID_BUS=usb
E: ID_USB_INTERFACES=:030000:
E: ID_USB_INTERFACE_NUM=00
E: ID_USB_DRIVER=usbhid
E: ID_PATH=pci-0000:00:1a.0-usb-0:1.4.4.2.1:1.0
E: ID_PATH_TAG=pci-0000_00_1a_0-usb-0_1_4_4_2_1_1_0
E: LIBINPUT_DEVICE_GROUP=3/5f3/ff:usb-0000:00:1a.0-1.4.4.2
E: DEVLINKS=/dev/input/by-id/usb-VEC_VEC_USB_Footpedal-event-if00 /dev/input/by-path/pci-0000:00:1a.0-usb-0:1.4.4.2.1:1.0-event

Output from evtest

Left button pressed:

Event: time 1763005197.861736, type 4 (EV_MSC), code 4 (MSC_SCAN), value 9004b
Event: time 1763005197.861736, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 1
Event: time 1763005197.861736, -------------- SYN_REPORT ------------

Left button released:

Event: time 1763005198.013737, type 4 (EV_MSC), code 4 (MSC_SCAN), value 9004b
Event: time 1763005198.013737, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 0
Event: time 1763005198.013737, -------------- SYN_REPORT ------------

Center button pressed (release does not fire an event):

Event: time 1763005267.782179, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 2
Event: time 1763005267.782179, -------------- SYN_REPORT ------------

Right button pressed:

Event: time 1763005288.926316, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 4
Event: time 1763005288.926316, -------------- SYN_REPORT ------------

Right button released:

Event: time 1763005289.310321, type 4 (EV_MSC), code 4 (MSC_SCAN), value 9004b
Event: time 1763005289.310321, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 0
Event: time 1763005289.310321, -------------- SYN_REPORT ------------

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions