Summary: | crash when playing a .mov file [yuv444_to_yuy2_mmx, image_decode_data] | ||
---|---|---|---|
Product: | [Frameworks and Libraries] Phonon | Reporter: | Stephen Warren <s-t-kdebugs> |
Component: | Xine backend | Assignee: | Matthias Kretz <kretz> |
Status: | RESOLVED UPSTREAM | ||
Severity: | crash | CC: | caulier.gilles, dweb98, echidnaman, gary4gar, Julien, manuel.stade, martin.sandsmark, matrobriva, myriam |
Priority: | NOR | ||
Version: | 4.4.0 (KDE 4.4.2) | ||
Target Milestone: | --- | ||
Platform: | Ubuntu | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: | |||
Attachments: | `valgrind --log-file=digikam-valgrind digikam` |
Description
Stephen Warren
2010-04-08 07:25:07 UTC
*** Bug 233693 has been marked as a duplicate of this bug. *** *** This bug has been marked as a duplicate of bug 196320 *** Hmm, it bears similarity to bug 196320, though I don't think it's the same. Quoting from the KCrash Handler: Thread 4 (Thread 0xa85e2b70 (LWP 2217)): [KCrash Handler] #6 yuv444_to_yuy2_mmx (yuv_planes=0xa85e2228, yuy2_map=0x0, pitch=-1280) at color.c:366 #7 0x0692f265 in image_decode_data (this_gen=0x0, buf=0x0) at gdkpixbuf.c:168 Backtrace stopped: previous frame inner to this frame (corrupt stack?) Sorry, but this backtrace is not really useful, also I can't see any relation to Phonon in it. Please make sure you have all necessary codecs installed and check here on how to get a better backtrace: http://techbase.kde.org/Development/Tutorials/Debugging/How_to_create_useful_crash_reports I already have all debug packages installed. Doesn't the KDE crash handler just use gdb to generate the backtrace; if so, there's no way I can get a better backtrace by running gdb manually etc. The crash handler says the stack is corrupt; that's probably a symptom of the problem, which correlates well with a segfault. If you simply run the repro steps, you'll very easily get the same problem, at which point, you can extract any information you want. So, NEEDSINFO seems inappropriate when I've already supplied infinitely more information than any random end-user could be expected to. Can you run it in Valgrind? Created attachment 42609 [details]
`valgrind --log-file=digikam-valgrind digikam`
Output from comment #7: ==2345== Memcheck, a memory error detector ==2345== Copyright (C) 2002-2009, and GNU GPL'd, by Julian Seward et al. ==2345== Using Valgrind-3.6.0.SVN-Debian and LibVEX; rerun with -h for copyright info ==2345== Command: digikam ==2345== Parent PID: 2041 ==2345== ==2345== Conditional jump or move depends on uninitialised value(s) ==2345== at 0x5EBC5F0: QX11PaintEngine::updateMatrix(QTransform const&) (qpaintengine_x11.cpp:2035) ==2345== by 0x5EC840A: QX11PaintEngine::updateState(QPaintEngineState const&) (qpaintengine_x11.cpp:1077) ==2345== by 0x5E04593: QPainterPrivate::updateStateImpl(QPainterState*) (qpainter.cpp:892) ==2345== by 0x5E0465B: QPainterPrivate::updateState(QPainterState*) (qpainter.cpp:920) ==2345== by 0x5E0EF69: QPainter::drawPolygon(QPoint const*, int, Qt::FillRule) (qpainter.cpp:4962) ==2345== by 0x82D5306: Digikam::ImageDelegate::updateSizeRectsAndPixmaps() (qpainter.h:596) ==2345== by 0x82D58D2: Digikam::ImageDelegate::invalidatePaintingCache() (imagedelegate.cpp:493) ==2345== by 0x82CEC1C: Digikam::ImageCategorizedView::ImageCategorizedView(QWidget*) (imagecategorizedview.cpp:152) ==2345== by 0x82AFD0A: Digikam::DigikamImageView::DigikamImageView(QWidget*) (digikamimageview.cpp:71) ==2345== by 0x8282E02: Digikam::AlbumWidgetStack::AlbumWidgetStack(QWidget*) (albumwidgetstack.cpp:96) ==2345== by 0x82B93ED: Digikam::DigikamView::DigikamView(QWidget*) (digikamview.cpp:215) ==2345== by 0x829E81F: Digikam::DigikamApp::setupView() (digikamapp.cpp:493) ==2345== ==2345== Syscall param semctl(IPC_SET, arg.buf) points to uninitialised byte(s) ==2345== at 0x6EE2928: semctl@@GLIBC_2.2 (semctl.c:109) ==2345== by 0xAF571A3: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF4FEAF: snd_pcm_dmix_open (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF5089C: _snd_pcm_dmix_open (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF1A2C0: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF1AB3A: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF378B2: _snd_pcm_plug_open (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF1A2C0: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF1AB3A: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF57E91: _snd_pcm_asym_open (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF1A2C0: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF1A9CC: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== Address 0xbe821d70 is on thread 1's stack ==2345== ==2345== Syscall param ioctl(arg) contains uninitialised byte(s) ==2345== at 0x6ED85E9: ioctl (syscall-template.S:82) ==2345== by 0xAF14D80: snd_pcm_prepare (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF1AFAC: snd_pcm_hw_params (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF55BB1: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF504A1: snd_pcm_dmix_open (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF5089C: _snd_pcm_dmix_open (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF1A2C0: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF1AB3A: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF378B2: _snd_pcm_plug_open (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF1A2C0: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF1AB3A: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF57E91: _snd_pcm_asym_open (in /usr/lib/libasound.so.2.0.0) ==2345== ==2345== Syscall param ioctl(arg) contains uninitialised byte(s) ==2345== at 0x6ED85E9: ioctl (syscall-template.S:82) ==2345== by 0xAF14C40: snd_pcm_start (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF55F6A: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF504A1: snd_pcm_dmix_open (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF5089C: _snd_pcm_dmix_open (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF1A2C0: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF1AB3A: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF378B2: _snd_pcm_plug_open (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF1A2C0: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF1AB3A: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF57E91: _snd_pcm_asym_open (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF1A2C0: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== ==2345== Thread 13: ==2345== Syscall param ioctl(arg) contains uninitialised byte(s) ==2345== at 0x6ED85E9: ioctl (syscall-template.S:82) ==2345== by 0xAF15020: snd_pcm_hwsync (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF4E078: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF4FC0A: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF14C40: snd_pcm_start (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF27AB4: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF14C40: snd_pcm_start (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF19E96: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF28BF8: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF1467B: snd_pcm_writei (in /usr/lib/libasound.so.2.0.0) ==2345== by 0x1436916D: ao_alsa_write (audio_alsa_out.c:799) ==2345== by 0x12E7D077: ao_loop (audio_out.c:1245) ==2345== ==2345== Syscall param ioctl(arg) contains uninitialised byte(s) ==2345== at 0x6ED85E9: ioctl (syscall-template.S:82) ==2345== by 0xAF60341: snd_timer_start (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF4E0B5: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF4FC0A: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF14C40: snd_pcm_start (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF27AB4: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF14C40: snd_pcm_start (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF19E96: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF28BF8: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF1467B: snd_pcm_writei (in /usr/lib/libasound.so.2.0.0) ==2345== by 0x1436916D: ao_alsa_write (audio_alsa_out.c:799) ==2345== by 0x12E7D077: ao_loop (audio_out.c:1245) ==2345== ==2345== Syscall param ioctl(arg) contains uninitialised byte(s) ==2345== at 0x6ED85E9: ioctl (syscall-template.S:82) ==2345== by 0xAF15020: snd_pcm_hwsync (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF4EBDA: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF15020: snd_pcm_hwsync (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF27B14: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF15020: snd_pcm_hwsync (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF19D0F: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF28BF8: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF1467B: snd_pcm_writei (in /usr/lib/libasound.so.2.0.0) ==2345== by 0x1436916D: ao_alsa_write (audio_alsa_out.c:799) ==2345== by 0x12E7D077: ao_loop (audio_out.c:1245) ==2345== by 0x6C4A96D: start_thread (pthread_create.c:300) ==2345== ==2345== Syscall param ioctl(arg) contains uninitialised byte(s) ==2345== at 0x6ED85E9: ioctl (syscall-template.S:82) ==2345== by 0xAF602E1: snd_timer_stop (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF4EB86: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF15020: snd_pcm_hwsync (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF27B14: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF15020: snd_pcm_hwsync (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF19D0F: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF28BF8: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF1467B: snd_pcm_writei (in /usr/lib/libasound.so.2.0.0) ==2345== by 0x1436916D: ao_alsa_write (audio_alsa_out.c:799) ==2345== by 0x12E7D077: ao_loop (audio_out.c:1245) ==2345== by 0x6C4A96D: start_thread (pthread_create.c:300) ==2345== ==2345== Syscall param ioctl(arg) contains uninitialised byte(s) ==2345== at 0x6ED85E9: ioctl (syscall-template.S:82) ==2345== by 0xAF15020: snd_pcm_hwsync (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF4EBDA: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF4ED2F: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF10EDA: snd_pcm_avail_update (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF286F9: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF10EDA: snd_pcm_avail_update (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF19D22: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF28BF8: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF1467B: snd_pcm_writei (in /usr/lib/libasound.so.2.0.0) ==2345== by 0x1436916D: ao_alsa_write (audio_alsa_out.c:799) ==2345== by 0x12E7D077: ao_loop (audio_out.c:1245) ==2345== ==2345== Syscall param ioctl(arg) contains uninitialised byte(s) ==2345== at 0x6ED85E9: ioctl (syscall-template.S:82) ==2345== by 0xAF15020: snd_pcm_hwsync (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF4EBDA: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF4F9C4: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF117DF: snd_pcm_mmap_commit (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF2825F: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF19D65: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF28BF8: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF1467B: snd_pcm_writei (in /usr/lib/libasound.so.2.0.0) ==2345== by 0x1436916D: ao_alsa_write (audio_alsa_out.c:799) ==2345== by 0x12E7D077: ao_loop (audio_out.c:1245) ==2345== by 0x6C4A96D: start_thread (pthread_create.c:300) ==2345== ==2345== Syscall param ioctl(arg) contains uninitialised byte(s) ==2345== at 0x6ED85E9: ioctl (syscall-template.S:82) ==2345== by 0xAF15020: snd_pcm_hwsync (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF4EBDA: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF4F417: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF15284: snd_pcm_status (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF2907A: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF15284: snd_pcm_status (in /usr/lib/libasound.so.2.0.0) ==2345== by 0x14369207: ao_alsa_write (audio_alsa_out.c:787) ==2345== by 0x12E7D077: ao_loop (audio_out.c:1245) ==2345== by 0x6C4A96D: start_thread (pthread_create.c:300) ==2345== by 0x6EE09DD: clone (clone.S:130) ==2345== ==2345== Syscall param ioctl(arg) contains uninitialised byte(s) ==2345== at 0x6ED85E9: ioctl (syscall-template.S:82) ==2345== by 0xAF15020: snd_pcm_hwsync (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF4EBDA: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF4EDE7: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF14F77: snd_pcm_delay (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF28E63: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF14F77: snd_pcm_delay (in /usr/lib/libasound.so.2.0.0) ==2345== by 0x1436827D: ao_alsa_delay (audio_alsa_out.c:662) ==2345== by 0x12E7C320: ao_loop (audio_out.c:1098) ==2345== by 0x6C4A96D: start_thread (pthread_create.c:300) ==2345== by 0x6EE09DD: clone (clone.S:130) ==2345== ==2345== Syscall param ioctl(arg) contains uninitialised byte(s) ==2345== at 0x6ED85E9: ioctl (syscall-template.S:82) ==2345== by 0xAF602E1: snd_timer_stop (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF4EB86: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF4ED2F: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF10EDA: snd_pcm_avail_update (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF568EF: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF4F912: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF13F45: snd_pcm_poll_descriptors_revents (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF27D89: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF13F45: snd_pcm_poll_descriptors_revents (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF19ACE: ??? (in /usr/lib/libasound.so.2.0.0) ==2345== by 0xAF19C72: snd_pcm_wait (in /usr/lib/libasound.so.2.0.0) ==2345== ==2345== Thread 17: ==2345== Invalid write of size 8 ==2345== at 0x12E923DC: yuv444_to_yuy2_mmx (color.c:366) ==2345== by 0x23C62264: image_decode_data (gdkpixbuf.c:168) ==2345== Address 0x0 is not stack'd, malloc'd or (recently) free'd ==2345== ==2345== ==2345== HEAP SUMMARY: ==2345== in use at exit: 78,123,707 bytes in 825,979 blocks ==2345== total heap usage: 4,736,807 allocs, 3,910,828 frees, 681,319,780 bytes allocated ==2345== ==2345== LEAK SUMMARY: ==2345== definitely lost: 19,604 bytes in 67 blocks ==2345== indirectly lost: 68,740 bytes in 3,411 blocks ==2345== possibly lost: 48,697,768 bytes in 587,445 blocks ==2345== still reachable: 29,322,099 bytes in 234,782 blocks ==2345== suppressed: 15,496 bytes in 274 blocks ==2345== Rerun with --leak-check=full to see details of leaked memory ==2345== ==2345== For counts of detected and suppressed errors, rerun with: -v ==2345== Use --track-origins=yes to see where uninitialised values come from ==2345== ERROR SUMMARY: 352 errors from 14 contexts (suppressed: 743 from 20) The bug is not reproducible here on DigiKam Version 1.2.0 the attacted MOV sample file plays without any errors http://a1408.g.akamai.net/5/1408/1388/2005110403/1a1a1ad948be278cff2d96046ad90768d848b41947aa1986/sample_iTunes.mov.zip Please try it on latest version :) Yes, that .MOV doesn't crash digikam here either. Here is one that does: http://avon.wwwdotorg.org/downloads/digikam-crash/P1030473.MOV Trying 1.2.0 isn't that useful; at this late stage, I doubt the Ubuntu packagers are going to jump from 1.1.0 to 1.2.0 (just 2-3 weeks before release). Stephen, there is not much we can do about, we track bugs for the latest versions in KDE, it's up to the distributions to provide the latest packages. Please report this to your distribution. Also, JFYI, Kubuntu 10.04 ships the latest 1.2.0 version. Please try reproducing this with the new version. I don't think you've actually tried to reproduce my bug; Gaurish reported that it didn't reproduce with his/her MOV file. Indeed it doesn't. I have since provided a MOV file for which this bug does reproduce. Did anyone attempt to reproduce the bug with that? Without such an attempt, I have no reason to believe the bug is fixed in the latest version, so not much inclination to even try it. Besides, I don't have Kubuntu or the latest digikam version, so it'd be easiest for somebody who does to simply try my MOV file... (In reply to comment #12) > I don't think you've actually tried to reproduce my bug Of course I did, and I can't reproduce any crashes here, be it with the VLC backend or the xine backend. I just wanted to give you an opportunity to test for yourself, but of course, you are free not to. What you don't understand is that reporting bugs at the KDE bugtracker needs the latest released versions,we do not provide support for previous version. For that, please address your distribution. I tried to reproduce using svn 1.3.0 of digikam on ubuntu 10.4. I can not reproduce as well. Julien That's fine then. Note that good bug management practice would have been to mention what testing you'd performed, rather than just kicking the bug back to the reporter with no information. Interestingly, Ubuntu did update to digikam-1.2.0 in lucid. The bug still reproduces there. This looks more a Xine issue, please report it (with the proper testcase files) to the Xine developers. *** Bug 243812 has been marked as a duplicate of this bug. *** *** Bug 247821 has been marked as a duplicate of this bug. *** *** Bug 264648 has been marked as a duplicate of this bug. *** |