Bug 375599 - partitionmanager crashes after creating an LVM partition
Summary: partitionmanager crashes after creating an LVM partition
Status: RESOLVED FIXED
Alias: None
Product: partitionmanager
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Gentoo Packages Linux
: NOR crash
Target Milestone: ---
Assignee: Andrius Štikonas
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2017-01-26 22:49 UTC by Frank Steinmetzger
Modified: 2017-01-26 23:44 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Frank Steinmetzger 2017-01-26 22:49:47 UTC
Application: partitionmanager (2.2.1)

Qt Version: 5.6.2
Frameworks Version: 5.29.0
Operating System: Linux 4.9.4 x86_64
Distribution (Platform): Gentoo Packages

-- Information about the crash:
- What I was doing when the application crashed:
I wanted to create an LVM structure on an SD card in order to explore the program for l10n purposes. I emptied the card and created a new LVM primary partition. I waited for the process to finish, observed the lvm output in the meantime. Then the application crashed.

It happened twice in a row now. In the first run I deleted the card’s original partition table and created the LVM partition in one single queue. After I restarted the application, the LVM partition was actually there. Then I deleted it and applied that change. Now I created the partition again and waited for it to finish, resulting again in a crash.

The crash can be reproduced every time.

-- Backtrace:
Application: KDE-Partitionsverwaltung (partitionmanager), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7fd7c1c3e7c0 (LWP 2889))]

Thread 3 (Thread 0x7fd7bf4cd700 (LWP 2890)):
#0  0x00007fd7cc0d44ed in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007fd7c79258f2 in poll (__timeout=-1, __nfds=1, __fds=0x7fd7bf4ccd00) at /usr/include/bits/poll2.h:46
#2  _xcb_conn_wait (c=c@entry=0x16fc170, cond=cond@entry=0x16fc1b0, vector=vector@entry=0x0, count=count@entry=0x0) at /var/tmp/portage/x11-libs/libxcb-1.12/work/libxcb-1.12/src/xcb_conn.c:479
#3  0x00007fd7c79276df in xcb_wait_for_event (c=0x16fc170) at /var/tmp/portage/x11-libs/libxcb-1.12/work/libxcb-1.12/src/xcb_in.c:693
#4  0x00007fd7c182d549 in QXcbEventReader::run (this=0x1706840) at qxcbconnection.cpp:1331
#5  0x00007fd7cc78fcac in QThreadPrivate::start (arg=0x1706840) at thread/qthread_unix.cpp:365
#6  0x00007fd7c963f444 in start_thread (arg=0x7fd7bf4cd700) at pthread_create.c:333
#7  0x00007fd7cc0dd5ed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 2 (Thread 0x7fd7b7fff700 (LWP 2891)):
#0  g_mutex_unlock (mutex=0x7fd7b0000990) at /var/tmp/portage/dev-libs/glib-2.48.2/work/glib-2.48.2/glib/gthread-posix.c:1347
#1  0x00007fd7c7db8520 in g_main_context_prepare (context=context@entry=0x7fd7b0000990, priority=priority@entry=0x7fd7b7ffec90) at /var/tmp/portage/dev-libs/glib-2.48.2/work/glib-2.48.2/glib/gmain.c:3440
#2  0x00007fd7c7db8f18 in g_main_context_iterate (context=context@entry=0x7fd7b0000990, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at /var/tmp/portage/dev-libs/glib-2.48.2/work/glib-2.48.2/glib/gmain.c:3820
#3  0x00007fd7c7db90fc in g_main_context_iteration (context=0x7fd7b0000990, may_block=1) at /var/tmp/portage/dev-libs/glib-2.48.2/work/glib-2.48.2/glib/gmain.c:3901
#4  0x00007fd7cc98237c in QEventDispatcherGlib::processEvents (this=0x7fd7b00008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:417
#5  0x00007fd7cc933e5a in QEventLoop::exec (this=this@entry=0x7fd7b7ffedd0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:206
#6  0x00007fd7cc78b4e4 in QThread::exec (this=this@entry=0x7fd7cacfd240 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at thread/qthread.cpp:500
#7  0x00007fd7cac90235 in QDBusConnectionManager::run (this=0x7fd7cacfd240 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at qdbusconnection.cpp:189
#8  0x00007fd7cc78fcac in QThreadPrivate::start (arg=0x7fd7cacfd240 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at thread/qthread_unix.cpp:365
#9  0x00007fd7c963f444 in start_thread (arg=0x7fd7b7fff700) at pthread_create.c:333
#10 0x00007fd7cc0dd5ed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 1 (Thread 0x7fd7c1c3e7c0 (LWP 2889)):
[KCrash Handler]
#6  0x00007fd7cf903d40 in Partition::sectorsUsed (this=this@entry=0x1ca08f0) at /var/tmp/portage/sys-libs/kpmcore-2.2.1/work/kpmcore-2.2.1/src/core/partition.cpp:178
#7  0x00007fd7cf9360cc in Partition::used (this=0x1ca08f0) at /var/tmp/portage/sys-libs/kpmcore-2.2.1/work/kpmcore-2.2.1/src/core/partition.h:169
#8  PartWidget::paintEvent (this=0x1fa90f0) at /var/tmp/portage/sys-libs/kpmcore-2.2.1/work/kpmcore-2.2.1/src/gui/partwidget.cpp:96
#9  0x00007fd7cd20b9d8 in QWidget::event (this=0x1fa90f0, event=0x7fffd2612810) at kernel/qwidget.cpp:9117
#10 0x00007fd7cd1c592c in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x1fa90f0, e=0x7fffd2612810) at kernel/qapplication.cpp:3804
#11 0x00007fd7cd1ca040 in QApplication::notify (this=0x7fffd2615110, receiver=0x1fa90f0, e=0x7fffd2612810) at kernel/qapplication.cpp:3561
#12 0x00007fd7cc9352d0 in QCoreApplication::notifyInternal2 (receiver=receiver@entry=0x1fa90f0, event=event@entry=0x7fffd2612810) at kernel/qcoreapplication.cpp:1015
#13 0x00007fd7cd20484a in QCoreApplication::sendSpontaneousEvent (event=0x7fffd2612810, receiver=0x1fa90f0) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:228
#14 QWidgetPrivate::sendPaintEvent (this=this@entry=0x1fe95f0, toBePainted=...) at kernel/qwidget.cpp:5671
#15 0x00007fd7cd204ea0 in QWidgetPrivate::drawWidget (this=this@entry=0x1fe95f0, pdev=pdev@entry=0x1835550, rgn=..., offset=..., flags=flags@entry=36, sharedPainter=sharedPainter@entry=0x0, backingStore=0x1b5f9c0) at kernel/qwidget.cpp:5611
#16 0x00007fd7cd205c5d in QWidgetPrivate::paintSiblingsRecursive (this=this@entry=0x1811ba0, pdev=pdev@entry=0x1835550, siblings=..., index=<optimized out>, rgn=..., offset=..., flags=36, sharedPainter=0x0, backingStore=0x1b5f9c0) at kernel/qwidget.cpp:5806
#17 0x00007fd7cd204a47 in QWidgetPrivate::drawWidget (this=this@entry=0x1811ba0, pdev=pdev@entry=0x1835550, rgn=..., offset=..., flags=flags@entry=36, sharedPainter=sharedPainter@entry=0x0, backingStore=0x1b5f9c0) at kernel/qwidget.cpp:5663
#18 0x00007fd7cd205c5d in QWidgetPrivate::paintSiblingsRecursive (this=this@entry=0x1830920, pdev=pdev@entry=0x1835550, siblings=..., index=<optimized out>, index@entry=1, rgn=..., offset=..., flags=36, sharedPainter=0x0, backingStore=0x1b5f9c0) at kernel/qwidget.cpp:5806
#19 0x00007fd7cd205aa7 in QWidgetPrivate::paintSiblingsRecursive (this=this@entry=0x1830920, pdev=pdev@entry=0x1835550, siblings=..., index=1, rgn=..., offset=..., flags=36, sharedPainter=0x0, backingStore=0x1b5f9c0) at kernel/qwidget.cpp:5793
#20 0x00007fd7cd204a47 in QWidgetPrivate::drawWidget (this=this@entry=0x1830920, pdev=pdev@entry=0x1835550, rgn=..., offset=..., flags=flags@entry=36, sharedPainter=sharedPainter@entry=0x0, backingStore=0x1b5f9c0) at kernel/qwidget.cpp:5663
#21 0x00007fd7cd205c5d in QWidgetPrivate::paintSiblingsRecursive (this=this@entry=0x1776d00, pdev=pdev@entry=0x1835550, siblings=..., index=<optimized out>, index@entry=9, rgn=..., offset=..., flags=36, sharedPainter=0x0, backingStore=0x1b5f9c0) at kernel/qwidget.cpp:5806
#22 0x00007fd7cd205aa7 in QWidgetPrivate::paintSiblingsRecursive (this=this@entry=0x1776d00, pdev=pdev@entry=0x1835550, siblings=..., index=9, index@entry=10, rgn=..., offset=..., flags=36, sharedPainter=0x0, backingStore=0x1b5f9c0) at kernel/qwidget.cpp:5793
#23 0x00007fd7cd205aa7 in QWidgetPrivate::paintSiblingsRecursive (this=this@entry=0x1776d00, pdev=pdev@entry=0x1835550, siblings=..., index=10, index@entry=11, rgn=..., offset=..., flags=36, sharedPainter=0x0, backingStore=0x1b5f9c0) at kernel/qwidget.cpp:5793
#24 0x00007fd7cd205aa7 in QWidgetPrivate::paintSiblingsRecursive (this=this@entry=0x1776d00, pdev=pdev@entry=0x1835550, siblings=..., index=11, index@entry=12, rgn=..., offset=..., flags=36, sharedPainter=0x0, backingStore=0x1b5f9c0) at kernel/qwidget.cpp:5793
#25 0x00007fd7cd205aa7 in QWidgetPrivate::paintSiblingsRecursive (this=this@entry=0x1776d00, pdev=pdev@entry=0x1835550, siblings=..., index=12, index@entry=13, rgn=..., offset=..., flags=36, sharedPainter=0x0, backingStore=0x1b5f9c0) at kernel/qwidget.cpp:5793
#26 0x00007fd7cd205aa7 in QWidgetPrivate::paintSiblingsRecursive (this=this@entry=0x1776d00, pdev=pdev@entry=0x1835550, siblings=..., index=13, index@entry=16, rgn=..., offset=..., flags=36, sharedPainter=0x0, backingStore=0x1b5f9c0) at kernel/qwidget.cpp:5793
#27 0x00007fd7cd205aa7 in QWidgetPrivate::paintSiblingsRecursive (this=this@entry=0x1776d00, pdev=pdev@entry=0x1835550, siblings=..., index=16, index@entry=26, rgn=..., offset=..., flags=36, sharedPainter=0x0, backingStore=0x1b5f9c0) at kernel/qwidget.cpp:5793
#28 0x00007fd7cd205aa7 in QWidgetPrivate::paintSiblingsRecursive (this=this@entry=0x1776d00, pdev=pdev@entry=0x1835550, siblings=..., index=26, index@entry=27, rgn=..., offset=..., flags=36, sharedPainter=0x0, backingStore=0x1b5f9c0) at kernel/qwidget.cpp:5793
#29 0x00007fd7cd205aa7 in QWidgetPrivate::paintSiblingsRecursive (this=this@entry=0x1776d00, pdev=pdev@entry=0x1835550, siblings=..., index=27, index@entry=28, rgn=..., offset=..., flags=36, sharedPainter=0x0, backingStore=0x1b5f9c0) at kernel/qwidget.cpp:5793
#30 0x00007fd7cd205aa7 in QWidgetPrivate::paintSiblingsRecursive (this=this@entry=0x1776d00, pdev=pdev@entry=0x1835550, siblings=..., index=28, index@entry=32, rgn=..., offset=..., flags=36, sharedPainter=0x0, backingStore=0x1b5f9c0) at kernel/qwidget.cpp:5793
#31 0x00007fd7cd205aa7 in QWidgetPrivate::paintSiblingsRecursive (this=this@entry=0x1776d00, pdev=pdev@entry=0x1835550, siblings=..., index=32, index@entry=33, rgn=..., offset=..., flags=36, sharedPainter=0x0, backingStore=0x1b5f9c0) at kernel/qwidget.cpp:5793
#32 0x00007fd7cd205aa7 in QWidgetPrivate::paintSiblingsRecursive (this=this@entry=0x1776d00, pdev=pdev@entry=0x1835550, siblings=..., index=33, index@entry=34, rgn=..., offset=..., flags=36, sharedPainter=0x0, backingStore=0x1b5f9c0) at kernel/qwidget.cpp:5793
#33 0x00007fd7cd205aa7 in QWidgetPrivate::paintSiblingsRecursive (this=this@entry=0x1776d00, pdev=pdev@entry=0x1835550, siblings=..., index=34, index@entry=35, rgn=..., offset=..., flags=36, sharedPainter=0x0, backingStore=0x1b5f9c0) at kernel/qwidget.cpp:5793
#34 0x00007fd7cd205aa7 in QWidgetPrivate::paintSiblingsRecursive (this=this@entry=0x1776d00, pdev=pdev@entry=0x1835550, siblings=..., index=35, rgn=..., offset=..., flags=36, sharedPainter=0x0, backingStore=0x1b5f9c0) at kernel/qwidget.cpp:5793
#35 0x00007fd7cd204a47 in QWidgetPrivate::drawWidget (this=this@entry=0x1776d00, pdev=0x1835550, rgn=..., offset=..., flags=flags@entry=37, sharedPainter=sharedPainter@entry=0x0, backingStore=0x1b5f9c0) at kernel/qwidget.cpp:5663
#36 0x00007fd7cd1d2ea1 in QWidgetBackingStore::doSync (this=this@entry=0x1b5f9c0) at kernel/qwidgetbackingstore.cpp:1388
#37 0x00007fd7cd1d30f9 in QWidgetBackingStore::sync (this=0x1b5f9c0) at kernel/qwidgetbackingstore.cpp:1173
#38 0x00007fd7cd1f4f7f in QWidgetPrivate::syncBackingStore (this=0x1776d00) at kernel/qwidget.cpp:1947
#39 0x00007fd7cd20ba88 in QWidget::event (this=this@entry=0x1776bf0, event=event@entry=0x1bbbe10) at kernel/qwidget.cpp:9056
#40 0x00007fd7cd30a54b in QMainWindow::event (this=this@entry=0x1776bf0, event=event@entry=0x1bbbe10) at widgets/qmainwindow.cpp:1543
#41 0x00007fd7cf0ec6c7 in KMainWindow::event (this=this@entry=0x1776bf0, ev=ev@entry=0x1bbbe10) at /var/tmp/portage/kde-frameworks/kxmlgui-5.29.0/work/kxmlgui-5.29.0/src/kmainwindow.cpp:867
#42 0x00007fd7cf12a355 in KXmlGuiWindow::event (this=0x1776bf0, ev=0x1bbbe10) at /var/tmp/portage/kde-frameworks/kxmlgui-5.29.0/work/kxmlgui-5.29.0/src/kxmlguiwindow.cpp:118
#43 0x00007fd7cd1c592c in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x1776bf0, e=0x1bbbe10) at kernel/qapplication.cpp:3804
#44 0x00007fd7cd1ca040 in QApplication::notify (this=0x7fffd2615110, receiver=0x1776bf0, e=0x1bbbe10) at kernel/qapplication.cpp:3561
#45 0x00007fd7cc9352d0 in QCoreApplication::notifyInternal2 (receiver=0x1776bf0, event=event@entry=0x1bbbe10) at kernel/qcoreapplication.cpp:1015
#46 0x00007fd7cc937533 in QCoreApplication::sendEvent (event=0x1bbbe10, receiver=<optimized out>) at kernel/qcoreapplication.h:225
#47 QCoreApplicationPrivate::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0, data=0x16ed650) at kernel/qcoreapplication.cpp:1650
#48 0x00007fd7cc937ad8 in QCoreApplication::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0) at kernel/qcoreapplication.cpp:1508
#49 0x00007fd7cc9822f3 in postEventSourceDispatch (s=0x172d000) at kernel/qeventdispatcher_glib.cpp:270
#50 0x00007fd7c7db8d6d in g_main_dispatch (context=0x7fd7b80016f0) at /var/tmp/portage/dev-libs/glib-2.48.2/work/glib-2.48.2/glib/gmain.c:3154
#51 g_main_context_dispatch (context=context@entry=0x7fd7b80016f0) at /var/tmp/portage/dev-libs/glib-2.48.2/work/glib-2.48.2/glib/gmain.c:3769
#52 0x00007fd7c7db9050 in g_main_context_iterate (context=context@entry=0x7fd7b80016f0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at /var/tmp/portage/dev-libs/glib-2.48.2/work/glib-2.48.2/glib/gmain.c:3840
#53 0x00007fd7c7db90fc in g_main_context_iteration (context=0x7fd7b80016f0, may_block=1) at /var/tmp/portage/dev-libs/glib-2.48.2/work/glib-2.48.2/glib/gmain.c:3901
#54 0x00007fd7cc982367 in QEventDispatcherGlib::processEvents (this=0x172e410, flags=...) at kernel/qeventdispatcher_glib.cpp:417
#55 0x00007fd7cc933e5a in QEventLoop::exec (this=this@entry=0x7fffd2614fe0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:206
#56 0x00007fd7cc93ba4c in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1285
#57 0x00007fd7ccc5e6ac in QGuiApplication::exec () at kernel/qguiapplication.cpp:1607
#58 0x00007fd7cd1c25e5 in QApplication::exec () at kernel/qapplication.cpp:2979
#59 0x000000000041bf51 in main (argc=1, argv=<optimized out>) at /var/tmp/portage/sys-block/partitionmanager-2.2.1/work/partitionmanager-2.2.1/src/main.cpp:89

Reported using DrKonqi
Comment 1 Andrius Štikonas 2017-01-26 22:58:23 UTC
Can you try  sys-block/partitionmanager-3.0.1 with sys-libs/kpmcore-3.0.2 as these versions had a huge amount of new LVM work?
Comment 2 Frank Steinmetzger 2017-01-26 23:33:12 UTC
Made the upgrade, deleted the partition, applied, created a new LVM primary partition, applied. No crash. :)

PS.: the string “Volume Group Type” in gui/volumegroupwidgetbase.ui:126 (according to my translation file) is missing the trailing colon.
Comment 3 Andrius Štikonas 2017-01-26 23:44:55 UTC
Ok, thanks. Pushed this colon fix to partition manager master. This is not urgent, so next version should be fine.

Note that are some fixes for LVM LVs encrypted with LUKS in kpmcore repository, I'll probably release it later as kpmcore 3.0.3.