Bug 429850 (piotrintes) - Crash when traying to connect to new network
Summary: Crash when traying to connect to new network
Status: RESOLVED FIXED
Alias: piotrintes
Product: plasmashell
Classification: Plasma
Component: Networking in general (show other bugs)
Version: master
Platform: Kubuntu Linux
: NOR crash
Target Milestone: 1.0
Assignee: Jan Grulich
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-11-30 13:31 UTC by piotr.intes
Modified: 2024-12-23 18:23 UTC (History)
4 users (show)

See Also:
Latest Commit:
Version Fixed In: 5.20.0
Sentry Crash Report:


Attachments
Video illustrating crash (sr for quality there's attachment size limit) (432.59 KB, video/mp4)
2020-11-30 20:29 UTC, piotr.intes
Details

Note You need to log in before you can comment on or make changes to this bug.
Description piotr.intes 2020-11-30 13:31:43 UTC
Every time I try to use network manager widget to connect to new network it entire plasma shell crashes. Connecting to the network using manager window (which requires to add connection and input router's mac address manually) works. After connection is saved you can connect to the network without issues. I checked it on two different machines, it works the same for both. Another issue is that while I have one network seleted on the list and networks position changes my selection stays with the posision and not the network, so at the end I cna't tell which network system is traying to connect.


STEPS TO REPRODUCE
1. open network manager widget
2. find new network you have never connected to before
3. select it (you can notice that if it changes position on the list, you might end up with different network then one you have selected)
4. click connect and input password (still it is possible that networks will swap places, so you might be inputing password for wrong network)
5. click connect one more time
6. wait until plasma is done restarting itself after crach

OBSERVED RESULT
Networks changing places but selection stays on same position, resulting in changing which network is selected. Note that this may result in sending your password to wrong network which is searious seutiry issue (someone will recieve your wifi password)

Plasma crashes when you try to connect

EXPECTED RESULT
List shouldn't update when you have a network selected, not to mention when you are inputing password.

New connection should be establiched and you should be connected to it

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: Kubuntu 20.10
(available in About System)
KDE Plasma Version: 5.19.5
KDE Frameworks Version: 5.74.0
Qt Version: 5.14.2

ADDITIONAL INFORMATION
I know I am describing two issues there, but I think they might be connected, since I was unable to finninsh proedure without being interrupted by list items changing places, so I can't be sure if crash will occur if that doesn't happend.
Comment 1 David Edmundson 2020-11-30 15:15:06 UTC
Crashes should have a backtrace. See the sad face icon in the system tray when it restarts.

>Note that this may result in sending your password to wrong network which is searious seutiry issue (someone will recieve your wifi password)

Fortunately they won't, that's not how WPA handshakes work.
If it did you could intercept any password just by spoofing as SSID.
Comment 2 piotr.intes 2020-11-30 19:55:06 UTC
(In reply to David Edmundson from comment #1)
> Crashes should have a backtrace. See the sad face icon in the system tray
> when it restarts.
> 
> >Note that this may result in sending your password to wrong network which is searious seutiry issue (someone will recieve your wifi password)
> 
> Fortunately they won't, that's not how WPA handshakes work.
> If it did you could intercept any password just by spoofing as SSID.

There was no backtrace (unless it's in some file know nothing about). No sad face icon was displayed. Just panels were gone for 2-3 seconds.
I tried doing it again (removed connection, then tried to add it again) At first try it crashed (but still no sad face icon was displayed). Second time it suddenly worked (1/7).
Comment 3 piotr.intes 2020-11-30 20:29:02 UTC
Created attachment 133757 [details]
Video illustrating crash (sr for quality there's attachment size limit)
Comment 4 twinshadows404 2020-12-01 08:42:24 UTC
I reported this BUG:427522 but it got closed as a duplicate of BUG:423179
Comment 5 piotr.intes 2020-12-09 10:49:18 UTC
Ok. After several (more than several) tries, finally I've got a sad-face icon. There's what came in:

Application: Plazma (plasmashell), signal: Segmentation fault

[KCrash Handler]
#4  0x00007f82ebdbc392 in ?? () from /usr/lib/x86_64-linux-gnu/qt5/qml/org/kde/kquickcontrolsaddons/libkquickcontrolsaddonsplugin.so
#5  0x00007f83117962e6 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007f831324f147 in QQuickWindowPrivate::renderSceneGraph(QSize const&, QSize const&) () from /lib/x86_64-linux-gnu/libQt5Quick.so.5
#7  0x00007f83131f465b in ?? () from /lib/x86_64-linux-gnu/libQt5Quick.so.5
#8  0x00007f83131f54f7 in ?? () from /lib/x86_64-linux-gnu/libQt5Quick.so.5
#9  0x00007f831157ea41 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#10 0x00007f83109d5590 in start_thread (arg=0x7f82ce777640) at pthread_create.c:463
#11 0x00007f8311201223 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x556cee3e6a20, cond=0x556cee3e6a48) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x556cee3e6a48, mutex=0x556cee3e6a20) at pthread_cond_wait.c:638
#3  0x00007f831158474b in QWaitCondition::wait(QMutex*, QDeadlineTimer) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f83131f2ff2 in ?? () from /lib/x86_64-linux-gnu/libQt5Quick.so.5
#5  0x00007f83131f5539 in ?? () from /lib/x86_64-linux-gnu/libQt5Quick.so.5
#6  0x00007f831157ea41 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#7  0x00007f83109d5590 in start_thread (arg=0x7f82cffff640) at pthread_create.c:463
#8  0x00007f8311201223 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x556ceb1fb030, cond=0x556ceb1fb058) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x556ceb1fb058, mutex=0x556ceb1fb030) at pthread_cond_wait.c:638
#3  0x00007f831158474b in QWaitCondition::wait(QMutex*, QDeadlineTimer) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f83131f2ff2 in ?? () from /lib/x86_64-linux-gnu/libQt5Quick.so.5
#5  0x00007f83131f5539 in ?? () from /lib/x86_64-linux-gnu/libQt5Quick.so.5
#6  0x00007f831157ea41 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#7  0x00007f83109d5590 in start_thread (arg=0x7f82d530d640) at pthread_create.c:463
#8  0x00007f8311201223 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

#1  0x00007f830fbed71e in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f830fbed853 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f83117b785b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f831175ea4b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007f831157d8b2 in QThread::exec() () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007f831157ea41 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#7  0x00007f83109d5590 in start_thread (arg=0x7f82d6bf8640) at pthread_create.c:463
#8  0x00007f8311201223 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x556ceb2c97a0, cond=0x556ceb2c97c8) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x556ceb2c97c8, mutex=0x556ceb2c97a0) at pthread_cond_wait.c:638
#3  0x00007f831158474b in QWaitCondition::wait(QMutex*, QDeadlineTimer) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f83131f2ff2 in ?? () from /lib/x86_64-linux-gnu/libQt5Quick.so.5
#5  0x00007f83131f5539 in ?? () from /lib/x86_64-linux-gnu/libQt5Quick.so.5
#6  0x00007f831157ea41 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#7  0x00007f83109d5590 in start_thread (arg=0x7f82eb219640) at pthread_create.c:463
#8  0x00007f8311201223 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

#1  0x00007f830fbecc1f in g_main_context_prepare () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f830fbed64b in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f830fbed853 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f83117b785b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007f831175ea4b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007f831157d8b2 in QThread::exec() () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#7  0x00007f831314412a in ?? () from /lib/x86_64-linux-gnu/libQt5Quick.so.5
#8  0x00007f831157ea41 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#9  0x00007f83109d5590 in start_thread (arg=0x7f82ebaa4640) at pthread_create.c:463
#10 0x00007f8311201223 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x556ceb4ee858, cond=0x556ceb4ee880) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x556ceb4ee880, mutex=0x556ceb4ee858) at pthread_cond_wait.c:638
#3  0x00007f83048b84eb in ?? () from /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#4  0x00007f83048b7fab in ?? () from /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#5  0x00007f83109d5590 in start_thread (arg=0x7f82fe7fc640) at pthread_create.c:463
#6  0x00007f8311201223 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x556ceb4ee858, cond=0x556ceb4ee880) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x556ceb4ee880, mutex=0x556ceb4ee858) at pthread_cond_wait.c:638
#3  0x00007f83048b84eb in ?? () from /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#4  0x00007f83048b7fab in ?? () from /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#5  0x00007f83109d5590 in start_thread (arg=0x7f82feffd640) at pthread_create.c:463
#6  0x00007f8311201223 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x556ceb4ee858, cond=0x556ceb4ee880) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x556ceb4ee880, mutex=0x556ceb4ee858) at pthread_cond_wait.c:638
#3  0x00007f83048b84eb in ?? () from /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#4  0x00007f83048b7fab in ?? () from /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#5  0x00007f83109d5590 in start_thread (arg=0x7f82ff7fe640) at pthread_create.c:463
#6  0x00007f8311201223 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x556ceb4ee858, cond=0x556ceb4ee880) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x556ceb4ee880, mutex=0x556ceb4ee858) at pthread_cond_wait.c:638
#3  0x00007f83048b84eb in ?? () from /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#4  0x00007f83048b7fab in ?? () from /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#5  0x00007f83109d5590 in start_thread (arg=0x7f82fffff640) at pthread_create.c:463
#6  0x00007f8311201223 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

#1  __GI___libc_read (fd=12, buf=0x7f8306780a90, nbytes=16) at ../sysdeps/unix/sysv/linux/read.c:24
#2  0x00007f830fc3aabf in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f830fbed23b in g_main_context_check () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f830fbed6c5 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007f830fbed853 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#6  0x00007f83117b785b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#7  0x00007f831175ea4b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#8  0x00007f831157d8b2 in QThread::exec() () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#9  0x00007f8312e9d739 in ?? () from /lib/x86_64-linux-gnu/libQt5Qml.so.5
#10 0x00007f831157ea41 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#11 0x00007f83109d5590 in start_thread (arg=0x7f8306781640) at pthread_create.c:463
#12 0x00007f8311201223 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

#1  __GI___libc_read (fd=7, buf=0x7f8307b15a60, nbytes=16) at ../sysdeps/unix/sysv/linux/read.c:24
#2  0x00007f830fc3aabf in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f830fbed23b in g_main_context_check () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f830fbed6c5 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007f830fbed853 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#6  0x00007f83117b785b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#7  0x00007f831175ea4b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#8  0x00007f831157d8b2 in QThread::exec() () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#9  0x00007f83128544cb in ?? () from /lib/x86_64-linux-gnu/libQt5DBus.so.5
#10 0x00007f831157ea41 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#11 0x00007f83109d5590 in start_thread (arg=0x7f8307b16640) at pthread_create.c:463
#12 0x00007f8311201223 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

#1  0x00007f831360bc1a in ?? () from /lib/x86_64-linux-gnu/libxcb.so.1
#2  0x00007f831360d90a in xcb_wait_for_event () from /lib/x86_64-linux-gnu/libxcb.so.1
#3  0x00007f830ce61338 in ?? () from /lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#4  0x00007f831157ea41 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007f83109d5590 in start_thread (arg=0x7f830c891640) at pthread_create.c:463
#6  0x00007f8311201223 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x556cf22a7220, cond=0x556cf22a7248) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x556cf22a7248, mutex=0x556cf22a7220) at pthread_cond_wait.c:638
#3  0x00007f831158474b in QWaitCondition::wait(QMutex*, QDeadlineTimer) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f83131f713d in ?? () from /lib/x86_64-linux-gnu/libQt5Quick.so.5
#5  0x00007f831325cad7 in QQuickWindow::event(QEvent*) () from /lib/x86_64-linux-gnu/libQt5Quick.so.5
#6  0x00007f831226c013 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#7  0x00007f83117601ca in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#8  0x00007f8311b208c4 in QPlatformWindow::windowEvent(QEvent*) () from /lib/x86_64-linux-gnu/libQt5Gui.so.5
#9  0x00007f831227132b in QApplication::notify(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#10 0x00007f83117601ca in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#11 0x00007f83117b6b73 in QTimerInfoList::activateTimers() () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#12 0x00007f83117b74b4 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#13 0x00007f830fbed4db in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#14 0x00007f830fbed788 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#15 0x00007f830fbed853 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#16 0x00007f83117b7843 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#17 0x00007f831175ea4b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#18 0x00007f8311766fc6 in QCoreApplication::exec() () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#19 0x0000556ce93b584b in ?? ()
#20 0x00007f8311110cb2 in __libc_start_main (main=0x556ce93b4c90, argc=1, argv=0x7ffc9bba27a8, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffc9bba2798) at ../csu/libc-start.c:314
#21 0x0000556ce93b5a2e in _start ()
[Inferior 1 (process 1430) detached]
Comment 6 Christoph Feck 2020-12-11 17:36:33 UTC
New information was added with comment 5; changing status for inspection.
Comment 7 Jan Grulich 2021-01-05 12:25:33 UTC
I don't see anything plasma-nm related in the backtrace. Can you install debug symbols for plasma-framework and for kdeclarative and get a new backtrace?
Comment 8 David Edmundson 2021-01-05 12:41:46 UTC
It means the crash is in kdeclaratives's plotter, which has been replaced in newer plasma-nm
Comment 9 Jan Grulich 2021-01-05 12:43:35 UTC
Oh, right, that's most likely the issue. Closing this bug now then.
Comment 10 Ben Cooksley 2024-12-23 18:23:42 UTC
Bulk transfer as requested in T17796