Bug 1263 - segfault trying to acquire too many channels on logic16
Summary: segfault trying to acquire too many channels on logic16
Status: CONFIRMED
Alias: None
Product: PulseView
Classification: Unclassified
Component: Acquisition (show other bugs)
Version: unreleased development snapshot
Hardware: All All
: Normal normal
Target Milestone: ---
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-08-18 15:02 CEST by karlp
Modified: 2018-08-21 22:33 CEST (History)
2 users (show)



Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description karlp 2018-08-18 15:02:52 CEST
Trying to capture 16channels at 100Mhz causes a segfault
version
version: pulseview-0.3.0-630-g2a09e77


(gdb) run
Starting program: /home/karlp/.local/bin/pulseview 
Missing separate debuginfos, use: dnf debuginfo-install glibc-2.26-28.fc27.x86_64
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
[New Thread 0x7fffe2de4700 (LWP 27565)]
[New Thread 0x7fffd9134700 (LWP 27566)]
[New Thread 0x7fffd8933700 (LWP 27567)]
[New Thread 0x7fffd3fff700 (LWP 27568)]
[New Thread 0x7fffd3170700 (LWP 27569)]
[New Thread 0x7fffd26c7700 (LWP 27571)]
[New Thread 0x7fffbf2fe700 (LWP 27578)]
[Thread 0x7fffbf2fe700 (LWP 27578) exited]
[New Thread 0x7fffbeafd700 (LWP 27580)]
[Thread 0x7fffbeafd700 (LWP 27580) exited]
[New Thread 0x7fffbe2fc700 (LWP 27584)]
[Thread 0x7fffbe2fc700 (LWP 27584) exited]
[New Thread 0x7fffbdafb700 (LWP 27586)]
[Thread 0x7fffbdafb700 (LWP 27586) exited]
[New Thread 0x7fffbd2fa700 (LWP 27587)]
[Thread 0x7fffbd2fa700 (LWP 27587) exited]
[New Thread 0x7fffbcaf9700 (LWP 27588)]
[Thread 0x7fffbcaf9700 (LWP 27588) exited]
[New Thread 0x7fffb7fff700 (LWP 27589)]
[Thread 0x7fffb7fff700 (LWP 27589) exited]
[New Thread 0x7fffb77fe700 (LWP 27590)]
[Thread 0x7fffb77fe700 (LWP 27590) exited]
[New Thread 0x7fffb6ffd700 (LWP 27591)]
[Thread 0x7fffb6ffd700 (LWP 27591) exited]
[New Thread 0x7fffb67fc700 (LWP 27592)]
[Thread 0x7fffb67fc700 (LWP 27592) exited]
[New Thread 0x7fffb5ffb700 (LWP 27593)]
[Thread 0x7fffb5ffb700 (LWP 27593) exited]
[New Thread 0x7fffb57fa700 (LWP 27594)]
[Thread 0x7fffb57fa700 (LWP 27594) exited]
[New Thread 0x7fffb4ff9700 (LWP 27595)]
[Thread 0x7fffb4ff9700 (LWP 27595) exited]
[New Thread 0x7fffaffff700 (LWP 27596)]
[Thread 0x7fffaffff700 (LWP 27596) exited]
[New Thread 0x7fffaf7fe700 (LWP 27597)]
[Thread 0x7fffaf7fe700 (LWP 27597) exited]
[New Thread 0x7fffaeffd700 (LWP 27598)]
[Thread 0x7fffaeffd700 (LWP 27598) exited]
[New Thread 0x7fffae7fc700 (LWP 27600)]

Thread 24 "pulseview" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffae7fc700 (LWP 27600)]
0x00007ffff55d9745 in QRasterPaintEngine::renderHintsChanged() () from /lib64/libQt5Gui.so.5
Missing separate debuginfos, use: dnf debuginfo-install GConf2-3.2.6-19.fc27.x86_64 adwaita-qt5-1.0-3.fc27.x86_64 at-spi2-atk-2.26.1-1.fc27.x86_64 at-spi2-core-2.26.2-1.fc27.x86_64 atk-2.26.1-1.fc27.x86_64 boost-filesystem-1.64.0-7.fc27.x86_64 boost-serialization-1.64.0-7.fc27.x86_64 boost-system-1.64.0-7.fc27.x86_64 bzip2-libs-1.0.6-24.fc27.x86_64 cairo-1.15.10-1.fc27.x86_64 cairo-gobject-1.15.10-1.fc27.x86_64 dbus-glib-0.108-4.fc27.x86_64 dbus-libs-1.12.8-1.fc27.x86_64 dconf-0.26.1-1.fc27.x86_64 expat-2.2.5-1.fc27.x86_64 fontconfig-2.12.6-4.fc27.x86_64 freetype-2.8-8.fc27.x86_64 gdk-pixbuf2-2.36.11-1.fc27.x86_64 glib2-2.54.3-3.fc27.x86_64 glibmm24-2.54.1-1.fc27.x86_64 graphite2-1.3.10-3.fc27.x86_64 gtk3-3.22.26-2.fc27.x86_64 gvfs-client-1.34.2.1-1.fc27.x86_64 harfbuzz-1.4.8-1.fc27.x86_64 jasper-libs-2.0.14-5.fc27.x86_64 jbigkit-libs-2.1-8.fc27.x86_64 lcms2-2.8-5.fc27.x86_64 libICE-1.0.9-11.fc27.x86_64 libSM-1.2.2-7.fc27.x86_64 libX11-1.6.5-4.fc27.x86_64 libX11-xcb-1.6.5-4.fc27.x86_64 libXau-1.0.8-9.fc27.x86_64 libXcomposite-0.4.4-11.fc27.x86_64 libXcursor-1.1.15-1.fc27.x86_64 libXdamage-1.1.4-11.fc27.x86_64 libXext-1.3.3-7.fc27.x86_64 libXfixes-5.0.3-4.fc27.x86_64 libXi-1.7.9-4.fc27.x86_64 libXinerama-1.1.3-9.fc27.x86_64 libXrandr-1.5.1-4.fc27.x86_64 libXrender-0.9.10-4.fc27.x86_64 libXtst-1.2.3-4.fc27.x86_64 libXxf86vm-1.1.4-6.fc27.x86_64 libblkid-2.30.2-3.fc27.x86_64 libdatrie-0.2.9-6.fc27.x86_64 libdrm-2.4.91-1.fc27.x86_64 libepoxy-1.4.3-3.fc27.x86_64 libffi-3.1-14.fc27.x86_64 libgcc-7.3.1-6.fc27.x86_64 libgcrypt-1.8.3-1.fc27.x86_64 libglvnd-1.0.0-1.fc27.x86_64 libglvnd-glx-1.0.0-1.fc27.x86_64 libgpg-error-1.31-1.fc27.x86_64 libicu-57.1-9.fc27.x86_64 libjpeg-turbo-1.5.3-1.fc27.x86_64 libmng-2.0.3-6.fc27.x86_64 libmount-2.30.2-3.fc27.x86_64 libpciaccess-0.13.4-6.fc27.x86_64 libpng-1.6.31-1.fc27.x86_64 libselinux-2.7-3.fc27.x86_64 libsigc++20-2.10.0-4.fc27.x86_64 libstdc++-7.3.1-6.fc27.x86_64 libthai-0.1.25-4.fc27.x86_64 libtiff-4.0.9-10.fc27.x86_64 libusbx-1.0.21-4.fc27.x86_64 libuuid-2.30.2-3.fc27.x86_64 libwayland-client-1.14.0-2.fc27.x86_64 libwayland-cursor-1.14.0-2.fc27.x86_64 libwebp-1.0.0-1.fc27.x86_64 libxcb-1.12-5.fc27.x86_64 libxkbcommon-0.7.1-5.fc27.x86_64 libxkbcommon-x11-0.7.1-5.fc27.x86_64 libxshmfence-1.2-6.fc27.x86_64 libzip-1.3.2-1.fc27.x86_64 lz4-libs-1.8.0-1.fc27.x86_64 mesa-dri-drivers-17.3.9-1.fc27.x86_64 mesa-libGL-17.3.9-1.fc27.x86_64 mesa-libglapi-17.3.9-1.fc27.x86_64 mesa-libwayland-egl-17.3.9-1.fc27.x86_64 pango-1.40.14-1.fc27.x86_64 pcre-8.42-2.fc27.x86_64 pcre2-10.31-7.fc27.x86_64 pcre2-utf16-10.31-7.fc27.x86_64 pixman-0.34.0-4.fc27.x86_64 python3-libs-3.6.6-1.fc27.x86_64 qgnomeplatform-0.3-7.fc27.x86_64 qt5-qtbase-5.9.6-3.fc27.x86_64 qt5-qtbase-gui-5.9.6-3.fc27.x86_64 qt5-qtimageformats-5.9.6-1.fc27.x86_64 qt5-qtsvg-5.9.6-1.fc27.x86_64 sssd-client-1.16.2-4.fc27.x86_64 systemd-libs-234-11.git5f8984e.fc27.x86_64 xcb-util-0.4.0-8.fc27.x86_64 xcb-util-image-0.4.0-8.fc27.x86_64 xcb-util-keysyms-0.4.0-6.fc27.x86_64 xcb-util-renderutil-0.3.9-9.fc27.x86_64 xcb-util-wm-0.4.1-11.fc27.x86_64 xz-libs-5.2.3-4.fc27.x86_64 zlib-1.2.11-4.fc27.x86_64
(gdb) bt
#0  0x00007ffff55d9745 in QRasterPaintEngine::renderHintsChanged() () at /lib64/libQt5Gui.so.5
#1  0x00007ffff55ecc2f in QPainter::setRenderHints(QFlags<QPainter::RenderHint>, bool) () at /lib64/libQt5Gui.so.5
#2  0x00007fffd2727455 in Adwaita::Helper::renderButtonFrame(QPainter*, QRect const&, QColor const&, QColor const&, QColor const&, bool, bool, bool, bool) const () at /usr/lib64/qt5/plugins/styles/adwaita.so
#3  0x00007fffd2731c80 in Adwaita::Style::drawPanelButtonCommandPrimitive(QStyleOption const*, QPainter*, QWidget const*) const () at /usr/lib64/qt5/plugins/styles/adwaita.so
#4  0x00007fffd2740f0f in Adwaita::Style::drawControl(QStyle::ControlElement, QStyleOption const*, QPainter*, QWidget const*) const () at /usr/lib64/qt5/plugins/styles/adwaita.so
#5  0x00007ffff5b9749c in QCommonStyle::drawControl(QStyle::ControlElement, QStyleOption const*, QPainter*, QWidget const*) const () at /lib64/libQt5Widgets.so.5
#6  0x00007fffd2740f26 in Adwaita::Style::drawControl(QStyle::ControlElement, QStyleOption const*, QPainter*, QWidget const*) const () at /usr/lib64/qt5/plugins/styles/adwaita.so
#7  0x00007ffff5ca67bc in QPushButton::paintEvent(QPaintEvent*) () at /lib64/libQt5Widgets.so.5
#8  0x00007ffff5b56298 in QWidget::event(QEvent*) () at /lib64/libQt5Widgets.so.5
#9  0x00007ffff5b1792c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib64/libQt5Widgets.so.5
#10 0x00007ffff5b1f174 in QApplication::notify(QObject*, QEvent*) () at /lib64/libQt5Widgets.so.5
#11 0x000000000047e3bd in Application::notify(QObject*, QEvent*) (this=<optimized out>, receiver=<optimized out>, event=<optimized out>) at /home/karlp/src/sigrok-playground/pulseview/pv/application.cpp:45
#12 0x00007ffff4eaacd7 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /lib64/libQt5Core.so.5
#13 0x00007ffff5b4f39a in QWidgetPrivate::sendPaintEvent(QRegion const&) () at /lib64/libQt5Widgets.so.5
#14 0x00007ffff5b4f95a in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () at /lib64/libQt5Widgets.so.5
#15 0x00007ffff5b505c0 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () at /lib64/libQt5Widgets.so.5
#16 0x00007ffff5b4f566 in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () at /lib64/libQt5Widgets.so.5
#17 0x00007ffff5b505c0 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () at /lib64/libQt5Widgets.so.5
#18 0x00007ffff5b4f566 in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () at /lib64/libQt5Widgets.so.5
#19 0x00007ffff5b26ec9 in QWidgetBackingStore::doSync() () at /lib64/libQt5Widgets.so.5
#20 0x00007ffff5b27105 in QWidgetBackingStore::sync() () at /lib64/libQt5Widgets.so.5
#21 0x00007ffff5b3e81f in QWidgetPrivate::syncBackingStore() () at /lib64/libQt5Widgets.so.5
#22 0x00007ffff5b56408 in QWidget::event(QEvent*) () at /lib64/libQt5Widgets.so.5
#23 0x00007ffff5d35531 in QMessageBox::event(QEvent*) () at /lib64/libQt5Widgets.so.5
#24 0x00007ffff5b1792c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib64/libQt5Widgets.so.5
#25 0x00007ffff5b1f174 in QApplication::notify(QObject*, QEvent*) () at /lib64/libQt5Widgets.so.5
#26 0x000000000047e3bd in Application::notify(QObject*, QEvent*) (this=<optimized out>, receiver=<optimized out>, event=<optimized out>) at /home/karlp/src/sigrok-playground/pulseview/pv/application.cpp:45
#27 0x00007ffff4eaacd7 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /lib64/libQt5Core.so.5
#28 0x00007ffff4ead45b in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) ()
    at /lib64/libQt5Core.so.5
---Type <return> to continue, or q <return> to quit---
#29 0x00007ffff4efbf33 in postEventSourceDispatch(_GSource*, int (*)(void*), void*) () at /lib64/libQt5Core.so.5
#30 0x00007ffff6256b97 in g_main_context_dispatch () at /lib64/libglib-2.0.so.0
#31 0x00007ffff6256f40 in g_main_context_iterate.isra () at /lib64/libglib-2.0.so.0
#32 0x00007ffff6256fcc in g_main_context_iteration () at /lib64/libglib-2.0.so.0
#33 0x00007ffff4efbd1f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) ()
    at /lib64/libQt5Core.so.5
#34 0x00007ffff4ea9a3a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#35 0x00007ffff5d03237 in QDialog::exec() () at /lib64/libQt5Widgets.so.5
#36 0x000000000048d143 in pv::MainWindow::show_session_error(QString, QString) (text=..., info_text=...)
    at /home/karlp/src/sigrok-playground/pulseview/pv/mainwindow.cpp:105
#37 0x000000000048d214 in pv::MainWindow::<lambda(QString)>::operator() (__closure=<optimized out>, message=...)
    at /home/karlp/src/sigrok-playground/pulseview/pv/mainwindow.cpp:638
#38 0x000000000048d214 in std::_Function_handler<void(QString), pv::MainWindow::on_run_stop_clicked()::<lambda(QString)> >::_M_invoke(const std::_Any_data &, QString &&) (__functor=..., __args#0=...)
    at /usr/include/c++/7/bits/std_function.h:316
#39 0x000000000049bad0 in std::function<void (QString)>::operator()(QString) const (__args#0=..., this=0x7fffae7fbc60)
    at /usr/include/c++/7/bits/std_function.h:706
#40 0x000000000049bad0 in pv::Session::sample_thread_proc(std::function<void (QString)>) (this=0xb3f730, error_handler=...) at /home/karlp/src/sigrok-playground/pulseview/pv/session.cpp:972
#41 0x00000000004a30ef in std::__invoke_impl<void, void (pv::Session::*)(std::function<void (QString)>), pv::Session*, std::function<void (QString)> >(std::__invoke_memfun_deref, void (pv::Session::*&&)(std::function<void (QString)>), pv::Session*&&, std::function<void (QString)>&&) (__t=<optimized out>, __f=<optimized out>)
    at /usr/include/c++/7/bits/invoke.h:73
#42 0x00000000004a30ef in std::__invoke<void (pv::Session::*)(std::function<void (QString)>), pv::Session*, std::function<void (QString)> >(void (pv::Session::*&&)(std::function<void (QString)>), pv::Session*&&, std::function<void (QString)>&&) (__fn=<optimized out>) at /usr/include/c++/7/bits/invoke.h:95
#43 0x00000000004a30ef in std::thread::_Invoker<std::tuple<void (pv::Session::*)(std::function<void (QString)>), pv::Session*, std::function<void (QString)> > >::_M_invoke<0ul, 1ul, 2ul>(std::_Index_tuple<0ul, 1ul, 2ul>) (this=<optimized out>) at /usr/include/c++/7/thread:234
#44 0x00000000004a30ef in std::thread::_Invoker<std::tuple<void (pv::Session::*)(std::function<void (QString)>), pv::Session*, std::function<void (QString)> > >::operator()() (this=<optimized out>) at /usr/include/c++/7/thread:243
#45 0x00000000004a30ef in std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (pv::Session::*)(std::function<void (QString)>), pv::Session*, std::function<void (QString)> > > >::_M_run() (this=<optimized out>)
    at /usr/include/c++/7/thread:186
#46 0x00007ffff498e53f in execute_native_thread_routine () at /lib64/libstdc++.so.6
#47 0x00007ffff731450b in start_thread () at /lib64/libpthread.so.0
#48 0x00007ffff40af16f in clone () at /lib64/libc.so.6
(gdb)
Comment 1 Soeren Apel 2018-08-18 17:03:48 CEST
Please re-test with an up-to-date PV version.

PV is trying to show an error message box (for reasons unknown) and Qt isn't having any of it. Adwaita is involved, so no idea if it's a Qt or Adwaita issue.
Comment 2 karlp 2018-08-19 00:20:05 CEST
excuse me, how much more up to date do you want?

I _included_ the git version here for you, so you could know what version of code I was using, is there wiki formatting or something so I can bold it for you?

karlp@beros:~/src/sigrok-playground/pulseview (master)$ git pull --ff-only
Already up-to-date.
karlp@beros:~/src/sigrok-playground/pulseview (master)$ git describe
pulseview-0.3.0-630-g2a09e77
karlp@beros:~/src/sigrok-playground/pulseview (master)$ git log
commit 2a09e77148279258c347f8cf9c55daa667a034f8 (HEAD -> master, origin/master, origin/HEAD)
Author: Uwe Hermann <uwe@hermann-uwe.de>
Date:   Tue Jul 24 22:07:25 2018 +0200

    HardwareDevice: Only show non-empty device name components.
    
    Fields such as vendor, version, serial number etc. are not always
    provided by drivers. Avoid printing them, since it causes stray
    whitespace to be added to the displayed strings.
Comment 3 Uwe Hermann 2018-08-21 14:27:20 CEST
Similarly to #1265, I can't seem to be able to reproduce a segfault here on my setup (Debian unstable, Linux, 64bit, Qt 5.11.1+dfsg-6, glib 2.56.1-2).

$ LD_LIBRARY_PATH=$HOME/sr/lib ~/sr/bin/pulseview -c -l 5 -s
[...]
sr: [00:06.539995] hwdriver: saleae-logic16: Starting acquisition.
sr: [00:06.540050] saleae-logic16: Unable to sample at 100000000Hz with this many channels.
sr: [00:06.540104] session: Could not start saleae-logic16 device usb/2-3 acquisition.
sr: [00:06.540145] hwdriver: saleae-logic16: Stopping acquisition.
Notifying user of session error: "generic/unspecified error"

In the UI I'm getting an error popup, but no segfault/crash.

Maybe this also hints at a Qt/glib setting that causes some internal asserts() to kill the application or such (?) Not sure.

Another thing could be pv/mainwindow.cpp:105, which tries to show the popup, maybe some Qt (or other) bug is causing issues when that's supposed to happen? Might also explain #1265 in that case.

Does this happen for you as well with the exact command-line I posted above? Specifically with -c, to forget any previous config stuff?

Do you maybe have multiple libsigrok instances around on that system, and it's mixing apps and libs that are not entirely compatible or such? E.g. an older distro libsigrok and a built-from-source newer one? Unlikely to be the problem here, but it's worth double-checking.
Comment 4 karlp 2018-08-21 15:40:50 CEST
Still crashes for me.  I did have one run where it just gave the popup and didn't crash, but next run (still with -c) it crashed again.

here's the log for it.

One thing of note, the log says that it has detected an original salea16.  it most definitely is not.  This the "noname-xl" board with gregani's bitstreams.

karlp@beros:~$ pulseview -c -l 5 -s 
sr: [00:00.000000] log: libsigrok loglevel set to 5.
srd: libsigrokdecode loglevel set to 5.
sr: [00:00.000153] backend: libsigrok 0.6.0-git-17e0251d/4:0:0 (rt: 0.6.0-git-17e0251d/4:0:0).
sr: [00:00.000172] backend: Libs: glib 2.54.3 (rt: 2.54.3/5403:3), libzip 1.3.2, libusb-1.0 1.0.21.11156 API 0x01000105.
sr: [00:00.000176] backend: Host: x86_64-pc-linux-gnu, little-endian.
sr: [00:00.000179] backend: SCPI backends: TCP, RPC, USBTMC.
sr: [00:00.000183] backend: Firmware search paths:
sr: [00:00.000186] resource: SIGROK_FIRMWARE_DIR environment variable not set, ignoring.
sr: [00:00.000194] backend:  - /home/karlp/.local/share/sigrok-firmware
sr: [00:00.000196] backend:  - /home/karlp/.local/share/sigrok-firmware
sr: [00:00.000198] backend:  - /home/karlp/.local/share/flatpak/exports/share/sigrok-firmware
sr: [00:00.000201] backend:  - /var/lib/flatpak/exports/share/sigrok-firmware
sr: [00:00.000203] backend:  - /usr/local/share/sigrok-firmware
sr: [00:00.000206] backend:  - /usr/share/sigrok-firmware
sr: [00:00.000240] backend: Sanity-checking all drivers.
sr: [00:00.000244] backend: Sanity-checking all input modules.
sr: [00:00.000247] backend: Sanity-checking all output modules.
sr: [00:00.000249] backend: Sanity-checking all transform modules.
srd: libsigrokdecode 0.6.0-git-11fb6d1/4:0:0 (rt: 0.6.0-git-11fb6d1/4:0:0).
srd: Libs: glib 2.54.3 (rt: 2.54.3/5403:3), Python 3.6.6 / 0x30606f0 (API 1013, ABI 3).
srd: Host: x86_64-pc-linux-gnu, little-endian.
srd: Initializing libsigrokdecode.
srd: Adding '/home/karlp/.local/share/libsigrokdecode/decoders' to module path.
srd: Adding '/home/karlp/.local/share/libsigrokdecode/decoders' to module path.
srd: Protocol decoder search paths:
 - /home/karlp/.local/share/libsigrokdecode/decoders
 - /home/karlp/.local/share/libsigrokdecode/decoders
srd: Python system search paths:
 - /home/karlp/.local/share/libsigrokdecode/decoders
 - /home/karlp/.local/share/libsigrokdecode/decoders
 - /usr/lib64/python36.zip
 - /usr/lib64/python3.6
 - /usr/lib64/python3.6/lib-dynload
 - /usr/lib64/python3.6/site-packages
 - /usr/lib/python3.6/site-packages
sr: [00:00.070405] hwdriver: Scan found 0 devices (beaglelogic).
sr: [00:00.070758] hwdriver: Scan found 1 devices (demo).
sr: [00:00.070884] hwdriver: Scan found 0 devices (dreamsourcelab-dslogic).
sr: [00:00.070983] hwdriver: Scan found 0 devices (fx2lafw).
sr: [00:00.071081] hwdriver: Scan found 0 devices (hantek-4032l).
sr: [00:00.071139] hwdriver: Scan found 0 devices (hantek-6xxx).
sr: [00:00.071204] hwdriver: Scan found 0 devices (hantek-dso).
sr: [00:00.071285] hwdriver: Scan found 0 devices (ikalogic-scanalogic2).
sr: [00:00.079629] hwdriver: Scan found 0 devices (lecroy-logicstudio).
sr: [00:00.079956] hwdriver: Scan found 0 devices (lecroy-xstream).
sr: [00:00.080010] hwdriver: Scan found 0 devices (rigol-ds).
sr: [00:00.080068] hwdriver: Scan found 0 devices (saleae-logic-pro).
sr: [00:00.080318] ezusb: uploading firmware to device on 1.9
sr: [00:00.083419] ezusb: setting CPU reset mode on...
sr: [00:00.083473] resource: SIGROK_FIRMWARE_DIR environment variable not set, ignoring.
sr: [00:00.083500] resource: Opened '/home/karlp/.local/share/sigrok-firmware/saleae-logic16-fx2.fw'.
sr: [00:00.083533] ezusb: Uploading firmware 'saleae-logic16-fx2.fw'.
sr: [00:00.083889] ezusb: Uploaded 4096 bytes.
sr: [00:00.084248] ezusb: Uploaded 4096 bytes.
sr: [00:00.084616] ezusb: Uploaded 4096 bytes.
sr: [00:00.084983] ezusb: Uploaded 4024 bytes.
sr: [00:00.084991] ezusb: Firmware upload done.
sr: [00:00.084995] ezusb: setting CPU reset mode off...
sr: [00:00.085085] hwdriver: Scan found 1 devices (saleae-logic16).
sr: [00:00.087178] hwdriver: Scan found 0 devices (siglent-sds).
sr: [00:00.087242] hwdriver: Scan found 0 devices (sysclk-lwla).
sr: [00:00.087318] hwdriver: Scan found 0 devices (yokogawa-dlm).
sr: [00:00.087503] hwdriver: Scan found 0 devices (zeroplus-logic-cube).
sr: [00:00.111394] device: saleae-logic16: Opening device instance.
sr: [00:00.111409] saleae-logic16: Waiting for device to reset.
sr: [00:01.411934] saleae-logic16: Failed to receive reply to EP1 command 0x7d: LIBUSB_ERROR_TIMEOUT.
sr: [00:01.411976] saleae-logic16: Failed to init device.
sr: [00:01.512206] saleae-logic16: Waited 1427ms.
sr: [00:01.514677] saleae-logic16: Original Saleae Logic16 detected.
sr: [00:01.514711] saleae-logic16: Uploading FPGA bitstream 'saleae-logic16-fpga-18.bitstream'.
sr: [00:01.514726] resource: SIGROK_FIRMWARE_DIR environment variable not set, ignoring.
sr: [00:01.514781] resource: Opened '/home/karlp/.local/share/sigrok-firmware/saleae-logic16-fpga-18.bitstream'.
sr: [00:04.498129] saleae-logic16: FPGA bitstream upload (149611 bytes) done.
sr: [00:04.498754] saleae-logic16: Original Saleae Logic16 using old bitstream.
sr: [00:04.516218] saleae-logic16: Opened device on 1.9 (logical) / usb/1-5.1.4 (physical), interface 0.
sr: [00:04.516260] saleae-logic16: Device came back after 1427ms.
sr: [00:04.516761] hwdriver: sr_config_list(): key 30014 (triggermatch) sdi 0x28c4270 cg NULL -> [1, 2, 3, 4, 5]
sr: [00:04.517198] hwdriver: sr_config_list(): key 30014 (triggermatch) sdi 0x28c4270 cg NULL -> [1, 2, 3, 4, 5]
sr: [00:04.517558] hwdriver: sr_config_list(): key 30014 (triggermatch) sdi 0x28c4270 cg NULL -> [1, 2, 3, 4, 5]
sr: [00:04.517880] hwdriver: sr_config_list(): key 30014 (triggermatch) sdi 0x28c4270 cg NULL -> [1, 2, 3, 4, 5]
sr: [00:04.518194] hwdriver: sr_config_list(): key 30014 (triggermatch) sdi 0x28c4270 cg NULL -> [1, 2, 3, 4, 5]
sr: [00:04.518509] hwdriver: sr_config_list(): key 30014 (triggermatch) sdi 0x28c4270 cg NULL -> [1, 2, 3, 4, 5]
sr: [00:04.518837] hwdriver: sr_config_list(): key 30014 (triggermatch) sdi 0x28c4270 cg NULL -> [1, 2, 3, 4, 5]
sr: [00:04.519150] hwdriver: sr_config_list(): key 30014 (triggermatch) sdi 0x28c4270 cg NULL -> [1, 2, 3, 4, 5]
sr: [00:04.519461] hwdriver: sr_config_list(): key 30014 (triggermatch) sdi 0x28c4270 cg NULL -> [1, 2, 3, 4, 5]
sr: [00:04.519787] hwdriver: sr_config_list(): key 30014 (triggermatch) sdi 0x28c4270 cg NULL -> [1, 2, 3, 4, 5]
sr: [00:04.520089] hwdriver: sr_config_list(): key 30014 (triggermatch) sdi 0x28c4270 cg NULL -> [1, 2, 3, 4, 5]
sr: [00:04.520397] hwdriver: sr_config_list(): key 30014 (triggermatch) sdi 0x28c4270 cg NULL -> [1, 2, 3, 4, 5]
sr: [00:04.520722] hwdriver: sr_config_list(): key 30014 (triggermatch) sdi 0x28c4270 cg NULL -> [1, 2, 3, 4, 5]
sr: [00:04.521031] hwdriver: sr_config_list(): key 30014 (triggermatch) sdi 0x28c4270 cg NULL -> [1, 2, 3, 4, 5]
sr: [00:04.521333] hwdriver: sr_config_list(): key 30014 (triggermatch) sdi 0x28c4270 cg NULL -> [1, 2, 3, 4, 5]
sr: [00:04.521658] hwdriver: sr_config_list(): key 30014 (triggermatch) sdi 0x28c4270 cg NULL -> [1, 2, 3, 4, 5]
sr: [00:04.523326] hwdriver: sr_config_list(): key 30023 (voltage_threshold) sdi 0x28c4270 cg NULL -> [(0.69999999999999996, 1.3999999999999999), (1.3999999999999999, 3.6000000000000001)]
sr: [00:04.523504] hwdriver: sr_config_get(): key 30023 (voltage_threshold) sdi 0x28c4270 cg NULL -> (0.69999999999999996, 1.3999999999999999)
sr: [00:04.523715] hwdriver: sr_config_get(): key 30023 (voltage_threshold) sdi 0x28c4270 cg NULL -> (0.69999999999999996, 1.3999999999999999)
sr: [00:04.523845] hwdriver: sr_config_get(): key 30001 (captureratio) sdi 0x28c4270 cg NULL -> uint64 0
sr: [00:04.524185] hwdriver: sr_config_get(): key 30001 (captureratio) sdi 0x28c4270 cg NULL -> uint64 0
sr: [00:04.525676] hwdriver: sr_config_set(): key 50001 (limit_samples) sdi 0x28c4270 cg NULL -> uint64 1000000
sr: [00:04.525985] hwdriver: Option 'external_clock' not available for this device instance.
sr: [00:04.526238] hwdriver: sr_config_list(): key 30000 (samplerate) sdi 0x28c4270 cg NULL -> {'samplerates': <[uint64 500000, 1000000, 2000000, 4000000, 5000000, 8000000, 10000000, 12500000, 16000000, 20000000, 25000000, 32000000, 40000000, 50000000, 80000000, 100000000]>}
sr: [00:04.526444] hwdriver: sr_config_get(): key 30000 (samplerate) sdi 0x28c4270 cg NULL -> uint64 500000
sr: [00:04.526583] hwdriver: Option 'external_clock' not available for this device instance.
sr: [00:04.526686] hwdriver: sr_config_list(): key 30000 (samplerate) sdi 0x28c4270 cg NULL -> {'samplerates': <[uint64 500000, 1000000, 2000000, 4000000, 5000000, 8000000, 10000000, 12500000, 16000000, 20000000, 25000000, 32000000, 40000000, 50000000, 80000000, 100000000]>}
sr: [00:04.526862] hwdriver: sr_config_get(): key 30000 (samplerate) sdi 0x28c4270 cg NULL -> uint64 500000
sr: [00:04.527011] hwdriver: sr_config_list(): key 30023 (voltage_threshold) sdi 0x28c4270 cg NULL -> [(0.69999999999999996, 1.3999999999999999), (1.3999999999999999, 3.6000000000000001)]
sr: [00:04.527139] hwdriver: sr_config_get(): key 30023 (voltage_threshold) sdi 0x28c4270 cg NULL -> (0.69999999999999996, 1.3999999999999999)
sr: [00:04.527275] hwdriver: sr_config_get(): key 30023 (voltage_threshold) sdi 0x28c4270 cg NULL -> (0.69999999999999996, 1.3999999999999999)
sr: [00:04.527380] hwdriver: sr_config_get(): key 30001 (captureratio) sdi 0x28c4270 cg NULL -> uint64 0
sr: [00:04.527641] hwdriver: sr_config_get(): key 30001 (captureratio) sdi 0x28c4270 cg NULL -> uint64 0
sr: [00:04.528887] hwdriver: Option 'external_clock' not available for this device instance.
sr: [00:04.529004] hwdriver: sr_config_list(): key 30000 (samplerate) sdi 0x28c4270 cg NULL -> {'samplerates': <[uint64 500000, 1000000, 2000000, 4000000, 5000000, 8000000, 10000000, 12500000, 16000000, 20000000, 25000000, 32000000, 40000000, 50000000, 80000000, 100000000]>}
sr: [00:04.529172] hwdriver: sr_config_get(): key 30000 (samplerate) sdi 0x28c4270 cg NULL -> uint64 500000
sr: [00:08.147039] hwdriver: sr_config_set(): key 30000 (samplerate) sdi 0x28c4270 cg NULL -> uint64 100000000
sr: [00:08.147095] hwdriver: Option 'external_clock' not available for this device instance.
sr: [00:08.147221] hwdriver: sr_config_list(): key 30000 (samplerate) sdi 0x28c4270 cg NULL -> {'samplerates': <[uint64 500000, 1000000, 2000000, 4000000, 5000000, 8000000, 10000000, 12500000, 16000000, 20000000, 25000000, 32000000, 40000000, 50000000, 80000000, 100000000]>}
sr: [00:08.147514] hwdriver: sr_config_get(): key 30000 (samplerate) sdi 0x28c4270 cg NULL -> uint64 100000000
sr: [00:08.847434] hwdriver: sr_config_get(): key 30000 (samplerate) sdi 0x28c4270 cg NULL -> uint64 100000000
sr: [00:08.847513] session: Creating our own main context.
sr: [00:08.847574] session: Starting.
sr: [00:08.847586] hwdriver: saleae-logic16: Starting acquisition.
sr: [00:08.847625] saleae-logic16: Unable to sample at 100000000Hz with this many channels.
sr: [00:08.847673] session: Could not start saleae-logic16 device usb/1-5.1.4 acquisition.
sr: [00:08.847696] hwdriver: saleae-logic16: Stopping acquisition.
QObject: Cannot create children for a parent that is in a different thread.
(Parent is Adwaita::WidgetStateEngine(0x245e160), parent's thread is QThread(0x23be180), current thread is QThread(0x7f60e80024f0)
QObject: Cannot create children for a parent that is in a different thread.
(Parent is Adwaita::WidgetStateEngine(0x7f610c001620), parent's thread is QThread(0x23be180), current thread is QThread(0x7f60e80024f0)
QObject: Cannot create children for a parent that is in a different thread.
(Parent is Adwaita::WidgetStateEngine(0x7f610c001620), parent's thread is QThread(0x23be180), current thread is QThread(0x7f60e80024f0)
QObject: Cannot create children for a parent that is in a different thread.
(Parent is Adwaita::WidgetStateEngine(0x245e160), parent's thread is QThread(0x23be180), current thread is QThread(0x7f60e80024f0)
QObject: Cannot create children for a parent that is in a different thread.
(Parent is Adwaita::WidgetStateEngine(0x245e160), parent's thread is QThread(0x23be180), current thread is QThread(0x7f60e80024f0)
QObject::installEventFilter(): Cannot filter events for objects in a different thread.
QObject::installEventFilter(): Cannot filter events for objects in a different thread.
QObject: Cannot create children for a parent that is in a different thread.
(Parent is Adwaita::WidgetStateEngine(0x245e160), parent's thread is QThread(0x23be180), current thread is QThread(0x7f60e80024f0)
QObject: Cannot create children for a parent that is in a different thread.
(Parent is Adwaita::WidgetStateEngine(0x245e160), parent's thread is QThread(0x23be180), current thread is QThread(0x7f60e80024f0)
QObject: Cannot create children for a parent that is in a different thread.
(Parent is Adwaita::WidgetStateEngine(0x245e160), parent's thread is QThread(0x23be180), current thread is QThread(0x7f60e80024f0)
QWidget::repaint: Recursive repaint detected
Segmentation fault (core dumped)
karlp@beros:~$
Comment 5 Uwe Hermann 2018-08-21 18:57:06 CEST
Do you get "QWidget::repaint: Recursive repaint detected" in #1265 as well? If yes, it's probably the same bug and can be merged.
Comment 6 karlp 2018-08-21 22:33:28 CEST
not _exactly, but that's a good idea, I've added a log from there, now with the -s command.