Summary: | crash on insertion of usb wireless keyboard receiver, recursion in Solid::Backends::UPower::UPowerDevice::{product,description} smashes stack | ||
---|---|---|---|
Product: | [Unmaintained] solid | Reporter: | James Hogan <james> |
Component: | libsolid-upower | Assignee: | Lukáš Tinkl <lukas> |
Status: | RESOLVED FIXED | ||
Severity: | crash | CC: | afiestas, bart.cerneels, matej |
Priority: | NOR | ||
Version: | 4.10.1 | ||
Target Milestone: | 4.11 | ||
Platform: | Fedora RPMs | ||
OS: | Linux | ||
Latest Commit: | http://commits.kde.org/kdelibs/38602a8d922e1c47cf471aae4739f3dfbff54d0e | Version Fixed In: | 4.11 |
Sentry Crash Report: | |||
Attachments: | Updated backtrace with full amarok debug symbols installed |
Description
James Hogan
2013-04-06 22:36:35 UTC
A complete backtrace would be useful, if you can reproduce this. Most likely a duplicate of bug 314544 which is a Solid regression, not an Amarok bug. (In reply to comment #1) > A complete backtrace would be useful, if you can reproduce this. Most likely > a duplicate of bug 314544 which is a Solid regression, not an Amarok bug. Thanks Myriam. As I stated it's always reproducible, so I can provide specific debug info on request easily enough, however I think the backtrace I pasted covers the interesting bits? The 116108 omitted stack frames are all just straightforward alternations between Solid::Backends::UPower::UPowerDevice::description and Solid::Backends::UPower::UPowerDevice::product. Although bug 314544 is in solid, I cannot see any indications that it's the same problem, and none of the backtraces appear to correlate with this problem. Cheers James (In reply to comment #2) > (In reply to comment #1) > > A complete backtrace would be useful, if you can reproduce this. Most likely > > a duplicate of bug 314544 which is a Solid regression, not an Amarok bug. > > Thanks Myriam. As I stated it's always reproducible, so I can provide > specific debug info on request easily enough, however I think the backtrace > I pasted covers the interesting bits? The 116108 omitted stack frames are > all just straightforward alternations between > Solid::Backends::UPower::UPowerDevice::description and > Solid::Backends::UPower::UPowerDevice::product. What interests me is to get a backtrace like the one produce by Dr. Konqi, you need to run KDE for that, though. Since I don't have that piece of hardware I can't reproduce this here. (In reply to comment #3) > (In reply to comment #2) > > (In reply to comment #1) > > > A complete backtrace would be useful, if you can reproduce this. Most likely > > > a duplicate of bug 314544 which is a Solid regression, not an Amarok bug. > > > > Thanks Myriam. As I stated it's always reproducible, so I can provide > > specific debug info on request easily enough, however I think the backtrace > > I pasted covers the interesting bits? The 116108 omitted stack frames are > > all just straightforward alternations between > > Solid::Backends::UPower::UPowerDevice::description and > > Solid::Backends::UPower::UPowerDevice::product. > > What interests me is to get a backtrace like the one produce by Dr. Konqi, > you need to run KDE for that, though. I'm running KDE, however Dr. Konqi didn't run. Assuming Dr. Konqi catches the SIGSEGV signal, since the stack has been smashed the signal delivery will fail and Dr. Konqi won't get a chance to run. If there's particular information Dr. Konqi provides that you're interested in though let me know, since I may be able to extract it from gdb. Cheers James Well, you should at least install the debugging symbols for Amarok, as those are obviously not installed, and provide a new backtrace with those. Created attachment 78739 [details]
Updated backtrace with full amarok debug symbols installed
Thanks for the suggestion Myriam. I only had the libamarok debug symbols installed, not the full amarok set.
(In reply to comment #6) > Created attachment 78739 [details] > Updated backtrace with full amarok debug symbols installed > > Thanks for the suggestion Myriam. I only had the libamarok debug symbols > installed, not the full amarok set. Thank you for the fast feedback. Apparently Amarok excepts a Media device: #116117 0x00000030567dd59f in MediaDeviceCache::slotAddSolidDevice (this=0x245ce20, udi=...) at /usr/src/debug/amarok-2.7.0/src/MediaDeviceCache.cpp:181 This is an infinite recursion in Solid::Backends::UPower::UPowerDevice::product() and Solid::Backends::UPower::UPowerDevice::description(). Amarok just calls device.product(), that alone couldn't be an error. Git commit 8ff75b92fe704d2b7ceca2d4cbe26a0dbbcaaa4f by Àlex Fiestas. Committed on 01/08/2013 at 19:27. Pushed by afiestas into branch 'master'. Fix infinite recursion in UPower backend Patches avoids calling Product from Description and adds "Vendor" as an additional fallback (better vendor than nothing, no?) REVIEW:111803 M +7 -2 solid/solid/backends/upower/upowerdevice.cpp http://commits.kde.org/kdelibs/8ff75b92fe704d2b7ceca2d4cbe26a0dbbcaaa4f Git commit 38602a8d922e1c47cf471aae4739f3dfbff54d0e by Àlex Fiestas. Committed on 01/08/2013 at 19:27. Pushed by afiestas into branch 'KDE/4.11'. Fix infinite recursion in UPower backend Patches avoids calling Product from Description and adds "Vendor" as an additional fallback (better vendor than nothing, no?) REVIEW:111803 (cherry picked from commit 8ff75b92fe704d2b7ceca2d4cbe26a0dbbcaaa4f) M +7 -2 solid/solid/backends/upower/upowerdevice.cpp http://commits.kde.org/kdelibs/38602a8d922e1c47cf471aae4739f3dfbff54d0e |