Code completion

kitts kitts.mailinglists at gmail.com
Fri Dec 8 20:55:14 GMT 2006


I recently i wanted to use KDevelop to hack the linux kernel. I tried 
importing the project as with custom makefile project. KDevelop would soon 
eat up all the system RAM then the swap space before completely hanging the 
entire system.

With the beta release, KDevelop was completely unresponsive and would not 
even draw itself. Now with RC1, its somewhat better as mentioned below.

On Andreas advice, i am posting to this list  along with a portion of the 
capture. The entire capture makes a 20MB text file!

As suggested, I ran kdevelop through GDB.

On Saturday 09 December 2006 01:27 IST, Andreas Pakulat wrote:
> On 08.12.06 22:55:46, kitts wrote:
> > On Friday 08 December 2006 21:40 IST, Andreas Pakulat wrote:
> > > Hmm, no code-completion only runs on the files that the project
> > > manager returns. Try running kdevelop through gdb when you import the
> > > kernel source and interrupt it when it starts to massively consume
> > > memory, create a backtrace and post that here.
> >
> > OK. RC1 seems to be much more well behaved than the beta. Atleast,
> > kdevelop is showing progress and seemed to be working fine except for
> > the memory issue.
> >
> > Loading process had progressed to about 33% in the status bar. 2%
> > remaining RAM space and 23% remaining swap space (on this machine i
> > have 1GB swap). I interrupted the process and the backtrace gives
>
> That is definetly the backgroundparser. But I don't know how to turn it
> off. I suggest you send a mail to kdevelop-devel without the backtrace
> but with the konsole output. David Nolden, the guy currently working on
> it reads that list more than this one.

-- 
Cheers!
kitts
-------------- next part --------------
gdb kdevelop
GNU gdb 6.4.90-debian
Copyright (C) 2006 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu"...Using host libthread_db library "/lib/libthread_db.so.1".

(gdb) run
Starting program: /usr/local/bin/kdevelop
[Thread debugging using libthread_db enabled]
[New Thread 47093194124192 (LWP 5561)]
Qt: gdb: -nograb added to command-line options.
         Use the -dograb option to enforce grabbing.
X Error: BadDevice, invalid or uninitialized input device 169
  Major opcode:  147
  Minor opcode:  3
  Resource id:  0x0
Failed to open device
X Error: BadDevice, invalid or uninitialized input device 169
  Major opcode:  147
  Minor opcode:  3
  Resource id:  0x0
Failed to open device
kdevelop: kdevfullscreen
kdevelop:  ********** VCSManagerPart::VCSManagerPart() **************
kdevelop (abbrev): =========> sourceFiles: /usr/local/share/apps/kdevabbrev/sources/qt_classes /usr/local/share/apps/kdevabbrev/sources/cpp_keywords
kdevelop (abbrev): ===> load file: /usr/local/share/apps/kdevabbrev/sources/qt_classes
kdevelop (abbrev): ===> load file: /usr/local/share/apps/kdevabbrev/sources/cpp_keywords
kdevelop (abbrev): fn = /home/kishore/.kde/share/apps/kdevabbrev/templates/templates
kdevelop (abbrev): creating template for suffixes h,H,hh,hxx,hpp,inl,tlh,c,C,cc,cpp,c++,cxx,m,mm,M and name classd
kdevelop (abbrev): creating template for suffixes h,H,hh,hxx,hpp,inl,tlh,c,C,cc,cpp,c++,cxx,m,mm,M and name forb
kdevelop (abbrev): creating template for suffixes h,H,hh,hxx,hpp,inl,tlh,c,C,cc,cpp,c++,cxx,m,mm,M and name ifb
kdevelop (abbrev): creating template for suffixes h,H,hh,hxx,hpp,inl,tlh,c,C,cc,cpp,c++,cxx,m,mm,M and name ife 


<snip>


kdevelop (cpp support): files in code-model after parseEmit: 10440 before: 10439
kdevelop (cpp support): CppSupportPart::customEvent(2000)
kdevelop (cpp support): ProblemReporter::removeAllProblems()debian/linux-headers-2.6.18.1-custom/usr/src/linux-headers-2.6.18.1-custom/include/linux/net.h
kdevelop (class view): [void Navigator::addFile(const QString&)] file: /media/devel/devel/Installs/linux-2.6.18.1/debian/linux-headers-2.6.18.1-custom/usr/src/linux-headers-2.6.18.1-custom/include/linux/net.h
kdevelop (cpp support): files in code-model after parseEmit: 10441 before: 10440
kdevelop (cpp support): CppSupportPart::customEvent(2000)
kdevelop (cpp support): ProblemReporter::removeAllProblems()debian/linux-headers-2.6.18.1-custom/usr/src/linux-headers-2.6.18.1-custom/include/linux/netdevice.h
kdevelop (class view): [void Navigator::addFile(const QString&)] file: /media/devel/devel/Installs/linux-2.6.18.1/debian/linux-headers-2.6.18.1-custom/usr/src/linux-headers-2.6.18.1-custom/include/linux/netdevice.h
kdevelop (cpp support): files in code-model after parseEmit: 10442 before: 10441
kdevelop (cpp support): CppSupportPart::customEvent(2000)
kdevelop (cpp support): ProblemReporter::removeAllProblems()debian/linux-headers-2.6.18.1-custom/usr/src/linux-headers-2.6.18.1-custom/include/linux/netfilter.h
kdevelop (class view): [void Navigator::addFile(const QString&)] file: /media/devel/devel/Installs/linux-2.6.18.1/debian/linux-headers-2.6.18.1-custom/usr/src/linux-headers-2.6.18.1-custom/include/linux/netfilter.h
kdevelop (cpp support): files in code-model after parseEmit: 10443 before: 10442
kdevelop (cpp support): CppSupportPart::customEvent(2000)
kdevelop (cpp support): ProblemReporter::removeAllProblems()debian/linux-headers-2.6.18.1-custom/usr/src/linux-headers-2.6.18.1-custom/include/linux/netfilter_arp.h
kdevelop (class view): [void Navigator::addFile(const QString&)] file: /media/devel/devel/Installs/linux-2.6.18.1/debian/linux-headers-2.6.18.1-custom/usr/src/linux-headers-2.6.18.1-custom/include/linux/netfilter_arp.h
kdevelop (cpp support): files in code-model after parseEmit: 10444 before: 10443
kdevelop (cpp support): CppSupportPart::customEvent(2000)
kdevelop (cpp support): ProblemReporter::removeAllProblems()debian/linux-headers-2.6.18.1-custom/usr/src/linux-headers-2.6.18.1-custom/include/linux/netfilter_bridge.h
kdevelop (class view): [void Navigator::addFile(const QString&)] file: /media/devel/devel/Installs/linux-2.6.18.1/debian/linux-headers-2.6.18.1-custom/usr/src/linux-headers-2.6.18.1-custom/include/linux/netfilter_bridge.h
kdevelop (cpp support): files in code-model after parseEmit: 10445 before: 10444
kdevelop (cpp support): CppSupportPart::customEvent(2000)
kdevelop (cpp support): ProblemReporter::removeAllProblems()debian/linux-headers-2.6.18.1-custom/usr/src/linux-headers-2.6.18.1-custom/include/linux/netfilter_decnet.h
kdevelop (class view): [void Navigator::addFile(const QString&)] file: /media/devel/devel/Installs/linux-2.6.18.1/debian/linux-headers-2.6.18.1-custom/usr/src/linux-headers-2.6.18.1-custom/include/linux/netfilter_decnet.h
kdevelop (cpp support): files in code-model after parseEmit: 10446 before: 10445
kdevelop (cpp support): CppSupportPart::customEvent(2000)
kdevelop (cpp support): ProblemReporter::removeAllProblems()debian/linux-headers-2.6.18.1-custom/usr/src/linux-headers-2.6.18.1-custom/include/linux/netfilter_ipv4.h
kdevelop (class view): [void Navigator::addFile(const QString&)] file: /media/devel/devel/Installs/linux-2.6.18.1/debian/linux-headers-2.6.18.1-custom/usr/src/linux-headers-2.6.18.1-custom/include/linux/netfilter_ipv4.h
kdevelop (cpp support): files in code-model after parseEmit: 10447 before: 10446
kdevelop (cpp support): CppSupportPart::customEvent(2000)
kdevelop (cpp support): ProblemReporter::removeAllProblems()debian/linux-headers-2.6.18.1-custom/usr/src/linux-headers-2.6.18.1-custom/include/linux/netfilter_ipv6.h
kdevelop (class view): [void Navigator::addFile(const QString&)] file: /media/devel/devel/Installs/linux-2.6.18.1/debian/linux-headers-2.6.18.1-custom/usr/src/linux-headers-2.6.18.1-custom/include/linux/netfilter_ipv6.h
kdevelop (cpp support): files in code-model after parseEmit: 10448 before: 10447
kdevelop (cpp support): CppSupportPart::customEvent(2000)
kdevelop (cpp support): ProblemReporter::removeAllProblems()debian/linux-headers-2.6.18.1-custom/usr/src/linux-headers-2.6.18.1-custom/include/linux/netfilter_logging.h
kdevelop (class view): [void Navigator::addFile(const QString&)] file: /media/devel/devel/Installs/linux-2.6.18.1/debian/linux-headers-2.6.18.1-custom/usr/src/linux-headers-2.6.18.1-custom/include/linux/netfilter_logging.h
kdevelop (cpp support): files in code-model after parseEmit: 10449 before: 10448
kdevelop (cpp support): CppSupportPart::customEvent(2000)
kdevelop (cpp support): ProblemReporter::removeAllProblems()debian/linux-headers-2.6.18.1-custom/usr/src/linux-headers-2.6.18.1-custom/include/linux/netlink.h

Program received signal SIGINT, Interrupt.
[Switching to Thread 47093194124192 (LWP 5561)]
0x00002ad4bcc078f2 in select () from /lib/libc.so.6
(gdb) bt
#0  0x00002ad4bcc078f2 in select () from /lib/libc.so.6
#1  0x00002ad4ba711fe9 in QEventLoop::processEvents () from /usr/lib/libqt-mt.so.3
#2  0x00002ad4ba78480b in QEventLoop::enterLoop () from /usr/lib/libqt-mt.so.3
#3  0x00002ad4ba784613 in QEventLoop::exec () from /usr/lib/libqt-mt.so.3
#4  0x00002ad4ba76cd9c in QApplication::exec () from /usr/lib/libqt-mt.so.3
#5  0x0000000000408969 in main (argc=1, argv=0x7ffff3fc2688) at main.cpp:149
(gdb) quit
The program is running.  Exit anyway? (y or n) y


More information about the KDevelop mailing list