[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kdevelop-bugs
Subject:    [Bug 242668] New: KDevelop crash on exit - heap corruption?
From:       Paul Fee <pfee () talk21 ! com>
Date:       2010-06-24 8:45:00
Message-ID: bug-242668-40295 () http ! bugs ! kde ! org/
[Download RAW message or body]

https://bugs.kde.org/show_bug.cgi?id=242668

           Summary: KDevelop crash on exit - heap corruption?
           Product: kdevelop
           Version: unspecified
          Platform: Fedora RPMs
        OS/Version: Linux
            Status: UNCONFIRMED
          Severity: crash
          Priority: NOR
         Component: general
        AssignedTo: kdevelop-bugs@kdevelop.org
        ReportedBy: pfee@talk21.com


Application: kdevelop (4.0.0 (using KDevPlatform 1.0.0))
KDE Platform Version: 4.4.4 (KDE 4.4.4)
Qt Version: 4.6.2
Operating System: Linux 2.6.33.5-112.fc13.x86_64 x86_64
Distribution: "Fedora release 13 (Goddard)"

-- Information about the crash:
After using KDevelop for a while, I selected Session/Quit.  KDevelop crashed.

There are a bunch of similar bugs where glibc detects malloc/free problems. 
Here the last call before entering glibc is QString::free().  The other bugs
(I've noted a few possible duplicates) have different stack traces, but perhaps
they have the same root cause.

 -- Backtrace:
Application: KDevelop (kdevelop.bin), signal: Aborted
82    T_PSEUDO (SYSCALL_SYMBOL, SYSCALL_NAME, SYSCALL_NARGS)
[Current thread is 1 (Thread 0x7f7c0db18820 (LWP 22779))]

Thread 8 (Thread 0x7f7c01cf9710 (LWP 22782)):
#0  __lll_lock_wait () at
../nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:136
#1  0x0000003fe980b47c in pthread_cond_wait@@GLIBC_2.3.2 () at
../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:259
#2  0x0000003004670183 in QMutexPrivate::wait (this=0x7f7bfc0020c0, timeout=-1)
at thread/qmutex_unix.cpp:84
#3  0x000000300466cb25 in QMutex::lock (this=0x300080b3f0) at
thread/qmutex.cpp:167
#4  0x00000030004b169f in relock (this=0x132f0c0, retries=1,
needLockRepository=true) at /usr/include/QtCore/qmutex.h:120
#5  QMutexLocker (this=0x132f0c0, retries=1, needLockRepository=true) at
/usr/include/QtCore/qmutex.h:102
#6  KDevelop::DUChainPrivate::doMoreCleanup (this=0x132f0c0, retries=1,
needLockRepository=true) at
/usr/src/debug/kdevplatform-1.0.0/language/duchain/duchain.cpp:699
#7  0x00000030004b2f24 in KDevelop::DUChainPrivate::CleanupThread::run
(this=0x1327070) at
/usr/src/debug/kdevplatform-1.0.0/language/duchain/duchain.cpp:294
#8  0x0000003004670995 in QThreadPrivate::start (arg=0x1327070) at
thread/qthread_unix.cpp:248
#9  0x0000003fe9807761 in start_thread (arg=0x7f7c01cf9710) at
pthread_create.c:301
#10 0x0000003fe90e14dd in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 7 (Thread 0x7f7bf3fff710 (LWP 22786)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at
../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x000000300467188b in wait (this=<value optimized out>, mutex=0x1c0c5d0,
time=18446744073709551615) at thread/qwaitcondition_unix.cpp:87
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0x1c0c5d0,
time=18446744073709551615) at thread/qwaitcondition_unix.cpp:159
#3  0x000000300ba09f96 in
ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x1c08a30,
th=0x1bfdc50) at
/usr/src/debug/kdelibs-4.4.4/threadweaver/Weaver/WeaverImpl.cpp:365
#4  0x000000300ba0c4bb in ThreadWeaver::WorkingHardState::applyForWork
(this=0x12c3b50, th=0x1bfdc50) at
/usr/src/debug/kdelibs-4.4.4/threadweaver/Weaver/WorkingHardState.cpp:71
#5  0x000000300ba0c4d4 in ThreadWeaver::WorkingHardState::applyForWork
(this=0x12c3b50, th=0x1bfdc50) at
/usr/src/debug/kdelibs-4.4.4/threadweaver/Weaver/WorkingHardState.cpp:74
#6  0x000000300ba0ae7f in ThreadWeaver::ThreadRunHelper::run
(this=0x7f7bf3ffed40, parent=0x1c08a30, th=0x1bfdc50) at
/usr/src/debug/kdelibs-4.4.4/threadweaver/Weaver/Thread.cpp:87
#7  0x000000300ba0b368 in ThreadWeaver::Thread::run (this=0x1bfdc50) at
/usr/src/debug/kdelibs-4.4.4/threadweaver/Weaver/Thread.cpp:142
#8  0x0000003004670995 in QThreadPrivate::start (arg=0x1bfdc50) at
thread/qthread_unix.cpp:248
#9  0x0000003fe9807761 in start_thread (arg=0x7f7bf3fff710) at
pthread_create.c:301
#10 0x0000003fe90e14dd in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 6 (Thread 0x7f7be9846710 (LWP 22793)):
#0  __lll_lock_wait_private () at
../nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:97
#1  0x0000003fe907c014 in _L_lock_4983 () at malloc.c:3503
#2  0x0000003fe9077dc2 in _int_free (av=0x7f7bc0000020, p=0x7f7bc0001bf0,
have_lock=0) at malloc.c:4918
#3  0x0000003feb059f9b in magazine_cache_trim (ix=<value optimized out>,
magazine_chunks=<value optimized out>, count=<value optimized out>) at
gslice.c:626
#4  magazine_cache_push_magazine (ix=<value optimized out>,
magazine_chunks=<value optimized out>, count=<value optimized out>) at
gslice.c:657
#5  0x0000003feb05a173 in private_thread_memory_cleanup (data=0x7f7be0000a90)
at gslice.c:724
#6  0x0000003fe98077f9 in __nptl_deallocate_tsd (arg=0x7f7be9846710) at
pthread_create.c:154
#7  start_thread (arg=0x7f7be9846710) at pthread_create.c:308
#8  0x0000003fe90e14dd in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 5 (Thread 0x7f7bf35fe710 (LWP 22998)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at
../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x000000300b52a096 in QTWTF::TCMalloc_PageHeap::scavengerThread
(this=0x300b803f60) at
../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:2304
#2  0x000000300b52a0d9 in QTWTF::TCMalloc_PageHeap::runScavengerThread
(context=0x300b81202c) at
../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:1438
#3  0x0000003fe9807761 in start_thread (arg=0x7f7bf35fe710) at
pthread_create.c:301
#4  0x0000003fe90e14dd in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 4 (Thread 0x7f7bcf1ee710 (LWP 23014)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at
../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x000000300467188b in wait (this=<value optimized out>, mutex=0x1c0c5d0,
time=18446744073709551615) at thread/qwaitcondition_unix.cpp:87
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0x1c0c5d0,
time=18446744073709551615) at thread/qwaitcondition_unix.cpp:159
#3  0x000000300ba09f96 in
ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x1c08a30,
th=0x26f52f0) at
/usr/src/debug/kdelibs-4.4.4/threadweaver/Weaver/WeaverImpl.cpp:365
#4  0x000000300ba0c4bb in ThreadWeaver::WorkingHardState::applyForWork
(this=0x12c3b50, th=0x26f52f0) at
/usr/src/debug/kdelibs-4.4.4/threadweaver/Weaver/WorkingHardState.cpp:71
#5  0x000000300ba0c4d4 in ThreadWeaver::WorkingHardState::applyForWork
(this=0x12c3b50, th=0x26f52f0) at
/usr/src/debug/kdelibs-4.4.4/threadweaver/Weaver/WorkingHardState.cpp:74
#6  0x000000300ba0c4d4 in ThreadWeaver::WorkingHardState::applyForWork
(this=0x12c3b50, th=0x26f52f0) at
/usr/src/debug/kdelibs-4.4.4/threadweaver/Weaver/WorkingHardState.cpp:74
#7  0x000000300ba0c4d4 in ThreadWeaver::WorkingHardState::applyForWork
(this=0x12c3b50, th=0x26f52f0) at
/usr/src/debug/kdelibs-4.4.4/threadweaver/Weaver/WorkingHardState.cpp:74
#8  0x000000300ba0c4d4 in ThreadWeaver::WorkingHardState::applyForWork
(this=0x12c3b50, th=0x26f52f0) at
/usr/src/debug/kdelibs-4.4.4/threadweaver/Weaver/WorkingHardState.cpp:74
#9  0x000000300ba0c4d4 in ThreadWeaver::WorkingHardState::applyForWork
(this=0x12c3b50, th=0x26f52f0) at
/usr/src/debug/kdelibs-4.4.4/threadweaver/Weaver/WorkingHardState.cpp:74
#10 0x000000300ba0c4d4 in ThreadWeaver::WorkingHardState::applyForWork
(this=0x12c3b50, th=0x26f52f0) at
/usr/src/debug/kdelibs-4.4.4/threadweaver/Weaver/WorkingHardState.cpp:74
#11 0x000000300ba0ae7f in ThreadWeaver::ThreadRunHelper::run
(this=0x7f7bcf1edd40, parent=0x1c08a30, th=0x26f52f0) at
/usr/src/debug/kdelibs-4.4.4/threadweaver/Weaver/Thread.cpp:87
#12 0x000000300ba0b368 in ThreadWeaver::Thread::run (this=0x26f52f0) at
/usr/src/debug/kdelibs-4.4.4/threadweaver/Weaver/Thread.cpp:142
#13 0x0000003004670995 in QThreadPrivate::start (arg=0x26f52f0) at
thread/qthread_unix.cpp:248
#14 0x0000003fe9807761 in start_thread (arg=0x7f7bcf1ee710) at
pthread_create.c:301
#15 0x0000003fe90e14dd in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 3 (Thread 0x7f7bce7ed710 (LWP 23015)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at
../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x000000300467188b in wait (this=<value optimized out>, mutex=0x1c0c5d0,
time=18446744073709551615) at thread/qwaitcondition_unix.cpp:87
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0x1c0c5d0,
time=18446744073709551615) at thread/qwaitcondition_unix.cpp:159
#3  0x000000300ba09f96 in
ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x1c08a30,
th=0x25898a0) at
/usr/src/debug/kdelibs-4.4.4/threadweaver/Weaver/WeaverImpl.cpp:365
#4  0x000000300ba0c4bb in ThreadWeaver::WorkingHardState::applyForWork
(this=0x12c3b50, th=0x25898a0) at
/usr/src/debug/kdelibs-4.4.4/threadweaver/Weaver/WorkingHardState.cpp:71
#5  0x000000300ba0c4d4 in ThreadWeaver::WorkingHardState::applyForWork
(this=0x12c3b50, th=0x25898a0) at
/usr/src/debug/kdelibs-4.4.4/threadweaver/Weaver/WorkingHardState.cpp:74
#6  0x000000300ba0c4d4 in ThreadWeaver::WorkingHardState::applyForWork
(this=0x12c3b50, th=0x25898a0) at
/usr/src/debug/kdelibs-4.4.4/threadweaver/Weaver/WorkingHardState.cpp:74
#7  0x000000300ba0c4d4 in ThreadWeaver::WorkingHardState::applyForWork
(this=0x12c3b50, th=0x25898a0) at
/usr/src/debug/kdelibs-4.4.4/threadweaver/Weaver/WorkingHardState.cpp:74
#8  0x000000300ba0ae7f in ThreadWeaver::ThreadRunHelper::run
(this=0x7f7bce7ecd40, parent=0x1c08a30, th=0x25898a0) at
/usr/src/debug/kdelibs-4.4.4/threadweaver/Weaver/Thread.cpp:87
#9  0x000000300ba0b368 in ThreadWeaver::Thread::run (this=0x25898a0) at
/usr/src/debug/kdelibs-4.4.4/threadweaver/Weaver/Thread.cpp:142
#10 0x0000003004670995 in QThreadPrivate::start (arg=0x25898a0) at
thread/qthread_unix.cpp:248
#11 0x0000003fe9807761 in start_thread (arg=0x7f7bce7ed710) at
pthread_create.c:301
#12 0x0000003fe90e14dd in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 2 (Thread 0x7f7bcddec710 (LWP 23159)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at
../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x000000300467188b in wait (this=<value optimized out>, mutex=0x1c0c5d0,
time=18446744073709551615) at thread/qwaitcondition_unix.cpp:87
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0x1c0c5d0,
time=18446744073709551615) at thread/qwaitcondition_unix.cpp:159
#3  0x000000300ba09f96 in
ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x1c08a30,
th=0x432e330) at
/usr/src/debug/kdelibs-4.4.4/threadweaver/Weaver/WeaverImpl.cpp:365
#4  0x000000300ba0c4bb in ThreadWeaver::WorkingHardState::applyForWork
(this=0x12c3b50, th=0x432e330) at
/usr/src/debug/kdelibs-4.4.4/threadweaver/Weaver/WorkingHardState.cpp:71
#5  0x000000300ba0ae7f in ThreadWeaver::ThreadRunHelper::run
(this=0x7f7bcddebd40, parent=0x1c08a30, th=0x432e330) at
/usr/src/debug/kdelibs-4.4.4/threadweaver/Weaver/Thread.cpp:87
#6  0x000000300ba0b368 in ThreadWeaver::Thread::run (this=0x432e330) at
/usr/src/debug/kdelibs-4.4.4/threadweaver/Weaver/Thread.cpp:142
#7  0x0000003004670995 in QThreadPrivate::start (arg=0x432e330) at
thread/qthread_unix.cpp:248
#8  0x0000003fe9807761 in start_thread (arg=0x7f7bcddec710) at
pthread_create.c:301
#9  0x0000003fe90e14dd in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 1 (Thread 0x7f7c0db18820 (LWP 22779)):
[KCrash Handler]
#5  0x0000003fe90329a5 in raise (sig=6) at
../nptl/sysdeps/unix/sysv/linux/raise.c:64
#6  0x0000003fe9034185 in abort () at abort.c:92
#7  0x0000003fe906fe0b in __libc_message (do_abort=2, fmt=0x3fe9143ab8 "***
glibc detected *** %s: %s: 0x%s ***\n") at
../sysdeps/unix/sysv/linux/libc_fatal.c:186
#8  0x0000003fe9075726 in malloc_printerr (action=3, str=0x3fe9141aa2
"corrupted double-linked list", ptr=<value optimized out>) at malloc.c:6283
#9  0x0000003fe907820a in _int_free (av=0x7f7bc0000020, p=0x7f7bc0004120,
have_lock=0) at malloc.c:4964
#10 0x00000030046b2b1c in QString::free (d=0x7f7bc00041f0) at
tools/qstring.cpp:1108
#11 0x00007f7bdf72e4e6 in ~QString (this=<value optimized out>,
x=0x7f7bc8005b00) at /usr/include/QtCore/qstring.h:869
#12 QMap<QString, CppTools::IncludePathResolver::CacheEntry>::freeData
(this=<value optimized out>, x=0x7f7bc8005b00) at
/usr/include/QtCore/qmap.h:625
#13 0x0000003fe9035fd2 in __run_exit_handlers (status=0) at exit.c:78
#14 exit (status=0) at exit.c:100
#15 0x0000003fe901ec64 in __libc_start_main (main=0x4040b0 <main(int, char**)>,
argc=1, ubp_av=0x7fff962291c8, init=<value optimized out>, fini=<value
optimized out>, 
    rtld_fini=<value optimized out>, stack_end=0x7fff962291b8) at
libc-start.c:258
#16 0x0000000000403fb9 in _start ()

This bug may be a duplicate of or related to bug 232942, bug 238155, bug
227116.

Possible duplicates by query: bug 241272, bug 240316, bug 238155, bug 238117,
bug 236011.

Reported using DrKonqi

-- 
Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

_______________________________________________
KDevelop-bugs mailing list
KDevelop-bugs@kdevelop.org
https://barney.cs.uni-potsdam.de/mailman/listinfo/kdevelop-bugs
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic