Bug 350775 - Amarok crashes when iPod Touch is connected
Summary: Amarok crashes when iPod Touch is connected
Status: RESOLVED UNMAINTAINED
Alias: None
Product: amarok
Classification: Applications
Component: Collections/iPod iPhone (show other bugs)
Version: 2.8.0
Platform: Kubuntu Linux
: NOR crash
Target Milestone: 2.9
Assignee: Amarok Developers
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2015-07-29 22:10 UTC by joseph.m.pence
Modified: 2020-12-17 15:37 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
ifuse error (685 bytes, text/plain)
2015-08-05 02:58 UTC, joseph.m.pence
Details

Note You need to log in before you can comment on or make changes to this bug.
Description joseph.m.pence 2015-07-29 22:10:41 UTC
Application: amarok (2.8.0)
KDE Platform Version: 4.14.6
Qt Version: 4.8.6
Operating System: Linux 3.19.0-25-generic x86_64
Distribution: Ubuntu 15.04

-- Information about the crash:
- What I was doing when the application crashed:

Amarok crashes every time I have my iPod Touch 2G connected.

The crash can be reproduced every time.

-- Backtrace:
Application: Amarok (amarok), signal: Segmentation fault
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[Current thread is 1 (Thread 0x7fa77a7fa800 (LWP 1717))]

Thread 4 (Thread 0x7fa7576f7700 (LWP 1724)):
#0  0x00007fa77749149d in read () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007fa7670aef45 in  () at /usr/lib/nvidia-340/tls/libnvidia-tls.so.340.76
#2  0x00007fa76a74ab51 in pa_read () at /usr/lib/x86_64-linux-gnu/pulseaudio/libpulsecommon-6.0.so
#3  0x00007fa76f49375e in pa_mainloop_prepare () at /usr/lib/x86_64-linux-gnu/libpulse.so.0
#4  0x00007fa76f4941d0 in pa_mainloop_iterate () at /usr/lib/x86_64-linux-gnu/libpulse.so.0
#5  0x00007fa76f494290 in pa_mainloop_run () at /usr/lib/x86_64-linux-gnu/libpulse.so.0
#6  0x00007fa76f4a2596 in  () at /usr/lib/x86_64-linux-gnu/libpulse.so.0
#7  0x00007fa76a7776c8 in  () at /usr/lib/x86_64-linux-gnu/pulseaudio/libpulsecommon-6.0.so
#8  0x00007fa7736f66aa in start_thread (arg=0x7fa7576f7700) at pthread_create.c:333
#9  0x00007fa7774a0eed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 3 (Thread 0x7fa749ac1700 (LWP 1726)):
#0  0x00007fa7736fc149 in pthread_cond_timedwait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:238
#1  0x00007fa777aefc34 in QWaitCondition::wait(QMutex*, unsigned long) (time=60000, this=0x25a5a50) at thread/qwaitcondition_unix.cpp:84
#2  0x00007fa777aefc34 in QWaitCondition::wait(QMutex*, unsigned long) (this=this@entry=0x25b3530, mutex=mutex@entry=0x25b3528, time=time@entry=60000) at thread/qwaitcondition_unix.cpp:158
#3  0x00007fa7797f3356 in AbstractDirectoryWatcher::run() (this=0x25b3500) at ../../src/scanner/AbstractDirectoryWatcher.cpp:65
#4  0x00007fa774cd3f42 in ThreadWeaver::JobRunHelper::runTheJob(ThreadWeaver::Thread*, ThreadWeaver::Job*) (this=this@entry=0x7fa749ac0d90, th=th@entry=0x254bd80, job=job@entry=0x25b3500) at ../../../threadweaver/Weaver/Job.cpp:106
#5  0x00007fa774cd4158 in ThreadWeaver::Job::execute(ThreadWeaver::Thread*) (this=0x25b3500, th=0x254bd80) at ../../../threadweaver/Weaver/Job.cpp:135
#6  0x00007fa774cd38fb in ThreadWeaver::Thread::run() (this=0x254bd80) at ../../../threadweaver/Weaver/Thread.cpp:108
#7  0x00007fa777aef6ff in QThreadPrivate::start(void*) (arg=0x254bd80) at thread/qthread_unix.cpp:349
#8  0x00007fa7736f66aa in start_thread (arg=0x7fa749ac1700) at pthread_create.c:333
#9  0x00007fa7774a0eed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 2 (Thread 0x7fa743bea700 (LWP 1727)):
#0  0x00007ffd487d0cee in clock_gettime ()
#1  0x00007fa7774af38d in __GI___clock_gettime (clock_id=<optimized out>, tp=<optimized out>) at ../sysdeps/unix/clock_gettime.c:115
#2  0x00007fa777b46ac5 in qt_gettime() (frac=<synthetic pointer>, sec=<synthetic pointer>) at tools/qelapsedtimer_unix.cpp:127
#3  0x00007fa777b46ac5 in qt_gettime() () at tools/qelapsedtimer_unix.cpp:144
#4  0x00007fa777c2a695 in QTimerInfoList::timerWait(timeval&) (this=0x7fa73c0024e0) at kernel/qeventdispatcher_unix.cpp:354
#5  0x00007fa777c2a695 in QTimerInfoList::timerWait(timeval&) (this=0x7fa73c0024e0, tm=...) at kernel/qeventdispatcher_unix.cpp:460
#6  0x00007fa777c28f3c in timerSourcePrepareHelper(GTimerSource*, gint*) (src=<optimized out>, timeout=0x7fa743be9bb4) at kernel/qeventdispatcher_glib.cpp:143
#7  0x00007fa777c29005 in timerSourcePrepare(GSource*, gint*) (source=<optimized out>, timeout=timeout@entry=0x7fa743be9bb4) at kernel/qeventdispatcher_glib.cpp:176
#8  0x00007fa7716243fd in g_main_context_prepare (context=context@entry=0x7fa73c0009a0, priority=priority@entry=0x7fa743be9c40) at /build/buildd/glib2.0-2.44.1/./glib/gmain.c:3410
#9  0x00007fa771624de8 in g_main_context_iterate (context=context@entry=0x7fa73c0009a0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at /build/buildd/glib2.0-2.44.1/./glib/gmain.c:3788
#10 0x00007fa771624fcc in g_main_context_iteration (context=0x7fa73c0009a0, may_block=1) at /build/buildd/glib2.0-2.44.1/./glib/gmain.c:3869
#11 0x00007fa777c2987e in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7fa73c0008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:452
#12 0x00007fa777bf8d21 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7fa743be9d80, flags=...) at kernel/qeventloop.cpp:149
#13 0x00007fa777bf9085 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7fa743be9d80, flags=...) at kernel/qeventloop.cpp:204
#14 0x00007fa777aece89 in QThread::exec() (this=this@entry=0x25ed680) at thread/qthread.cpp:538
#15 0x00007fa777bd9493 in QInotifyFileSystemWatcherEngine::run() (this=0x25ed680) at io/qfilesystemwatcher_inotify.cpp:265
#16 0x00007fa777aef6ff in QThreadPrivate::start(void*) (arg=0x25ed680) at thread/qthread_unix.cpp:349
#17 0x00007fa7736f66aa in start_thread (arg=0x7fa743bea700) at pthread_create.c:333
#18 0x00007fa7774a0eed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 1 (Thread 0x7fa77a7fa800 (LWP 1717)):
[KCrash Handler]
#6  0x00007fa770eeee1d in g_type_check_value_holds (type=133143986208) at /build/buildd/glib2.0-2.44.1/./gobject/gtype.c:4159
#7  0x00007fa770eeee1d in g_type_check_value_holds (value=0x2746c00, type=40173664) at /build/buildd/glib2.0-2.44.1/./gobject/gtype.c:4208
#8  0x00007fa74b50b8d5 in  () at /usr/lib/x86_64-linux-gnu/libgpod.so.4
#9  0x00007fa74b5108a3 in itdb_parse () at /usr/lib/x86_64-linux-gnu/libgpod.so.4
#10 0x00007fa74b9b8a80 in IpodDeviceHelper::parseItdb(QString const&, QString&) (mountPoint=..., errorMsg=...) at ../../../../../src/core-impl/collections/ipodcollection/support/IpodDeviceHelper.cpp:34
#11 0x00007fa74b998c91 in IpodCollection::init() (this=this@entry=0x27d65e0) at ../../../../../src/core-impl/collections/ipodcollection/IpodCollection.cpp:118
#12 0x00007fa74b99e5c5 in IpodCollectionFactory::createCollectionForSolidDevice(QString const&) (this=this@entry=0x255f110, udi=...) at ../../../../../src/core-impl/collections/ipodcollection/IpodCollectionFactory.cpp:268
#13 0x00007fa74b99fbde in IpodCollectionFactory::init() (this=0x255f110) at ../../../../../src/core-impl/collections/ipodcollection/IpodCollectionFactory.cpp:56
#14 0x00007fa7797be6ed in CollectionManager::loadPlugins(QList<Collections::CollectionFactory*> const&) (this=this@entry=0x2503bd0, factories=...) at ../../src/core-impl/collections/support/CollectionManager.cpp:212
#15 0x00007fa7797beab7 in CollectionManager::handleNewFactories(QList<Plugins::PluginFactory*> const&) (this=0x2503bd0, factories=...) at ../../src/core-impl/collections/support/CollectionManager.cpp:180
#16 0x00007fa7798d946a in Plugins::PluginManager::init() (this=this@entry=0x226ee50) at ../../src/PluginManager.cpp:84
#17 0x00007fa7798d9b36 in Plugins::PluginManager::PluginManager(QObject*) (this=0x226ee50, parent=<optimized out>) at ../../src/PluginManager.cpp:65
#18 0x00007fa7798d9bd8 in Plugins::PluginManager::instance() () at ../../src/PluginManager.cpp:44
#19 0x00007fa7798ca041 in MainWindow::MainWindow() () at ../../src/PluginManager.h:74
#20 0x00007fa7798ca041 in MainWindow::MainWindow() (this=0x2506930) at ../../src/MainWindow.cpp:142
#21 0x00007fa7798b2ead in App::continueInit() (this=this@entry=0x7ffd487009d0) at ../../src/App.cpp:440
#22 0x00007fa7798b3f26 in App::App() (this=0x7ffd487009d0) at ../../src/App.cpp:175
#23 0x0000000000407df7 in main(int, char**) (argc=<optimized out>, argv=0x7ffd48700b38) at ../../src/main.cpp:327

Reported using DrKonqi
Comment 1 Myriam Schweingruber 2015-08-04 09:43:09 UTC
Could you please also install debugging symbols for libgpod? The crash seems to occur in that library, not in Amarok.

See these lines:

Thread 1 (Thread 0x7fa77a7fa800 (LWP 1717)):
[KCrash Handler]
#6  0x00007fa770eeee1d in g_type_check_value_holds (type=133143986208) at /build/buildd/glib2.0-2.44.1/./gobject/gtype.c:4159
#7  0x00007fa770eeee1d in g_type_check_value_holds (value=0x2746c00, type=40173664) at /build/buildd/glib2.0-2.44.1/./gobject/gtype.c:4208
#8  0x00007fa74b50b8d5 in  () at /usr/lib/x86_64-linux-gnu/libgpod.so.4
#9  0x00007fa74b5108a3 in itdb_parse () at /usr/lib/x86_64-linux-gnu/libgpod.so.4
Comment 2 joseph.m.pence 2015-08-04 23:48:43 UTC
Hello,

What command(s) would I need to run to install the debug symbols for libgpod?
Comment 3 Myriam Schweingruber 2015-08-05 00:47:34 UTC
If there are debugging symbols, those would have the same name as the libgpod package,  with the extension -dbg (depending on the distributions this can vary).

Both the iPod Touch and the iPhone have only a limited support in the libgpod library, the newer the device, the more likely it will not work I fear.

Does the crash only occur if you connect the device or does Amarok also crash if you start it with the device already connected?
Comment 4 joseph.m.pence 2015-08-05 02:58:45 UTC
Created attachment 93898 [details]
ifuse error
Comment 5 joseph.m.pence 2015-08-05 03:03:17 UTC
I don't seem to have a -debug package, I do see 6 support packages:
libgpod-cil
libgpod-cil-dev
libgpod-dev
libgpod-doc
libgpod-nogtk-dev
libgpod4-nogtk

I tried doing a sudo apt-get install libgpod-debug but it returned that no package was available, I apologize if there is some other command I could try that I am not familiar with.

Amarok crashes with the error I initiated the ticket with if I have the iPod already plugged in, if I don't already have the iPod plugged, Amarok gives the ifuse input/output error I attached.
Comment 6 joseph.m.pence 2015-08-05 03:10:23 UTC
It's also worth noting that in the case where Amarok crashes (if the iPod is plugged in), I am able to navigate into the iPod dirs on the mount point.
Comment 7 Myriam Schweingruber 2015-08-05 12:10:16 UTC
Thank you for the feedback.
Comment 8 Andrew Crouthamel 2018-10-31 03:51:59 UTC
Dear Bug Submitter,

This bug has been stagnant for a long time. Could you help us out and re-test if the bug is valid in the latest version? I am setting the status to NEEDSINFO pending your response, please change the Status back to REPORTED when you respond.

Thank you for helping us make KDE software even better for everyone!
Comment 9 Andrew Crouthamel 2018-11-12 03:23:07 UTC
Changing back to REPORTED per request of Myriam (Amarok dev).
Comment 10 Justin Zobel 2020-12-17 05:38:54 UTC
Thank you for the crash report.

As it has been a while since this was reported, can you please test and confirm if this issue is still occurring or if this bug report can be marked as resolved.

I have set the bug status to "needsinfo" pending your response, please change back to "reported" or "resolved/worksforme" when you respond, thank you.
Comment 11 Myriam Schweingruber 2020-12-17 15:37:42 UTC
Closing as this is about an obsolete Amarok version, and there never was better support for the device upstream anyway.