aMule Forum

English => aMule crashes => Topic started by: RRM on February 11, 2009, 09:00:32 PM

Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 11, 2009, 09:00:32 PM
...
2 - in aMule: disable skins, disable tray icon and disable "minimize to icon"
I'm not sure which of the above does the trick...

I have Ubuntu installed. After just a few crashes initially, once I started downloading multiple files (and uploading 1.1 MBps), aMule started crashing every 2 or so hours.
I always had skins disabled, but after disabling "tray icon" and "minimize to icon", the problem seems to be solved...

THANK YOU for figuring it out, and for posting your advice here!!
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 12, 2009, 04:05:47 PM
hmmm, I cheered too soon.  :-\
Though my system is more stable now, amule still crashes a few times a day...
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 12, 2009, 11:26:55 PM
Though my system is more stable now, amule still crashes a few times a day...
This is no good, RRM. Could you get a good backtrace from your crashes?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 13, 2009, 04:32:01 PM
Quote
This is no good, RRM. Could you get a good backtrace from your crashes?

Thank you for your response. Unfortunately, I have no idea how to get a backtrace. I looked it up, but it seems too complicated for me.
In the meantime, I have disabled the "show progressindicator" (I had read that in another thread), and amule has not crashed since!  ;D (since last night)

Oh, I forgot to mention that in the first weeks of using ubuntu/amule (I switched from XP/emule), i was only uploading files (a very steady 1.1 MBps) experiencing only 2 crashes in total. Not until I started downloading as well, the amule-crash incidence significantly increased.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 15, 2009, 12:26:41 PM
Thank you for your response. Unfortunately, I have no idea how to get a backtrace. I looked it up, but it seems too complicated for me.
Getting a backtrace is really easy, just run amule from a terminal with

Code: [Select]
$ gdb amule
(gbd) run

Getting a good backtrace is another matter.

By the way RRM, you seem to be using a really old aMule version (the one included with Ubuntu). Could you try to install the latest SVN one?

Regards
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 16, 2009, 08:21:45 PM
Thank you for your instructions and your patience.
This is what i got:

Code: [Select]
$ gdb amule
GNU gdb 6.8-debian
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i486-linux-gnu"...
(no debugging symbols found)
(gdb) run
Starting program: /usr/bin/amule
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
[Thread debugging using libthread_db enabled]
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
---Type <return> to continue, or q <return> to quit---

Quote
you seem to be using a really old aMule version (the one included with Ubuntu). Could you try to install the latest SVN one?

I had previously looked into that, but i actually dont know what to install (ive got Hardy Heron);
- amule SVN tarballs?
- aMule SVN » Distro-Specific packages?
- deb http://ppa.launchpad.net/simontol/ubuntu hardy main?

Regards,

Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 16, 2009, 09:11:08 PM
Dear RRM,

I'd suggest you first try with the amule in

deb http://ppa.launchpad.net/simontol/ubuntu hardy main

Then you run gdb amule. Note this means gdb (a debugger) is "supervising" amule, so when it crashes you can actually know what happened.

So the procedure is to start gdb amule, and then wait until amule crashes, then the backtrace will be shown.

[By the way, you have to press enter to continue, read the message you posted]

Ok, so keep amule 2.2.3 running under gdb for a while, and when the first crash happens please post the last lines of the gdb output. Remember, gdb output is only interesting if your amule crashed.

This week I'm really busy so excuse me if I don't quickly answer some of your questions, but I'm really interested in fixing your multiple crashes.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: xja on February 19, 2009, 05:30:59 PM
Hi,
I've been told about this topic about this problem http://www.amule.org/amule/index.php?topic=16543.0 about a crash under Mac OS X.
Does the script reported by kau solve the problem?
GonoszTopi said there's an outdated command in it, how should it be?
I should run it in a Terminal window, or save it (what about the extension?) and execute it with a command line?

Thanks, bye bye!
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 21, 2009, 07:37:27 PM
I'd suggest you first try with the amule in
deb http://ppa.launchpad.net/simontol/ubuntu hardy main

Ok, so at http://ppa.launchpad.net/simontol/ubuntu/pool/main/a/amule/
, there is amule for 3 different architectures? I guess its quite silly, but i dont know which one applies to my comp.
Code: [Select]
My system:
HP Pavilion a6370
Phenom 9500, 2.2GHz, socket AM2
GeForce 6150SE nForce 430
Asus M2N68-LA, HP Narra3-GL8E
3GB, PC2-5300 MB/sec, 240 pin, DDR2 SDRAM
AMD Live technologies

I tried to get more info on my hardware in the command line, but i can only read the last part of all the info in "lshw" or "lshal". When i try "$ less lshw" or $ less lshal", it says "no such file or directory"
When i simply choose to install amule for md64 or lpia, it says: "error: wrong architecture".
When i pick the one for i386, it says: "error: dependency is not satisfiable: amule-common"

Quote
Then you run gdb amule. Note this means gdb (a debugger) is "supervising" amule, so when it crashes you can actually know what happened.
So the procedure is to start gdb amule, and then wait until amule crashes, then the backtrace will be shown.

Ok, I get that. I just didnt get that far yet...

Quote
By the way, you have to press enter to continue, read the message you posted

Yes, i did that, but i just got more of exactly the same, so i thought that posting that was just wasting webspace.

Quote
This week I'm really busy so excuse me if I don't quickly answer some of your questions, but I'm really interested in fixing your multiple crashes.

Please take your time. Im really grateful for the support that you give me, whenever you can find some time to do so.
Currently, amule crashes 6 times a day on average.
Regards,
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 22, 2009, 01:31:41 AM
Ok, so at http://ppa.launchpad.net/simontol/ubuntu/pool/main/a/amule/
, there is amule for 3 different architectures? I guess its quite silly, but i dont know which one applies to my comp.
Just fire up synaptic and select Settings -> Repositories. Then go to the "Third party software" section and click the add button. Insert this line

Code: [Select]
deb http://ppa.launchpad.net/simontol/ubuntu hardy main

Then reload and upgrade aMule. architecture selection and dependency management will be done automatically for you.

Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 22, 2009, 06:51:56 PM
Thank you btkaos, that was very helpful.
Amule 2.2.3 has now been installed, and I just ran gdb amule from a terminal window.
On starting up it reported error 2 in amule/config, but maybe that doesnt mean anything?:

Code: [Select]
Initialising aMule 2.2.3 using wxGTK2 v2.8.7
Checking if there is an instance already running...
No other instances are running.
[New Thread 0xb660ab90 (LWP 8500)]
HTTP download thread started
(no debugging symbols found)
ListenSocket: Ok.
(no debugging symbols found)
---Type <return> to continue, or q <return> to quit---
(no debugging symbols found)
[New Thread 0xb576eb90 (LWP 8503)]
Loading temp files from /home/rrm/.aMule/Temp.
Loading PartFile 3 of 3
All PartFiles Loaded.
Adding file /home/rrm/.aMule/Temp/001.part.met to shares
Adding file /home/rrm/.aMule/Temp/005.part.met to shares
Adding file /home/rrm/.aMule/Temp/006.part.met to shares
execvp(amuleweb, --amule-config-file=/home/rrm/.aMule/amule.conf) failed with error 2!
[New Thread 0xb4f6db90 (LWP 8505)]
[New Thread 0xb476cb90 (LWP 8506)]
[Thread 0xb4f6db90 (LWP 8505) exited]
Host: amule.sourceforge.net:80
URL: http://amule.sourceforge.net/lastversion
Response: 200 (Error: 0)
Download size: 6
HTTP download thread ended
[Thread 0xb660ab90 (LWP 8500) exited]

Ok, and now lets wait for the next crash...
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 22, 2009, 08:04:38 PM
Ok...
Amule crashed after 45 minutes...

Code: [Select]
Terminated after throwing an instance of 'std::bad_alloc'
what(): std::bad_alloc
* Could not get symbol names for backtrace
backtrace:

Program received signal SIGABRT, Aborted.
[Switching to Thread 0xb69886c0 (LWP 8495)]
0xb7f72410 in __kernel_vsyscall ()
(gdb)

Is this backtrace any good?
Maybe not, so I will keep trying to get a better one.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 22, 2009, 08:39:28 PM
Thank you btkaos, that was very helpful.
Amule 2.2.3 has now been installed, and I just ran gdb amule from a terminal window.
Perfect! Just wait for the next crash, then a backtrace will appear. When amule is running ok no output goes to the terminal window.

Quote
On starting up it reported error 2 in amule/config, but maybe that doesnt mean anything?:
This means amuleweb is not installed. What is the output of
Code: [Select]
$ which amuleweb
Otherwise install the amule-daemon package.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 22, 2009, 08:41:15 PM
Amule crashed after 45 minutes...
This looks no good :(

Quote
Code: [Select]
(gdb)

Is this backtrace any good?
once the program crashes, you have to type "bt" in the prompt to get a backtrace. "bt full" is also useful. Please see the wiki.

So try to get a crash and then type "bt full" and "bt". Good luck
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on February 22, 2009, 09:02:17 PM
Code: [Select]
Terminated after throwing an instance of 'std::bad_alloc'
what(): std::bad_alloc
* Could not get symbol names for backtrace
The bt won't be useful probably, since aMule is compiled without debug info appearantly.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 23, 2009, 06:58:22 AM
Thank you.
This is what i got:

Code: [Select]
(gdb) bt full
#0  0xb7f31410 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb727e085 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0xb727fa01 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0x08248b64 in ?? ()
No symbol table info available.
#4  0xb748ad05 in ?? () from /usr/lib/libstdc++.so.6
No symbol table info available.
#5  0xb748ad42 in std::terminate () from /usr/lib/libstdc++.so.6
No symbol table info available.
#6  0xb748ae6a in __cxa_throw () from /usr/lib/libstdc++.so.6
No symbol table info available.
#7  0xb748b49e in operator new () from /usr/lib/libstdc++.so.6
No symbol table info available.
#8  0xb766b8d9 in wxSocketEvent::Clone ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#9  0xb75db1e8 in wxEvtHandler::AddPendingEvent ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#10 0xb766b77b in wxSocketBase::OnRequest ()
---Type <return> to continue, or q <return> to quit---

and bt:

Code: [Select]
(gdb) bt
#0  0xb7f31410 in __kernel_vsyscall ()
#1  0xb727e085 in raise () from /lib/tls/i686/cmov/libc.so.6
#2  0xb727fa01 in abort () from /lib/tls/i686/cmov/libc.so.6
#3  0x08248b64 in ?? ()
#4  0xb748ad05 in ?? () from /usr/lib/libstdc++.so.6
#5  0xb748ad42 in std::terminate () from /usr/lib/libstdc++.so.6
#6  0xb748ae6a in __cxa_throw () from /usr/lib/libstdc++.so.6
#7  0xb748b49e in operator new () from /usr/lib/libstdc++.so.6
#8  0xb766b8d9 in wxSocketEvent::Clone ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
#9  0xb75db1e8 in wxEvtHandler::AddPendingEvent ()
   from /usr/lib/libwx_baseu-2.8.so.0
#10 0xb766b77b in wxSocketBase::OnRequest ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
#11 0xb766b894 in wx_socket_callback () from /usr/lib/libwx_baseu_net-2.8.so.0
#12 0xb766fd47 in GSocket::Detected_Write ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
#13 0xb77b41b7 in ?? () from /usr/lib/libwx_gtk2u_core-2.8.so.0
#14 0xb6e6cbdf in ?? () from /usr/lib/libgdk-x11-2.0.so.0
#15 0xb6d4ffed in ?? () from /usr/lib/libglib-2.0.so.0
#16 0xb6d1bcc6 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#17 0xb6d1f083 in ?? () from /usr/lib/libglib-2.0.so.0
#18 0xb6d1f467 in g_main_loop_run () from /usr/lib/libglib-2.0.so.0
---Type <return> to continue, or q <return> to quit--
#19 0xb701e264 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
#20 0xb77b271c in wxEventLoop::Run () from /usr/lib/libwx_gtk2u_core-2.8.so.0
#21 0xb785532e in wxAppBase::MainLoop ()
   from /usr/lib/libwx_gtk2u_core-2.8.so.0
#22 0xb7854981 in wxAppBase::OnRun () from /usr/lib/libwx_gtk2u_core-2.8.so.0
#23 0xb756f05a in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
#24 0xb756f107 in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
#25 0x0814f300 in ?? ()
#26 0xb7269450 in __libc_start_main () from /lib/tls/i686/cmov/libc.so.6
#27 0x08084c41 in ?? ()

Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 23, 2009, 07:02:33 AM
Thank you for your support.

Quote
What is the output of
Code: [Select]
$ which amuleweb

nothing, just
Code: [Select]
$
Quote
Otherwise install the amule-daemon package.
What line do i need to insert to install amule-daemon?
(I apologize for over-asking)
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 23, 2009, 06:38:28 PM
And more crashes, which seem identical to the previous ones, to me

Code: [Select]
Terminated after throwing an instance of 'std::bad_alloc'
what(): std::bad_alloc
* Could not get symbol names for backtrace
backtrace:


Program received signal SIGABRT, Aborted.
[Switching to Thread 0xb69176c0 (LWP 8758)]
0xb7f01410 in __kernel_vsyscall ()
(gdb) bt full
#0  0xb7f01410 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb724e085 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0xb724fa01 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0x08248b64 in ?? ()
No symbol table info available.
#4  0xb745ad05 in ?? () from /usr/lib/libstdc++.so.6
No symbol table info available.
#5  0xb745ad42 in std::terminate () from /usr/lib/libstdc++.so.6
No symbol table info available.
#6  0xb745ae6a in __cxa_throw () from /usr/lib/libstdc++.so.6
No symbol table info available.
#7  0xb745b49e in operator new () from /usr/lib/libstdc++.so.6
No symbol table info available.
#8  0xb7536ef6 in wxObjectList::CreateNode ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#9  0xb754a5cb in wxListBase::Append () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#10 0xb75ab20f in wxEvtHandler::AddPendingEvent ()
   from /usr/lib/libwx_baseu-2.8.so.0
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#11 0xb763b77b in wxSocketBase::OnRequest ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#12 0xb763b894 in wx_socket_callback () from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#13 0xb763fd47 in GSocket::Detected_Write ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#14 0xb77841b7 in ?? () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#15 0xb6e3cbdf in ?? () from /usr/lib/libgdk-x11-2.0.so.0
No symbol table info available.
#16 0xb6d1ffed in ?? () from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#17 0xb6cebcc6 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#18 0xb6cef083 in ?? () from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#19 0xb6cef467 in g_main_loop_run () from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#20 0xb6fee264 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#21 0xb778271c in wxEventLoop::Run () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#22 0xb782532e in wxAppBase::MainLoop ()
   from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#23 0xb7824981 in wxAppBase::OnRun () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#24 0xb753f05a in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#25 0xb753f107 in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#26 0x0814f300 in ?? ()
No symbol table info available.
#27 0xb7239450 in __libc_start_main () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#28 0x08084c41 in ?? ()
No symbol table info available.

and bt:

Code: [Select]
(gdb) bt
#0  0xb7f01410 in __kernel_vsyscall ()
#1  0xb724e085 in raise () from /lib/tls/i686/cmov/libc.so.6
#2  0xb724fa01 in abort () from /lib/tls/i686/cmov/libc.so.6
#3  0x08248b64 in ?? ()
#4  0xb745ad05 in ?? () from /usr/lib/libstdc++.so.6
#5  0xb745ad42 in std::terminate () from /usr/lib/libstdc++.so.6
#6  0xb745ae6a in __cxa_throw () from /usr/lib/libstdc++.so.6
#7  0xb745b49e in operator new () from /usr/lib/libstdc++.so.6
#8  0xb7536ef6 in wxObjectList::CreateNode ()
   from /usr/lib/libwx_baseu-2.8.so.0
#9  0xb754a5cb in wxListBase::Append () from /usr/lib/libwx_baseu-2.8.so.0
#10 0xb75ab20f in wxEvtHandler::AddPendingEvent ()
   from /usr/lib/libwx_baseu-2.8.so.0
#11 0xb763b77b in wxSocketBase::OnRequest ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
#12 0xb763b894 in wx_socket_callback () from /usr/lib/libwx_baseu_net-2.8.so.0
#13 0xb763fd47 in GSocket::Detected_Write ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
#14 0xb77841b7 in ?? () from /usr/lib/libwx_gtk2u_core-2.8.so.0
#15 0xb6e3cbdf in ?? () from /usr/lib/libgdk-x11-2.0.so.0
#16 0xb6d1ffed in ?? () from /usr/lib/libglib-2.0.so.0
#17 0xb6cebcc6 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#18 0xb6cef083 in ?? () from /usr/lib/libglib-2.0.so.0
---Type <return> to continue, or q <return> to quit---
#19 0xb6cef467 in g_main_loop_run () from /usr/lib/libglib-2.0.so.0
#20 0xb6fee264 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
#21 0xb778271c in wxEventLoop::Run () from /usr/lib/libwx_gtk2u_core-2.8.so.0
#22 0xb782532e in wxAppBase::MainLoop ()
   from /usr/lib/libwx_gtk2u_core-2.8.so.0
#23 0xb7824981 in wxAppBase::OnRun () from /usr/lib/libwx_gtk2u_core-2.8.so.0
#24 0xb753f05a in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
#25 0xb753f107 in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
#26 0x0814f300 in ?? ()
#27 0xb7239450 in __libc_start_main () from /lib/tls/i686/cmov/libc.so.6
#28 0x08084c41 in ?? ()
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 23, 2009, 09:27:25 PM
And more crashes, which seem identical to the previous ones, to me

Congratulations! You got almost good backtraces. You did everything right.

 Unfortunately some debug information is missing. It may be the case you will need to compile emule yourself, however lets try first with standard Ubuntu packages. Run

Code: [Select]
$ sudo aptitude install libc6-dbg libcairo2-dbg libgcc1-dbg libglib2.0-0-dbg libgtk2.0-0-dbg libstdc++6-4.3-dbg libwxbase2.8-dbg libwxgtk2.8-dbg libx11-6-dbg libx11-xcb1-dbg libxcb1-dbg

Once those packages are installed, your backtraces should look much more detailed. Please try to get a new one and post it in the backtraces forum.

If the backtraces are not good enough you will need to compile aMule.

btw, you can install amule daemon with synaptic or aptitude
Code: [Select]
$ sudo aptitude install amule-daemon
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 23, 2009, 09:37:13 PM
By the way RRM, could you post the output of the following commands (needed for debugging your crash)

Code: [Select]
$ lsb_release -a
$ uname -a
$ dpkg-architecture
$ dpkg -l libwx*

Regards
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 25, 2009, 06:17:02 PM
Thank you for sticking with me, btkaos.

Quote
lets try first with standard Ubuntu packages. Run

Code: [Select]
$ sudo aptitude install libc6-dbg libcairo2-dbg libgcc1-dbg libglib2.0-0-dbg libgtk2.0-0-dbg libstdc++6-4.3-dbg libwxbase2.8-dbg libwxgtk2.8-dbg libx11-6-dbg libx11-xcb1-dbg libxcb1-dbg

I get this in response
Code: [Select]
Couldn't find any package whose name or description matched "libstdc++6-4.3-dbg"
Couldn't find any package whose name or description matched "libstdc++6-4.3-dbg"
The following packages are unused and will be REMOVED:
  libupnp2
The following NEW packages will be automatically installed:
  libc6-dev linux-libc-dev wx2.8-headers
The following NEW packages will be installed:
  libc6-dbg libc6-dev libcairo2-dbg libgcc1-dbg libglib2.0-0-dbg
  libgtk2.0-0-dbg libwxbase2.8-dbg libwxgtk2.8-dbg libx11-6-dbg
  libx11-xcb1-dbg libxcb1-dbg linux-libc-dev wx2.8-headers
0 packages upgraded, 13 newly installed, 1 to remove and 0 not upgraded.
Need to get 54,5MB of archives. After unpacking 161MB will be used.
Do you want to continue?


I continued, and everything seemed to go well
Do i need to post a translated report of that?; some of it is in dutch, here it is:

Code: [Select]
Writing extended state information... Klaar
Get:1 http://nl.archive.ubuntu.com hardy-updates/main linux-libc-dev 2.6.24-23.48 [703kB]
Get:2 http://nl.archive.ubuntu.com hardy-updates/main libc6-dev 2.7-10ubuntu4 [3344kB]
Get:3 http://nl.archive.ubuntu.com hardy/universe wx2.8-headers 2.8.7.1-0ubuntu3 [1086kB]
Get:4 http://nl.archive.ubuntu.com hardy-updates/main libc6-dbg 2.7-10ubuntu4 [5095kB]
Get:5 http://nl.archive.ubuntu.com hardy-updates/main libcairo2-dbg 1.6.0-0ubuntu2 [747kB]
Get:6 http://nl.archive.ubuntu.com hardy-updates/main libgcc1-dbg 1:4.2.4-1ubuntu3 [49,2kB]
Get:7 http://nl.archive.ubuntu.com hardy-updates/main libglib2.0-0-dbg 2.16.6-0ubuntu1 [1102kB]
Get:8 http://nl.archive.ubuntu.com hardy-updates/main libgtk2.0-0-dbg 2.12.9-3ubuntu5 [9451kB]
Get:9 http://nl.archive.ubuntu.com hardy/universe libwxbase2.8-dbg 2.8.7.1-0ubuntu3 [3963kB]
Get:10 http://nl.archive.ubuntu.com hardy/universe libwxgtk2.8-dbg 2.8.7.1-0ubuntu3 [26,2MB]
Get:11 http://nl.archive.ubuntu.com hardy/main libx11-6-dbg 2:1.1.3-1ubuntu2 [2586kB]
Get:12 http://nl.archive.ubuntu.com hardy/main libx11-xcb1-dbg 2:1.1.3-1ubuntu2 [72,6kB]
Get:13 http://nl.archive.ubuntu.com hardy/main libxcb1-dbg 1.1-1ubuntu1 [89,9kB]
Fetched 54,5MB in 4s (13,4MB/s)
(Database inlezen ... 96387 bestanden en mappen geïnstalleerd.)
libupnp2 wordt verwijderd ...
Processing triggers for libc6 ...
ldconfig deferred processing now taking place
Selecteren van voorheen niet geselecteerd pakket linux-libc-dev.
(Database inlezen ... 96379 bestanden en mappen geïnstalleerd.)
Uitpakken van linux-libc-dev (uit .../linux-libc-dev_2.6.24-23.48_i386.deb) ...
Selecteren van voorheen niet geselecteerd pakket libc6-dev.
Uitpakken van libc6-dev (uit .../libc6-dev_2.7-10ubuntu4_i386.deb) ...
Selecteren van voorheen niet geselecteerd pakket wx2.8-headers.
Uitpakken van wx2.8-headers (uit .../wx2.8-headers_2.8.7.1-0ubuntu3_i386.deb) ...
Selecteren van voorheen niet geselecteerd pakket libc6-dbg.
Uitpakken van libc6-dbg (uit .../libc6-dbg_2.7-10ubuntu4_i386.deb) ...
Selecteren van voorheen niet geselecteerd pakket libcairo2-dbg.
Uitpakken van libcairo2-dbg (uit .../libcairo2-dbg_1.6.0-0ubuntu2_i386.deb) ...
Selecteren van voorheen niet geselecteerd pakket libgcc1-dbg.
Uitpakken van libgcc1-dbg (uit .../libgcc1-dbg_1%3a4.2.4-1ubuntu3_i386.deb) ...
Selecteren van voorheen niet geselecteerd pakket libglib2.0-0-dbg.
Uitpakken van libglib2.0-0-dbg (uit .../libglib2.0-0-dbg_2.16.6-0ubuntu1_i386.deb) ...
Selecteren van voorheen niet geselecteerd pakket libgtk2.0-0-dbg.
Uitpakken van libgtk2.0-0-dbg (uit .../libgtk2.0-0-dbg_2.12.9-3ubuntu5_i386.deb) ...
Selecteren van voorheen niet geselecteerd pakket libwxbase2.8-dbg.
Uitpakken van libwxbase2.8-dbg (uit .../libwxbase2.8-dbg_2.8.7.1-0ubuntu3_i386.deb) ...
Selecteren van voorheen niet geselecteerd pakket libwxgtk2.8-dbg.
Uitpakken van libwxgtk2.8-dbg (uit .../libwxgtk2.8-dbg_2.8.7.1-0ubuntu3_i386.deb) ...
Selecteren van voorheen niet geselecteerd pakket libx11-6-dbg.
Uitpakken van libx11-6-dbg (uit .../libx11-6-dbg_2%3a1.1.3-1ubuntu2_i386.deb) ...
Selecteren van voorheen niet geselecteerd pakket libx11-xcb1-dbg.
Uitpakken van libx11-xcb1-dbg (uit .../libx11-xcb1-dbg_2%3a1.1.3-1ubuntu2_i386.deb) ...
Selecteren van voorheen niet geselecteerd pakket libxcb1-dbg.
Uitpakken van libxcb1-dbg (uit .../libxcb1-dbg_1.1-1ubuntu1_i386.deb) ...
Instellen van linux-libc-dev (2.6.24-23.48) ...
Instellen van libc6-dev (2.7-10ubuntu4) ...
Instellen van wx2.8-headers (2.8.7.1-0ubuntu3) ...
Instellen van libc6-dbg (2.7-10ubuntu4) ...
Instellen van libcairo2-dbg (1.6.0-0ubuntu2) ...
Instellen van libgcc1-dbg (1:4.2.4-1ubuntu3) ...
Instellen van libglib2.0-0-dbg (2.16.6-0ubuntu1) ...
Instellen van libgtk2.0-0-dbg (2.12.9-3ubuntu5) ...
Instellen van libwxbase2.8-dbg (2.8.7.1-0ubuntu3) ...

Instellen van libwxgtk2.8-dbg (2.8.7.1-0ubuntu3) ...

Instellen van libx11-6-dbg (2:1.1.3-1ubuntu2) ...
Instellen van libx11-xcb1-dbg (2:1.1.3-1ubuntu2) ...
Instellen van libxcb1-dbg (1.1-1ubuntu1) ...
Processing triggers for libc6 ...
ldconfig deferred processing now taking place
Pakketlijsten worden ingelezen... Klaar   
Boom van vereisten wordt opgebouwd       
Reading state information... Klaar
Reading extended state information       
Initializing package states... Klaar
Writing extended state information... Klaar
Building tag database... Klaar

Quote
btw, you can install amule daemon with synaptic or aptitude

Can i do both?
(install amule daemon and keep amule-common, alongside)
or will that cause a conflict?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 25, 2009, 06:31:07 PM
By the way RRM, could you post the output of the following commands (needed for debugging your crash)

Code: [Select]
$ lsb_release -a

Code: [Select]
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 8.04.2
Release: 8.04
Codename: hardy

Quote
Code: [Select]
$ uname -a

Code: [Select]
Linux rrm-desktop 2.6.24-23-generic #1 SMP Mon Jan 26 00:13:11 UTC 2009 i686 GNU/Linux

Quote
Code: [Select]
$ dpkg-architecture

Code: [Select]
The program 'dpkg-architecture' is currently not installed.  You can install it by typing:
sudo apt-get install dpkg-dev
bash: dpkg-architecture: command not found

So, i did, and then i got:
Code: [Select]
DEB_BUILD_ARCH=i386
DEB_BUILD_ARCH_OS=linux
DEB_BUILD_ARCH_CPU=i386
DEB_BUILD_GNU_CPU=i486
DEB_BUILD_GNU_SYSTEM=linux-gnu
DEB_BUILD_GNU_TYPE=i486-linux-gnu
DEB_HOST_ARCH=i386
DEB_HOST_ARCH_OS=linux
DEB_HOST_ARCH_CPU=i386
DEB_HOST_GNU_CPU=i486
DEB_HOST_GNU_SYSTEM=linux-gnu
DEB_HOST_GNU_TYPE=i486-linux-gnu

Quote
Code: [Select]
$ dpkg -l libwx*

Code: [Select]
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Installed/Config-f/Unpacked/Failed-cfg/Half-inst/t-aWait/T-pend
|/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: uppercase=bad)
||/ Name            Version          Description
+++-===============-===============-==============================================
ii  libwxbase2.8-0  2.8.7.1-0ubuntu wxBase library (runtime) - non-GUI support cla
ii  libwxbase2.8-db 2.8.7.1-0ubuntu wxBase library (debug) - non-GUI support class
un  libwxgtk2.6-0   <none>          (no description available)
ii  libwxgtk2.8-0   2.8.7.1-0ubuntu wxWidgets Cross-platform C++ GUI toolkit (GTK+
ii  libwxgtk2.8-dbg 2.8.7.1-0ubuntu wxWidgets Cross-platform C++ GUI toolkit (GTK+

Regards,
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 25, 2009, 06:47:27 PM
In the sticky thread "Do not post about crashes of aMule SVN Snapshot" (http://www.amule.org/amule/index.php?topic=15834.0) i read:

Quote
Nobody here can and will help you with months old SVN versions, or official releases 2.1.3 or before.

So, im VERY happy ;D that you guided me into installing amule 2.2.3 btkaos,
because i could never have done that without your patient help.
Thank you.  8)

Btw: im sure there are more dummies like me who could badly use your help,
so, wouldnt it be useful to have a sticky thread (including your instruction posts) in this forum titled:
"How to install amule 2.2.3 for dummies with a pre-installed older version" ?

... and... how can i get to know what platform (32 or 64 bits) i use?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 26, 2009, 01:13:50 AM
Hi RRM, good job!

Read the output of the commands and try to make sense of them.

Your title did confuse me, as you said "Ubuntu 8.10 64bits" but note from the output of lsb-release and dpkg-architecture you are actually running Ubuntu 8.04 and in 32bits.

As you are running Ubuntu 8.04, the package you failed to install is named libstdc++6-4.2-dbg (use sudo aptitude install libstdc++6-4.2-dbg)

Now your backtraces should be much better, try to get one. Anyways you have a different problem, you are running a old wxwidgets release. You could upgrade Ubuntu to get 2.8.8 (not so bad IMHO) or we could try to install a new one. I strongly recommend upgrading your Ubuntu unless you need the LTS.

Anyways, try to get again a backtrace, now with all the debug packages it should be better.

I'm afraid I won't be able to help you a lot, as I'm currently running Ubuntu 8.10 64bits, which is a very different release from yours.
 (note Ubuntu 64bits is for advanced users, some things work better in 32bits)

Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 26, 2009, 06:50:24 AM
Thank you btkaos.

Quote
Your title did confuse me, as you said "Ubuntu 8.10 64bits"

That wasnt me; i didnt start this thread...
I also didnt intentionally hijack this thread; i just pinched in as i thought that a script might solve the problem
, or some gui adjustments.
And then you responded, luckily for me.

Quote
note from the output of lsb-release and dpkg-architecture you are actually running Ubuntu 8.04 and in 32bits.

I did notice the Ubuntu 8.04 info, but where do you read "32 bits"?

Quote
use sudo aptitude install libstdc++6-4.2-dbg

Thank you. Done.

Quote
Now your backtraces should be much better, try to get one.

Is this one good enough to post in the backtrace forum?

Code: [Select]
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb69af6c0 (LWP 18747)]
0xb781c1b4 in ?? () from /usr/lib/libwx_gtk2u_core-2.8.so.0
(gdb) bt
#0  0xb781c1b4 in ?? () from /usr/lib/libwx_gtk2u_core-2.8.so.0
#1  0xb6ed4bdf in gdk_io_invoke (source=0xb265c6c0,
    condition=<value optimized out>, data=0xb2502038)
    at /build/buildd/gtk+2.0-2.12.9/gdk/gdkevents.c:986
#2  0xb6db7fed in g_io_unix_dispatch (source=0xb1f782b8,
    callback=0xb6ed4b80 <gdk_io_invoke>, user_data=0xb2502038)
    at /build/buildd/glib2.0-2.16.6/glib/giounix.c:162
#3  0xb6d83cc6 in IA__g_main_context_dispatch (context=0x866ef80)
    at /build/buildd/glib2.0-2.16.6/glib/gmain.c:2012
#4  0xb6d87083 in g_main_context_iterate (context=0x866ef80, block=1,
    dispatch=1, self=0x8670480)
    at /build/buildd/glib2.0-2.16.6/glib/gmain.c:2645
#5  0xb6d87467 in IA__g_main_loop_run (loop=0x8d54c78)
    at /build/buildd/glib2.0-2.16.6/glib/gmain.c:2853
#6  0xb7086264 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.12.9/gtk/gtkmain.c:1163
#7  0xb781a71c in wxEventLoop::Run () from /usr/lib/libwx_gtk2u_core-2.8.so.0
#8  0xb78bd32e in wxAppBase::MainLoop ()
   from /usr/lib/libwx_gtk2u_core-2.8.so.0
#9  0xb78bc981 in wxAppBase::OnRun () from /usr/lib/libwx_gtk2u_core-2.8.so.0
#10 0xb75d705a in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
#11 0xb75d7107 in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
#12 0x0814f300 in ?? ()
---Type <return> to continue, or q <return> to quit---
#13 0xb72d1450 in __libc_start_main () from /lib/tls/i686/cmov/libc.so.6
#14 0x08084c41 in ?? ()

bt full ("no symbol table avalailable"...):

Code: [Select]
#0  0xb781c1b4 in ?? () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#1  0xb6ed4bdf in gdk_io_invoke (source=0xb265c6c0,
    condition=<value optimized out>, data=0xb2502038)
    at /build/buildd/gtk+2.0-2.12.9/gdk/gdkevents.c:986
gdk_cond = GDK_INPUT_WRITE
#2  0xb6db7fed in g_io_unix_dispatch (source=0xb1f782b8,
    callback=0xb6ed4b80 <gdk_io_invoke>, user_data=0xb2502038)
    at /build/buildd/glib2.0-2.16.6/glib/giounix.c:162
buffer_condition = 0
#3  0xb6d83cc6 in IA__g_main_context_dispatch (context=0x866ef80)
    at /build/buildd/glib2.0-2.16.6/glib/gmain.c:2012
No locals.
#4  0xb6d87083 in g_main_context_iterate (context=0x866ef80, block=1,
    dispatch=1, self=0x8670480)
    at /build/buildd/glib2.0-2.16.6/glib/gmain.c:2645
max_priority = 2147483647
timeout = 5
some_ready = 1
nfds = <value optimized out>
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xb2553070
__PRETTY_FUNCTION__ = "g_main_context_iterate"
---Type <return> to continue, or q <return> to quit---
#5  0xb6d87467 in IA__g_main_loop_run (loop=0x8d54c78)
    at /build/buildd/glib2.0-2.16.6/glib/gmain.c:2853
self = (GThread *) 0x8670480
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#6  0xb7086264 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.12.9/gtk/gtkmain.c:1163
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0x8d54188
loop = (GMainLoop *) 0x8d54c78
#7  0xb781a71c in wxEventLoop::Run () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#8  0xb78bd32e in wxAppBase::MainLoop ()
   from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#9  0xb78bc981 in wxAppBase::OnRun () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#10 0xb75d705a in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#11 0xb75d7107 in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#12 0x0814f300 in ?? ()
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#13 0xb72d1450 in __libc_start_main () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#14 0x08084c41 in ?? ()
No symbol table info available.

Quote
I strongly recommend upgrading your Ubuntu unless you need the LTS.

Ok, then i will do that. (i guess i better get support at the ubuntu forum for that, right?)
So, I better focus on that instead of getting the backtraces analyzed, right?

Quote
(note Ubuntu 64bits is for advanced users, some things work better in 32bits)

I had no idea. Im certainly not an 'advanced user'  ;D ;D ;D
I apologize for the confusion.
Again, thank you for all the help you gave me.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: GonoszTopi on February 26, 2009, 08:13:54 AM
Im certainly not an 'advanced user'
You certainly will be, soon. Unless you stop reading posts from btkaos.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: wuischke on February 26, 2009, 09:47:03 AM
RRM: dpkg-architecture tells that you are running 32 bit. This crpytic "i486" (A pre-pentium processor architecture) is sure sign for 32 bit. Also i586, i386, i686 or ia32.
If you have amd64 or x86_64, it's 64 bit.

How to update Ubuntu: "sudo update-manager -d" will start a graphical manager for this.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: rogerbenham on February 26, 2009, 04:44:48 PM
----------------------------=| BACKTRACE FOLLOWS: |=----------------------------

Current version is: aMule 2.2.2 using wxGTK2 v2.8.8

Running on: Linux 2.6.27-11-generic i686





** (amule:6684): CRITICAL **: clearlooks_style_draw_box_gap: assertion `height >= -1' failed



** (amule:6684): CRITICAL **: clearlooks_style_draw_box_gap: assertion `height >= -1' failed

[2] wxString::~wxString() in amule [0x8086451]

[3] wxFatalSignalHandler in /usr/lib/libwx_baseu-2.8.so.0[0xb77e6d96]

[4] ?? in [0xb80ea400]

[5] ?? in [0xde1f1f2]

[6] ?? in /usr/lib/libgdk-x11-2.0.so.0 [0xb70404af]

[7] ?? in /usr/lib/libglib-2.0.so.0 [0xb6dde6fd]

[8] g_main_context_dispatch in /usr/lib/libglib-2.0.so.0[0xb6da76f8]

[9] ?? in /usr/lib/libglib-2.0.so.0 [0xb6daada3]

[10] g_main_loop_run in /usr/lib/libglib-2.0.so.0[0xb6dab2c2]

[11] gtk_main in /usr/lib/libgtk-x11-2.0.so.0[0xb71d83a9]

[12] wxEventLoop::Run() in /usr/lib/libwx_gtk2u_core-2.8.so.0[0xb79aee95]

[13] wxAppBase::MainLoop() in /usr/lib/libwx_gtk2u_core-2.8.so.0[0xb7a455ce]

[14] wxAppBase::OnRun() in /usr/lib/libwx_gtk2u_core-2.8.so.0[0xb7a451a1]

[15] wxEntry(int&, wchar_t**) in /usr/lib/libwx_baseu-2.8.so.0[0xb777da7a]

[16] wxEntry(int&, char**) in /usr/lib/libwx_baseu-2.8.so.0[0xb777dc77]

[17] CryptoPP::IteratedHash<unsigned int, CryptoPP::EnumToType<CryptoPP::ByteOrder, 0>, 64u, CryptoPP::HashTransformation>::~IteratedHash() in amule [0x8145a70]

[18] __libc_start_main in /lib/tls/i686/cmov/libc.so.6[0xb746a685]

[19] ?? in amule [0x8085261]





--------------------------------------------------------------------------------




Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 26, 2009, 07:05:55 PM
Hi rogerbenham,

I guess you will be adviced to upgrade to amule 2.2.3
because in this sticky thread (http://) a developer wrote:
Quote from: Stu Redman
We are always glad about error reports, which help us improve aMule. If (and only if) they are about:
1) the current official release (which is 2.2.3 at the moment)

Regards,
_______________________________________________________________________________

RRM: dpkg-architecture tells that you are running 32 bit. This crpytic "i486" (A pre-pentium processor architecture) is sure sign for 32 bit. Also i586, i386, i686 or ia32.
If you have amd64 or x86_64, it's 64 bit.

Thank you for that valuable info. This is a great forum...
Maybe its a good idea to compile 'info-for-dummies' like this in the wiki?

Quote
How to update Ubuntu: "sudo update-manager -d" will start a graphical manager for this.

Thank you. Initially i thought that a 'more specific (and complicated) upgrade' was required;
i didnt think of this simple solution.
My Ubuntu has been upgraded to 8.10 now.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 27, 2009, 01:27:59 PM
Hi RRM,

Is this one good enough to post in the backtrace forum?

Code: [Select]
#0  0xb781c1b4 in ?? () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#1  0xb6ed4bdf in gdk_io_invoke (source=0xb265c6c0,
    condition=<value optimized out>, data=0xb2502038)
    at /build/buildd/gtk+2.0-2.12.9/gdk/gdkevents.c:986
gdk_cond = GDK_INPUT_WRITE
#2  0xb6db7fed in g_io_unix_dispatch (source=0xb1f782b8,
    callback=0xb6ed4b80 <gdk_io_invoke>, user_data=0xb2502038)
    at /build/buildd/glib2.0-2.16.6/glib/giounix.c:162
buffer_condition = 0

It is almost good. But unfortunately your crash is happening inside libwxgtk in a weird manner. I don't know why, but Ubuntu -dbg packages for libwx are broken :( I'm already looking into that as I'd like to be able just to install standard debug packages and get good backtraces.

By the way, is your system stable apart from aMule?

Quote

Quote
I strongly recommend upgrading your Ubuntu unless you need the LTS.

Ok, then i will do that. (i guess i better get support at the ubuntu forum for that, right?)
So, I better focus on that instead of getting the backtraces analyzed, right?
You need to upgrade your wx library, that's for sure. An easy way is to upgrade your Ubuntu installation, unless you have a specific reason to stick to 8.04
It's likely once you upgrade is finished your crash will be gone.

Quote
Quote
(note Ubuntu 64bits is for advanced users, some things work better in 32bits)

I had no idea. Im certainly not an 'advanced user'  ;D ;D ;D
I apologize for the confusion.
Again, thank you for all the help you gave me.
You are welcome. I just mean some things in 64bit land are a little bit more cumbersome, like installing flash or skype. You should also expect more bugs. So, if you don't need 64bits (4Gb or more of ram) 32bits are clearly the best choice.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 27, 2009, 01:53:25 PM
Thank you. Initially i thought that a 'more specific (and complicated) upgrade' was required;
i didnt think of this simple solution.
My Ubuntu has been upgraded to 8.10 now.
Great! Be sure to install proper amule 2.2.3 packages for Ubuntu 8.10. I'd say this repos should do the trick:

Code: [Select]
deb http://ppa.launchpad.net/simontol/ubuntu intrepid main
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 27, 2009, 05:10:53 PM
Hi btkaos. Thank you for still supporting me.
My system is a lot more stable now; it didnt crash all night, but today, amule has crashed again.
It started with this:
Code: [Select]
(amule:6494): GLib-WARNING **: /build/buildd/glib2.0-2.18.2/glib/giounix.c:400Error while getting flags for FD: Bad file descriptor (9)
(amule:6494): GLib-WARNING **: /build/buildd/glib2.0-2.18.2/glib/giounix.c:400Error while getting flags for FD: Bad file descriptor (9)

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb68fd700 (LWP 6494)]
0xb78916f4 in ?? () from /usr/lib/libwx_gtk2u_core-2.8.so.0

bt:
Code: [Select]
#0  0xb78916f4 in ?? () from /usr/lib/libwx_gtk2u_core-2.8.so.0
#1  0xb6f214af in gdk_io_invoke (source=0xacf2a6e8,
    condition=<value optimized out>, data=0xb1804aa0)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
#2  0xb6cbf6fd in g_io_unix_dispatch (source=0xad9f1cb8,
    callback=0xb6f21450 <gdk_io_invoke>, user_data=0xb1804aa0)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
#3  0xb6c886f8 in IA__g_main_context_dispatch (context=0x93bc3a8)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
#4  0xb6c8bda3 in g_main_context_iterate (context=0x93bc3a8, block=1,
    dispatch=1, self=0x93bd2a8)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
#5  0xb6c8c2c2 in IA__g_main_loop_run (loop=0xb5802e48)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
#6  0xb70b93a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
#7  0xb788fe95 in wxEventLoop::Run () from /usr/lib/libwx_gtk2u_core-2.8.so.0
#8  0xb79265ce in wxAppBase::MainLoop ()
   from /usr/lib/libwx_gtk2u_core-2.8.so.0
#9  0xb79261a1 in wxAppBase::OnRun () from /usr/lib/libwx_gtk2u_core-2.8.so.0
#10 0xb765ea7a in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
#11 0xb765ec77 in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
#12 0x0814f300 in ?? ()
---Type <return> to continue, or q <return> to quit---
#13 0xb734b685 in __libc_start_main () from /lib/tls/i686/cmov/libc.so.6
#14 0x08084c41 in ?? ()

and full bt:
Code: [Select]
#0  0xb78916f4 in ?? () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#1  0xb6f214af in gdk_io_invoke (source=0xacf2a6e8,
    condition=<value optimized out>, data=0xb1804aa0)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = GDK_INPUT_WRITE
#2  0xb6cbf6fd in g_io_unix_dispatch (source=0xad9f1cb8,
    callback=0xb6f21450 <gdk_io_invoke>, user_data=0xb1804aa0)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 0
#3  0xb6c886f8 in IA__g_main_context_dispatch (context=0x93bc3a8)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#4  0xb6c8bda3 in g_main_context_iterate (context=0x93bc3a8, block=1,
    dispatch=1, self=0x93bd2a8)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 2147483647
timeout = 6
some_ready = 1
nfds = 389
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xac9df370
__PRETTY_FUNCTION__ = "g_main_context_iterate"
---Type <return> to continue, or q <return> to quit---
#5  0xb6c8c2c2 in IA__g_main_loop_run (loop=0xb5802e48)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0x93bd2a8
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#6  0xb70b93a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0xb5802c48
loop = (GMainLoop *) 0xb5802e48
#7  0xb788fe95 in wxEventLoop::Run () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#8  0xb79265ce in wxAppBase::MainLoop ()
   from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#9  0xb79261a1 in wxAppBase::OnRun () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#10 0xb765ea7a in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#11 0xb765ec77 in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#12 0x0814f300 in ?? ()
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#13 0xb734b685 in __libc_start_main () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#14 0x08084c41 in ?? ()
No symbol table info available.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 27, 2009, 05:18:39 PM
unfortunately your crash is happening inside libwxgtk in a weird manner.
I don't know why, but Ubuntu -dbg packages for libwx are broken

"Broken" because there is a "segmentation fault", hence no continuity?
"In a weird manner" because it says: "0xb781c1b4 in ??" ?
"-dbg packages for libwx are broken" because it says: "No symbol table info available"?

Quote
I'd like to be able just to install standard debug packages and get good backtraces.

Ok, seems logical to me.

Quote
By the way, is your system stable apart from aMule?

Yes, totally. Nothing else has crashed, ever.

Quote
Be sure to install proper amule 2.2.3 packages for Ubuntu 8.10. I'd say this repos should do the trick:
Code: [Select]
deb http://ppa.launchpad.net/simontol/ubuntu intrepid main

Ok, i will do that now...
Done.
I still (since the very beginning) get this while starting up amule:
Code: [Select]
execvp(amuleweb, --amule-config-file=/home/rrm/.aMule/amule.conf) failed with error 2!
Regards,
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 27, 2009, 06:35:44 PM
Ok, an hour since the intrepid-amule 2.2.3 upgrade, and a new crash, and a slightly different bt:

Code: [Select]
#0  0x093264cf in ?? ()
#1  0xb6ed04af in gdk_io_invoke (source=0xa1963c8,
    condition=<value optimized out>, data=0x2)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
#2  0xb6c6d6fd in g_io_unix_dispatch (source=0xaf4f7d8,
    callback=0xb6ed0450 <gdk_io_invoke>, user_data=0xac9b070)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
#3  0xb6c366f8 in IA__g_main_context_dispatch (context=0x8bf17f0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
#4  0xb6c39da3 in g_main_context_iterate (context=0x8bf17f0, block=1,
    dispatch=1, self=0x8bf2d70)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
#5  0xb6c3a2c2 in IA__g_main_loop_run (loop=0x8c4a2a8)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
#6  0xb70683a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
#7  0xb783de95 in wxEventLoop::Run () from /usr/lib/libwx_gtk2u_core-2.8.so.0
#8  0xb78d45ce in wxAppBase::MainLoop ()
   from /usr/lib/libwx_gtk2u_core-2.8.so.0
#9  0xb78d41a1 in wxAppBase::OnRun () from /usr/lib/libwx_gtk2u_core-2.8.so.0
#10 0xb760ca7a in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
#11 0xb760cc77 in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
#12 0x0815bc30 in ?? ()
---Type <return> to continue, or q <return> to quit---
#13 0xb72f9685 in __libc_start_main () from /lib/tls/i686/cmov/libc.so.6
#14 0x08085c21 in ?? ()
bt full:
Code: [Select]
#0  0x093264cf in ?? ()
No symbol table info available.
#1  0xb6ed04af in gdk_io_invoke (source=0xa1963c8,
    condition=<value optimized out>, data=0x2)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = 154297552
#2  0xb6c6d6fd in g_io_unix_dispatch (source=0xaf4f7d8,
    callback=0xb6ed0450 <gdk_io_invoke>, user_data=0xac9b070)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 0
#3  0xb6c366f8 in IA__g_main_context_dispatch (context=0x8bf17f0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#4  0xb6c39da3 in g_main_context_iterate (context=0x8bf17f0, block=1,
    dispatch=1, self=0x8bf2d70)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 2147483647
timeout = 9
some_ready = 1
nfds = 393
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0x9813768
__PRETTY_FUNCTION__ = "g_main_context_iterate"
---Type <return> to continue, or q <return> to quit---
#5  0xb6c3a2c2 in IA__g_main_loop_run (loop=0x8c4a2a8)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0x8bf2d70
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#6  0xb70683a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0x9186af0
loop = (GMainLoop *) 0x8c4a2a8
#7  0xb783de95 in wxEventLoop::Run () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#8  0xb78d45ce in wxAppBase::MainLoop ()
   from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#9  0xb78d41a1 in wxAppBase::OnRun () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#10 0xb760ca7a in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#11 0xb760cc77 in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#12 0x0815bc30 in ?? ()
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#13 0xb72f9685 in __libc_start_main () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#14 0x08085c21 in ?? ()
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 27, 2009, 07:32:58 PM
unfortunately your crash is happening inside libwxgtk in a weird manner.
I don't know why, but Ubuntu -dbg packages for libwx are broken

"Broken" because there is a "segmentation fault", hence no continuity?
"In a weird manner" because it says: "0xb781c1b4 in ??" ?
"-dbg packages for libwx are broken" because it says: "No symbol table info available"?
I mean the debug packages for wx are broken because you are suppossed to install them an get good backtraces.

This is not happening in Ubuntu.

Quote
I still (since the very beginning) get this while starting up amule:
Code: [Select]
execvp(amuleweb, --amule-config-file=/home/rrm/.aMule/amule.conf) failed with error 2!
amuleweb is on a different package. Try
Code: [Select]
$ sudo aptitude install amule-daemon
Ok, I have some good info now, but we need to fix the last bit of the backtrace, then the cause of the crash will be clear (I hope). Let me think for a while of a solution for the backtrace problem and I'll get back to you.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 27, 2009, 07:35:39 PM
Ok RRM, I'm afraid this problem is not new.

Could you give me some background information about your eMule usage, namely:
I undertand this information is private, I don't need hard numbers, just approximations. If you don't want that to be public please send that information by private msg to me. Indeed, the information is not really fundamental to debug your crash, so if you are not really confortable providing it to me just say so :)
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 27, 2009, 08:21:32 PM
Ok RRM, I'm afraid this problem is not new.

Well, thats good, because then people have experience with this, right?

Quote
Could you give me some background information about your eMule usage

I have send you all the info by pm.

Quote
if you are not really confortable providing it to me just say so :)

Of course i am!  :)
Should i still install amule-daemon, or is it of no use anymore?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 27, 2009, 08:30:47 PM
BTW, I noticed something weird lately.
In amule, my maximum uploadspeed for my current session is 92.85 MB/s  ;D
while normally, its about 1.1 to 1.3 MB/s, and my maximum
uploadspeed (of my cable connection) is set to 10 MB/s (download: 120 MB/s)
Something similar has previously happened this week.
The stats are going through the roof incidentally.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 27, 2009, 08:59:05 PM
BTW, I noticed something weird lately.
In amule, my maximum uploadspeed for my current session is 92.85 MB/s  ;D
while normally, its about 1.1 to 1.3 MB/s, and my maximum
uploadspeed (of my cable connection) is set to 10 MB/s (download: 120 MB/s)
Something similar has previously happened this week.
The stats are going through the roof incidentally.

I've seen this artifact before, it seems there is some weird interaction with the network trottler.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 27, 2009, 09:42:23 PM
Should i install amule-daemon?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 28, 2009, 03:21:44 AM
Should i install amule-daemon?
Are you using amuleweb? That is to say, the web browser interface of amule, you can control the mule from Firefox, for example.

If your answer is yes, then install the package. Otherwise, go to prefencies, and in "Remote control" uncheck the "start web server" checkbox.

Cheers,

BillTheKaos
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 28, 2009, 06:38:45 AM
Quote
Are you using amuleweb?

No.

Quote
, go to prefencies, and in "Remote control" uncheck the "start web server" checkbox.

Done. Thank you Bill.
Another crash:
Code: [Select]
Terminated after throwing an instance of 'std::bad_alloc'
what(): std::bad_alloc
* Could not get symbol names for backtrace
backtrace:

Program received signal SIGABRT, Aborted.
[Switching to Thread 0xb68ac700 (LWP 4402)]
0xb7f9e430 in __kernel_vsyscall ()
bt
Code: [Select]
#0  0xb7f9e430 in __kernel_vsyscall ()
#1  0xb730f8a0 in raise () from /lib/tls/i686/cmov/libc.so.6
#2  0xb7311268 in abort () from /lib/tls/i686/cmov/libc.so.6
#3  0x0823c20e in ?? ()
#4  0xb7532655 in ?? () from /usr/lib/libstdc++.so.6
#5  0xb7532692 in std::terminate () from /usr/lib/libstdc++.so.6
#6  0xb75327ca in __cxa_throw () from /usr/lib/libstdc++.so.6
#7  0xb7532e23 in operator new () from /usr/lib/libstdc++.so.6
#8  0xb76f9b79 in wxSocketEvent::Clone ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
#9  0xb7672965 in wxEvtHandler::AddPendingEvent ()
   from /usr/lib/libwx_baseu-2.8.so.0
#10 0xb76f97e8 in wxSocketBase::OnRequest ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
#11 0xb76f98e4 in wx_socket_callback () from /usr/lib/libwx_baseu_net-2.8.so.0
#12 0xb76fdfbe in GSocket::Detected_Read ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
#13 0xb7840710 in ?? () from /usr/lib/libwx_gtk2u_core-2.8.so.0
#14 0xb6ed14af in gdk_io_invoke (source=0xb2300770,
    condition=<value optimized out>, data=0xb1dfc4c8)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
#15 0xb6c6e6fd in g_io_unix_dispatch (source=0xb21b5f98,
    callback=0xb6ed1450 <gdk_io_invoke>, user_data=0xb1dfc4c8)
---Type <return> to continue, or q <return> to quit---
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
#16 0xb6c376f8 in IA__g_main_context_dispatch (context=0x97c57f0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
#17 0xb6c3ada3 in g_main_context_iterate (context=0x97c57f0, block=1,
    dispatch=1, self=0x97c6d70)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
#18 0xb6c3b2c2 in IA__g_main_loop_run (loop=0x9d1f920)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
#19 0xb70693a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
#20 0xb783ee95 in wxEventLoop::Run () from /usr/lib/libwx_gtk2u_core-2.8.so.0
#21 0xb78d55ce in wxAppBase::MainLoop ()
   from /usr/lib/libwx_gtk2u_core-2.8.so.0
#22 0xb78d51a1 in wxAppBase::OnRun () from /usr/lib/libwx_gtk2u_core-2.8.so.0
#23 0xb760da7a in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
#24 0xb760dc77 in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
#25 0x0815bc30 in ?? ()
#26 0xb72fa685 in __libc_start_main () from /lib/tls/i686/cmov/libc.so.6
#27 0x08085c21 in ?? ()
bt full
Code: [Select]
#0  0xb7f9e430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb730f8a0 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0xb7311268 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0x0823c20e in ?? ()
No symbol table info available.
#4  0xb7532655 in ?? () from /usr/lib/libstdc++.so.6
No symbol table info available.
#5  0xb7532692 in std::terminate () from /usr/lib/libstdc++.so.6
No symbol table info available.
#6  0xb75327ca in __cxa_throw () from /usr/lib/libstdc++.so.6
No symbol table info available.
#7  0xb7532e23 in operator new () from /usr/lib/libstdc++.so.6
No symbol table info available.
#8  0xb76f9b79 in wxSocketEvent::Clone ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#9  0xb7672965 in wxEvtHandler::AddPendingEvent ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#10 0xb76f97e8 in wxSocketBase::OnRequest ()
---Type <return> to continue, or q <return> to quit---
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#11 0xb76f98e4 in wx_socket_callback () from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#12 0xb76fdfbe in GSocket::Detected_Read ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#13 0xb7840710 in ?? () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#14 0xb6ed14af in gdk_io_invoke (source=0xb2300770,
    condition=<value optimized out>, data=0xb1dfc4c8)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = 3
#15 0xb6c6e6fd in g_io_unix_dispatch (source=0xb21b5f98,
    callback=0xb6ed1450 <gdk_io_invoke>, user_data=0xb1dfc4c8)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 6
#16 0xb6c376f8 in IA__g_main_context_dispatch (context=0x97c57f0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#17 0xb6c3ada3 in g_main_context_iterate (context=0x97c57f0, block=1,
    dispatch=1, self=0x97c6d70)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
---Type <return> to continue, or q <return> to quit---
max_priority = 0
timeout = 0
some_ready = 1
nfds = 16
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xc8f2298
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#18 0xb6c3b2c2 in IA__g_main_loop_run (loop=0x9d1f920)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0x97c6d70
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#19 0xb70693a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0x9d1fcd0
loop = (GMainLoop *) 0x9d1f920
#20 0xb783ee95 in wxEventLoop::Run () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#21 0xb78d55ce in wxAppBase::MainLoop ()
   from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#22 0xb78d51a1 in wxAppBase::OnRun () from /usr/lib/libwx_gtk2u_core-2.8.so.0
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#23 0xb760da7a in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#24 0xb760dc77 in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#25 0x0815bc30 in ?? ()
No symbol table info available.
#26 0xb72fa685 in __libc_start_main () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#27 0x08085c21 in ?? ()
No symbol table info available.

Cheers.


Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 28, 2009, 06:38:27 PM
No crashes in the last 12 hours...  :)

, but i did get this warning:
Code: [Select]
(amule:19623): GLib-WARNING
**: /build/buildd/glib2.0-2.18.2/glib/giounix.c:400
Error while getting flags for FD: Bad file descriptor (9)

And amule (only amule) was 'frozen' for about 8 minutes,
showing an extremely high uploadspeed, but i couldnt verify that
as i couldnt check individual uploadspeed (because of its 'frozen condition')
Now its back to normal, resuming with a very low uploadspeed (290 kbps),
(due to a sharp but very short drop in active uploads) steadily returning to normal.
I also noticed that pattern in stats; very high peaks usually followed by lows
(not always though). In between the uploadspeed is rather stable.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 28, 2009, 07:25:24 PM
Dear RRM,

your crash is highly likely caused by more traffic than amule can handle right now.

Unfortunately it seems amule cannot cope well with high loads, however it should never crash.

I'm thinking on strategies to debug it, for the moment I suggest you limit your speeds and the crash should happen less often.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 28, 2009, 07:29:04 PM
Dear RRM, we need to compile a specific amule so we can debug your problem. We have two choices:

Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 28, 2009, 08:18:31 PM
Dear Bill, I trust you.
And, i have nothing to lose; i have 2 machines
and everything is also saved on multiple external hard drives,
so i can safely mess up this system. Im not in a hurry either.
Whatever you think is best, thats what we do.
I'll do my best to learn and follow your instructions carefully.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 01, 2009, 07:58:33 AM
I got this, but amule didnt crash yet (upload and downloadlimits have been set)
Code: [Select]
CAUGHT DEAD SOCKET IN SENDPACKET()

(amule:17953): GLib-WARNING **: /build/buildd/glib2.0-2.18.2/glib/giounix.c:400Error while getting flags for FD: Bad file descriptor (9)

CAUGHT DEAD SOCKET IN SENDPACKET()
CAUGHT DEAD SOCKET IN SENDPACKET()
CAUGHT DEAD SOCKET IN SENDPACKET()
CAUGHT DEAD SOCKET IN SENDPACKET()
CAUGHT DEAD SOCKET IN SENDPACKET()
CAUGHT DEAD SOCKET IN SENDPACKET()
CAUGHT DEAD SOCKET IN SENDPACKET()
CAUGHT DEAD SOCKET IN SENDPACKET()


The weird thing is; uploading goes beyond the limit that i had set in amule! ::)
and when it does, amule is responding veeeerrry sloooooooowly to my commands...
(it takes many seconds to go from 'transfers' to 'stats' for example)
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 01, 2009, 04:55:51 PM
What proceeded the latest crash:

Code: [Select]
(amule:17953): GLib-WARNING **: /build/buildd/glib2.0-2.18.2/glib/giounix.c:400Error while getting flags for FD: Bad file descriptor (9)

[Thread 0xb5000b90 (LWP 22955) exited]
[New Thread 0xb5000b90 (LWP 23055)]
[Thread 0xb5000b90 (LWP 23055) exited]

(amule:17953): GLib-WARNING **: /build/buildd/glib2.0-2.18.2/glib/giounix.c:400Error while getting flags for FD: Bad file descriptor (9)


(amule:17953): GLib-WARNING **: /build/buildd/glib2.0-2.18.2/glib/giounix.c:400Error while getting flags for FD: Bad file descriptor (9)


Program received signal SIGILL, Illegal instruction.
[Switching to Thread 0xb6983700 (LWP 17953)]
0x09e10839 in ?? ()

bt
Code: [Select]
#0  0x09e10839 in ?? ()
#1  0xb6fa84af in gdk_io_invoke (source=0xae5dbb8,
    condition=<value optimized out>, data=0x2)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
#2  0xb6d456fd in g_io_unix_dispatch (source=0xa371310,
    callback=0xb6fa8450 <gdk_io_invoke>, user_data=0xa389680)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
#3  0xb6d0e6f8 in IA__g_main_context_dispatch (context=0x9cec7f0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
#4  0xb6d11da3 in g_main_context_iterate (context=0x9cec7f0, block=1,
    dispatch=1, self=0x9cedd70)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
#5  0xb6d122c2 in IA__g_main_loop_run (loop=0xa3f8bf8)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
#6  0xb71403a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
#7  0xb7915e95 in wxEventLoop::Run () from /usr/lib/libwx_gtk2u_core-2.8.so.0
#8  0xb79ac5ce in wxAppBase::MainLoop ()
   from /usr/lib/libwx_gtk2u_core-2.8.so.0
#9  0xb79ac1a1 in wxAppBase::OnRun () from /usr/lib/libwx_gtk2u_core-2.8.so.0
#10 0xb76e4a7a in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
#11 0xb76e4c77 in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
#12 0x0815bc30 in ?? ()
---Type <return> to continue, or q <return> to quit---
#13 0xb73d1685 in __libc_start_main () from /lib/tls/i686/cmov/libc.so.6
#14 0x08085c21 in ?? ()
bt full
Code: [Select]
#0  0x09e10839 in ?? ()
No symbol table info available.
#1  0xb6fa84af in gdk_io_invoke (source=0xae5dbb8,
    condition=<value optimized out>, data=0x2)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = 165742640
#2  0xb6d456fd in g_io_unix_dispatch (source=0xa371310,
    callback=0xb6fa8450 <gdk_io_invoke>, user_data=0xa389680)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 0
#3  0xb6d0e6f8 in IA__g_main_context_dispatch (context=0x9cec7f0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#4  0xb6d11da3 in g_main_context_iterate (context=0x9cec7f0, block=1,
    dispatch=1, self=0x9cedd70)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 0
timeout = 0
some_ready = 1
nfds = 387
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xad9f7970
__PRETTY_FUNCTION__ = "g_main_context_iterate"
---Type <return> to continue, or q <return> to quit---
#5  0xb6d122c2 in IA__g_main_loop_run (loop=0xa3f8bf8)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0x9cedd70
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#6  0xb71403a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0xa3ecbc0
loop = (GMainLoop *) 0xa3f8bf8
#7  0xb7915e95 in wxEventLoop::Run () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#8  0xb79ac5ce in wxAppBase::MainLoop ()
   from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#9  0xb79ac1a1 in wxAppBase::OnRun () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#10 0xb76e4a7a in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#11 0xb76e4c77 in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#12 0x0815bc30 in ?? ()
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#13 0xb73d1685 in __libc_start_main () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#14 0x08085c21 in ?? ()
No symbol table info available.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 01, 2009, 07:19:56 PM

your crash is highly likely caused by more traffic than amule can handle right now.

I tested this, and it might be true; i evoked amule to crash
every few minutes by simply adding a few popular downloads.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on March 01, 2009, 09:29:52 PM

your crash is highly likely caused by more traffic than amule can handle right now.

I tested this, and it might be true; i evoked amule to crash
every few minutes by simply adding a few popular downloads.
Ok, I'll try to reproduce it.

On the other hand, could you compile aMule using the instructions on the wiki http://www.amule.org/wiki/index.php/HowTo_Compile_In_Debian#Compile_and_install_aMule ?

If you have any doubt ask here, I use

Code: [Select]
$ ./configure --prefix=/usr/local/stow/amule-debug/ --enable-debug --enable-optimize --disable-upnp --enable-geoip
$ make -j 6
$ sudo make install
$ cd /usr/local/stow
$ sudo stow amule-debug

Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on March 01, 2009, 11:43:59 PM
Aha, in Ubuntu you have to pass configure

Code: [Select]
--with-wxdebug

and install the libwx*-dbg packages, then you have debug info. So the configure line you should use is:
Code: [Select]
./configure  --prefix=/usr/local/stow/amule-debug/ --enable-debug --enable-optimize --disable-upnp --enable-geoip --with-wxdebug
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 11, 2009, 08:50:02 PM
Im sorry that it takes so long. Please dont think that im ungrateful; its just that im reading up on the "compiling amule" info, and so far its still seems so complicated.
I think i need an entire day dedicated to it, so that i can finally make some sense of it and actually give it a try.
I need a little more time.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 13, 2009, 09:50:19 PM
Phew..., at least i got something done... ::)
Installed packages and checked wxWidgets.
Installing the wxGTK gives me more headaches though
 (changing /etc/apt/sources.list file ?)
, so i save that one for later...  ;D
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on March 14, 2009, 01:08:08 PM
Phew..., at least i got something done... ::)
Installed packages and checked wxWidgets.
Installing the wxGTK gives me more headaches though
 (changing /etc/apt/sources.list file ?)
, so i save that one for later...  ;D

RRM, if you are with Ubuntu 8.10 I'd suggest to use stock ubuntu packages (use $sudo apt-get build-dep amule)

Install also all the libwx-*-dbg packages and compile amule snapshot with --enable-debug --with-wxdebug
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 14, 2009, 06:57:36 PM
Thank you btkaos!

Quote from: btkaos
RRM, if you are with Ubuntu 8.10 I'd suggest to use stock ubuntu packages (use $sudo apt-get build-dep amule)

Ok, done.

Quote
Install also all the libwx-*-dbg packages

Do you mean:
libwxgtk2.4-dbg
libwxgtk2.6-dbg and
libwxgtk2.8-dbg

and also:

libwxbase2.4-dbg
libwxbase2.6-dbg
libwxbase2.8-dbg
?
even though (only) libwxgtk2.8-dbg and libwxbase2.8-dbg are already installed?
and I should ignore this?:
Code: [Select]
To compile aMule, You need to have a current version of wxWidgets installed.
To achieve that: Uninstall every possibly previously installed wxwidgets stuff
and this:
Code: [Select]
#  Download current wxwidgets wxGTK stable release source code tar ball from http://www.wxwidgets.org/downloads/
# $ tar xvzf wxgtk-version.tar.gz
# $ cd wxGTK-version
and this?:
Code: [Select]
wxGTK Debian and Ubuntu packages for 2.8.9 are available. To use them you will need to make a small change to your /etc/apt/sources.list file.
Information about this change, the available packages, platforms, and releases is documented on this page in the wxPython wiki
Im only asking because im confused.  :) (hence the headaches  ??? )

Quote
and compile amule snapshot with --enable-debug --with-wxdebug

Ok, i get that. Thanks.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on March 15, 2009, 10:51:45 PM
Do you mean:
libwxgtk2.4-dbg
libwxgtk2.6-dbg and
libwxgtk2.8-dbg

and also:

libwxbase2.4-dbg
libwxbase2.6-dbg
libwxbase2.8-dbg
?
No, sorry. Just install the 2.8 packages. The correct expression is libwx*2.8*
Quote
and I should ignore this?:
Code: [Select]
To compile aMule, You need to have a current version of wxWidgets installed.
To achieve that: Uninstall every possibly previously installed wxwidgets stuff
and this:
Code: [Select]
#  Download current wxwidgets wxGTK stable release source code tar ball from http://www.wxwidgets.org/downloads/
# $ tar xvzf wxgtk-version.tar.gz
# $ cd wxGTK-version
and this?:
Code: [Select]
wxGTK Debian and Ubuntu packages for 2.8.9 are available. To use them you will need to make a small change to your /etc/apt/sources.list file.
Information about this change, the available packages, platforms, and releases is documented on this page in the wxPython wiki
Im only asking because im confused.  :) (hence the headaches  ??? )

Yes, I think you should first try with stock Ubuntu wx. Previous Ubuntu releases shipped a buggy libwx, but I find 8.10 to ship a good wxversion. I think compiling wxwidgets is not necessary to debug your bug.

You can also try the excellent packages by Festor:
http://www.amule.org/amule/index.php?topic=16648.0
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 16, 2009, 06:24:45 PM
Thank you.
2.8 is installed.
Do i need the aMule source code tar ball?
When i type:
Code: [Select]
./configure  --prefix=/usr/local/stow/amule-debug/ --enable-debug --enable-optimize --disable-upnp --enable-geoip --with-wxdebugI get:
Code: [Select]
bash: ./configure: No such file or directory
Quote
You can also try the excellent packages by Festor:
http://www.amule.org/amule/index.php?topic=16648.0

Instead of the packages already installed?
or additionally?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on March 17, 2009, 12:47:20 AM
Thank you.
2.8 is installed.
Do i need the aMule source code tar ball?
When i type:
Code: [Select]
./configure  --prefix=/usr/local/stow/amule-debug/ --enable-debug --enable-optimize --disable-upnp --enable-geoip --with-wxdebugI get:
Code: [Select]
bash: ./configure: No such file or directory
Yes of course, get the latest snapshot. You should type configure in the unpacked tarball.

Quote
Quote
You can also try the excellent packages by Festor:
http://www.amule.org/amule/index.php?topic=16648.0

Instead of the packages already installed?
or additionally?
What you will find there is a new aMule compiled with the right options for you.

RRM, I recommend you to stop trying to compile aMule (for now) and install Festor's packages.

If you install those packages, start using aMule (under gdb), you don't need to compile anything and you will hopefully get a good backtrace.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 17, 2009, 03:29:43 PM
Thank you.
Quote
stop trying to compile aMule (for now) and install Festor's packages. ...
you will hopefully get a good backtrace.

Ok. Done.
However, amule starts with the usual "no debugging symbols found"
Is that ok, or should it be configured differently?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Festor on March 17, 2009, 04:39:07 PM
Thank you.
Quote
stop trying to compile aMule (for now) and install Festor's packages. ...
you will hopefully get a good backtrace.

Ok. Done.
However, amule starts with the usual "no debugging symbols found"
Is that ok, or should it be configured differently?

It's strange, I'm working on it now.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 17, 2009, 07:30:47 PM
It's strange, I'm working on it now.

Thank you for your work. Initially i thought it might not mean anything, but after adding
deb http://ppa.launchpad.net/amule-rc/ppa/ubuntu intrepid main
to the third party software of synaptic repositories, i got this message after reloading:
Code: [Select]
W: GPG error: deb http://ppa.launchpad.net intrepid release:
The following signatures could not be verified because the public key is not available:
NO_PUBKEY 1F7CABE920A90F1A

Amule crashed again.
bt:
Code: [Select]
#0  0x0af30419 in ?? ()
#1  0xb6e5d4af in gdk_io_invoke (source=0xb201c6e0,
    condition=<value optimized out>, data=0x2)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
#2  0xb6bfa71d in g_io_unix_dispatch (source=0xb2317a00,
    callback=0xb6e5d450 <gdk_io_invoke>, user_data=0xb202ecc0)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
#3  0xb6bc3718 in IA__g_main_context_dispatch (context=0x95378d0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
#4  0xb6bc6dc3 in g_main_context_iterate (context=0x95378d0, block=1,
    dispatch=1, self=0x9538e58)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
#5  0xb6bc72e2 in IA__g_main_loop_run (loop=0x95a25f8)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
#6  0xb6ff53a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
#7  0xb77cae95 in wxEventLoop::Run () from /usr/lib/libwx_gtk2u_core-2.8.so.0
#8  0xb78615ce in wxAppBase::MainLoop ()
   from /usr/lib/libwx_gtk2u_core-2.8.so.0
#9  0xb78611a1 in wxAppBase::OnRun () from /usr/lib/libwx_gtk2u_core-2.8.so.0
#10 0xb7599a7a in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
#11 0xb7599c77 in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
#12 0x082a5b0d in ?? ()
---Type <return> to continue, or q <return> to quit---
#13 0xb7286685 in __libc_start_main () from /lib/tls/i686/cmov/libc.so.6
#14 0x0808c301 in ?? ()
bt full:
Code: [Select]
#0  0x0af30419 in ?? ()
No symbol table info available.
#1  0xb6e5d4af in gdk_io_invoke (source=0xb201c6e0,
    condition=<value optimized out>, data=0x2)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = 183698448
#2  0xb6bfa71d in g_io_unix_dispatch (source=0xb2317a00,
    callback=0xb6e5d450 <gdk_io_invoke>, user_data=0xb202ecc0)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = G_IO_HUP
#3  0xb6bc3718 in IA__g_main_context_dispatch (context=0x95378d0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#4  0xb6bc6dc3 in g_main_context_iterate (context=0x95378d0, block=1,
    dispatch=1, self=0x9538e58)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 2147483647
timeout = 4
some_ready = 1
nfds = 93
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xa78c688
__PRETTY_FUNCTION__ = "g_main_context_iterate"
---Type <return> to continue, or q <return> to quit---
#5  0xb6bc72e2 in IA__g_main_loop_run (loop=0x95a25f8)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0x9538e58
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#6  0xb6ff53a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0x9d0dd40
loop = (GMainLoop *) 0x95a25f8
#7  0xb77cae95 in wxEventLoop::Run () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#8  0xb78615ce in wxAppBase::MainLoop ()
   from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#9  0xb78611a1 in wxAppBase::OnRun () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#10 0xb7599a7a in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#11 0xb7599c77 in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#12 0x082a5b0d in ?? ()
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#13 0xb7286685 in __libc_start_main () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#14 0x0808c301 in ?? ()
No symbol table info available.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Festor on March 17, 2009, 11:07:00 PM
Thank you for your work. Initially i thought it might not mean anything, but after adding
deb http://ppa.launchpad.net/amule-rc/ppa/ubuntu intrepid main
to the third party software of synaptic repositories, i got this message after reloading:
Code: [Select]
W: GPG error: deb http://ppa.launchpad.net intrepid release:
The following signatures could not be verified because the public key is not available:
NO_PUBKEY 1F7CABE920A90F1A

GPG error: = You didn't add GPG key of that repository.

Type this in a terminal to add GPG key:
Quote
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 50F03E95F33A4402BAAC9BA71F7CA8E920A90F1A

And...

Ok. Done.
However, amule starts with the usual "no debugging symbols found"
Is that ok, or should it be configured differently?

Now fixed, thanks to GonoszTopi for help me (http://www.amule.org/amule/index.php?topic=16691.0).  ;D ;D
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 17, 2009, 11:30:43 PM
GPG error: = You didn't add GPG key of that repository.

Type this in a terminal to add GPG key:
Quote
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 50F03E95F33A4402BAAC9BA71F7CA8E920A90F1A

Man... How do you guys know all this stuff? ? ?  ::)
Do you eat code for breakfast?

Quote
Now fixed, thanks to GonoszTopi for help me (http://www.amule.org/amule/index.php?topic=16691.0).  ;D ;D

Yes, amule very smoothly starts running now! (nothing about "no debugging symbols")
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 18, 2009, 10:34:26 AM
Im now trying to evoke another crash, by uploading dozens of MB/s
(I dont know why my provider lets me do that; my official uploadlimit is 10 MB/s)
downloading multiple popular files and allowing 500 connections.
So far Amule freezes every few seconds, but no glib warnings and
no crash yet...
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 18, 2009, 12:06:53 PM
Ah, ok, Amule SVN rev. 9522 has crashed now.
Code: [Select]
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb6743700 (LWP 26439)]
0x00000000 in ?? ()

bt
Code: [Select]
#0  0x00000000 in ?? ()
#1  0xb6d674af in gdk_io_invoke (source=0xac9aaa00,
    condition=<value optimized out>, data=0x2)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
#2  0xb6b0571d in g_io_unix_dispatch (source=0xadd418c8,
    callback=0xb6d67450 <gdk_io_invoke>, user_data=0xaf99afd8)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
#3  0xb6ace718 in IA__g_main_context_dispatch (context=0x89b78d0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
#4  0xb6ad1dc3 in g_main_context_iterate (context=0x89b78d0, block=1,
    dispatch=1, self=0x89b8e58)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
#5  0xb6ad22e2 in IA__g_main_loop_run (loop=0x91949c8)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
#6  0xb6f003a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
#7  0xb76d5e95 in wxEventLoop::Run () from /usr/lib/libwx_gtk2u_core-2.8.so.0
#8  0xb776c5ce in wxAppBase::MainLoop ()
   from /usr/lib/libwx_gtk2u_core-2.8.so.0
#9  0xb776c1a1 in wxAppBase::OnRun () from /usr/lib/libwx_gtk2u_core-2.8.so.0
#10 0xb74a4a7a in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
#11 0xb74a4c77 in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
#12 0x082a5c3d in main (argc=1, argv=0xb6b4b460) at ../../src/amule-gui.cpp:95

bt full; "no symbol table available"?
Code: [Select]
#0  0x00000000 in ?? ()
No symbol table info available.
#1  0xb6d674af in gdk_io_invoke (source=0xac9aaa00,
    condition=<value optimized out>, data=0x2)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = 161713880
#2  0xb6b0571d in g_io_unix_dispatch (source=0xadd418c8,
    callback=0xb6d67450 <gdk_io_invoke>, user_data=0xaf99afd8)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 0
#3  0xb6ace718 in IA__g_main_context_dispatch (context=0x89b78d0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#4  0xb6ad1dc3 in g_main_context_iterate (context=0x89b78d0, block=1,
    dispatch=1, self=0x89b8e58)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 0
timeout = 0
some_ready = 1
nfds = 341
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xa239a50
__PRETTY_FUNCTION__ = "g_main_context_iterate"
---Type <return> to continue, or q <return> to quit---
#5  0xb6ad22e2 in IA__g_main_loop_run (loop=0x91949c8)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0x89b8e58
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#6  0xb6f003a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0x8f33400
loop = (GMainLoop *) 0x91949c8
#7  0xb76d5e95 in wxEventLoop::Run () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#8  0xb776c5ce in wxAppBase::MainLoop ()
   from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#9  0xb776c1a1 in wxAppBase::OnRun () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#10 0xb74a4a7a in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#11 0xb74a4c77 in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#12 0x082a5c3d in main (argc=1, argv=0xb6b4b460) at ../../src/amule-gui.cpp:95
No locals.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 18, 2009, 12:50:15 PM
Cut connections back to 300.
And another crash:
Code: [Select]
Terminated after throwing an instance of 'std::bad_alloc'
what(): std::bad_alloc

Program received signal SIGABRT, Aborted.
[Switching to Thread 0xb5651b90 (LWP 17925)]
0xb7fb5430 in __kernel_vsyscall ()

an extensive bt
Code: [Select]
#0  0xb7fb5430 in __kernel_vsyscall ()
#1  0xb72378a0 in raise () from /lib/tls/i686/cmov/libc.so.6
#2  0xb7239268 in abort () from /lib/tls/i686/cmov/libc.so.6
#3  0xb745a655 in ?? () from /usr/lib/libstdc++.so.6
#4  0xb745a692 in std::terminate () from /usr/lib/libstdc++.so.6
#5  0xb745a74b in __cxa_rethrow () from /usr/lib/libstdc++.so.6
#6  0x0820286b in std::__norm::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::_M_new_elements_at_front (this=0xa1e2c18,
    __new_elems=2) at /usr/include/c++/4.3/bits/deque.tcc:734
#7  0x082028d3 in std::__norm::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::_M_reserve_elements_at_front (this=0xa1e2c18, __n=2)
    at /usr/include/c++/4.3/bits/stl_deque.h:1635
#8  0x0820381f in std::__norm::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::_M_range_insert_aux<__gnu_debug::_Safe_iterator<std::__norm::_Deque_iterator<ThrottledControlSocket*, ThrottledControlSocket*&, ThrottledControlSocket**>, std::__debug::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> > > > (this=0xa1e2c18, __pos=
      {_M_cur = 0xb5650bcc, _M_first = 0xb5650bac, _M_last = 0xb5650b8c, _M_node = 0xb7f78000}, __first=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb5650bac, _M_version = 3043298188, _M_prior = 0xb7f78000, _M_next = 0xb7349b5f}, _M_current = {_M_cur = 0x4605, _M_first = 0x0, _M_last = 0x1, _M_node = 0xb5b00048}}, __last=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb5650b8c, _M_vers---Type <return> to continue, or q <return> to quit---
ion = 3086450688, _M_prior = 0xb7349b5f, _M_next = 0x4605}, _M_current = {_M_cur = 0x0, _M_first = 0x1, _M_last = 0xb5b00048, _M_node = 0xb727cb74}})
    at /usr/include/c++/4.3/bits/deque.tcc:440
#9  0x08203cfe in std::__norm::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::_M_insert_dispatch<__gnu_debug::_Safe_iterator<std::__norm::_Deque_iterator<ThrottledControlSocket*, ThrottledControlSocket*&, ThrottledControlSocket**>, std::__debug::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> > > > (this=0xa1e2c18, __pos=
      {_M_cur = 0xb5650c50, _M_first = 0xb5650c30, _M_last = 0xb5650c10, _M_node = 0xa2b3108}, __first=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb5650c30, _M_version = 3043298320, _M_prior = 0xa2b3108, _M_next = 0xb5650c50}, _M_current = {_M_cur = 0xb5650c28, _M_first = 0x81fc736, _M_last = 0xa1e2ca8, _M_node = 0x5f414}}, __last=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb5650c10, _M_version = 170602760, _M_prior = 0xb5650c50, _M_next = 0xb5650c28}, _M_current = {_M_cur = 0x81fc736, _M_first = 0xa1e2ca8, _M_last = 0x5f414, _M_node = 0xb5650c30}}) at /usr/include/c++/4.3/bits/stl_deque.h:1544
#10 0x08203dca in std::__norm::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::insert<__gnu_debug::_Safe_iterator<std::__norm::_Deque_iterator<ThrottledControlSocket*, ThrottledControlSocket*&, ThrottledControlSocket**>, std::__debug::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> > > > (this=0xa1e2c18, __position=
---Type <return> to continue, or q <return> to quit---
      {_M_cur = 0xb5651090, _M_first = 0xb5651070, _M_last = 0xb5651050, _M_node = 0xb5650d38}, __first=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb5651070, _M_version = 3043299408, _M_prior = 0xb5650d38, _M_next = 0xb727d951}, _M_current = {_M_cur = 0x0, _M_first = 0x1000, _M_last = 0x3, _M_node = 0x22}}, __last=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb5651050, _M_version = 3043298616, _M_prior = 0xb727d951, _M_next = 0x0}, _M_current = {_M_cur = 0x1000, _M_first = 0x3, _M_last = 0x22, _M_node = 0xffffffff}})
    at /usr/include/c++/4.3/bits/stl_deque.h:1301
#11 0x0820402b in std::__debug::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::insert<__gnu_debug::_Safe_iterator<std::__norm::_Deque_iterator<ThrottledControlSocket*, ThrottledControlSocket*&, ThrottledControlSocket**>, std::__debug::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> > > > (this=0xa1e2c18, __position=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb56511bc, _M_version = 3043299740, _M_prior = 0xb565117c, _M_next = 0x0}, _M_current = {_M_cur = 0x0, _M_first = 0xffffff50, _M_last = 0xffffffff, _M_node = 0x0}}, __first=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb565119c, _M_version = 3043299708, _M_prior = 0x0, _M_next = 0x0}, _M_current = {_M_cur = 0xffffff50, _M_first = 0xffffffff, _M_last = 0x0, _M_node = 0xaf}}, __last=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb565117c, _M_version = 0, _M_prior = 0x0, _M_next = 0xffffff50}, _M_current = {_M_cur = 0xffffffff, _M_first = 0x0, _M_last = 0xaf, _M_node = 0x60e4b3e7}})
---Type <return> to continue, or q <return> to quit---
    at /usr/include/c++/4.3/debug/deque:329
#12 0x081f8a5f in UploadBandwidthThrottler::Entry (this=0xa1e2c00)
    at ../../src/UploadBandwidthThrottler.cpp:376
#13 0xb7599203 in wxThreadInternal::PthreadStart ()
   from /usr/lib/libwx_baseu-2.8.so.0
#14 0xb759927d in wxPthreadStart () from /usr/lib/libwx_baseu-2.8.so.0
#15 0xb7f7550f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
#16 0xb72eda0e in clone () from /lib/tls/i686/cmov/libc.so.6

bt full ("no symbol table available")
Code: [Select]
#0  0xb7fb5430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb72378a0 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0xb7239268 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0xb745a655 in ?? () from /usr/lib/libstdc++.so.6
No symbol table info available.
#4  0xb745a692 in std::terminate () from /usr/lib/libstdc++.so.6
No symbol table info available.
#5  0xb745a74b in __cxa_rethrow () from /usr/lib/libstdc++.so.6
No symbol table info available.
#6  0x0820286b in std::__norm::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::_M_new_elements_at_front (this=0xa1e2c18,
    __new_elems=2) at /usr/include/c++/4.3/bits/deque.tcc:734
__new_nodes = 1
__i = 1
#7  0x082028d3 in std::__norm::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::_M_reserve_elements_at_front (this=0xa1e2c18, __n=2)
    at /usr/include/c++/4.3/bits/stl_deque.h:1635
__vacancies = 0
#8  0x0820381f in std::__norm::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::_M_range_insert_aux<__gnu_debug::_Safe_iterator<std::__---Type <return> to continue, or q <return> to quit---
norm::_Deque_iterator<ThrottledControlSocket*, ThrottledControlSocket*&, ThrottledControlSocket**>, std::__debug::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> > > > (this=0xa1e2c18, __pos=
      {_M_cur = 0xb5650bcc, _M_first = 0xb5650bac, _M_last = 0xb5650b8c, _M_node = 0xb7f78000}, __first=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb5650bac, _M_version = 3043298188, _M_prior = 0xb7f78000, _M_next = 0xb7349b5f}, _M_current = {_M_cur = 0x4605, _M_first = 0x0, _M_last = 0x1, _M_node = 0xb5b00048}}, __last=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb5650b8c, _M_version = 3086450688, _M_prior = 0xb7349b5f, _M_next = 0x4605}, _M_current = {_M_cur = 0x0, _M_first = 0x1, _M_last = 0xb5b00048, _M_node = 0xb727cb74}})
    at /usr/include/c++/4.3/bits/deque.tcc:440
__new_start = {_M_cur = 0xb7487c8c, _M_first = 0x7fffffff,
  _M_last = 0xa4727fff, _M_node = 0xb5650b48}
__n = 2
#9  0x08203cfe in std::__norm::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::_M_insert_dispatch<__gnu_debug::_Safe_iterator<std::__norm::_Deque_iterator<ThrottledControlSocket*, ThrottledControlSocket*&, ThrottledControlSocket**>, std::__debug::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> > > > (this=0xa1e2c18, __pos=
      {_M_cur = 0xb5650c50, _M_first = 0xb5650c30, _M_last = 0xb5650c10, _M_node = 0xa2b3108}, __first=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb5650c30, _M_vers---Type <return> to continue, or q <return> to quit---
ion = 3043298320, _M_prior = 0xa2b3108, _M_next = 0xb5650c50}, _M_current = {_M_cur = 0xb5650c28, _M_first = 0x81fc736, _M_last = 0xa1e2ca8, _M_node = 0x5f414}}, __last=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb5650c10, _M_version = 170602760, _M_prior = 0xb5650c50, _M_next = 0xb5650c28}, _M_current = {_M_cur = 0x81fc736, _M_first = 0xa1e2ca8, _M_last = 0x5f414, _M_node = 0xb5650c30}}) at /usr/include/c++/4.3/bits/stl_deque.h:1544
No locals.
#10 0x08203dca in std::__norm::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::insert<__gnu_debug::_Safe_iterator<std::__norm::_Deque_iterator<ThrottledControlSocket*, ThrottledControlSocket*&, ThrottledControlSocket**>, std::__debug::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> > > > (this=0xa1e2c18, __position=
      {_M_cur = 0xb5651090, _M_first = 0xb5651070, _M_last = 0xb5651050, _M_node = 0xb5650d38}, __first=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb5651070, _M_version = 3043299408, _M_prior = 0xb5650d38, _M_next = 0xb727d951}, _M_current = {_M_cur = 0x0, _M_first = 0x1000, _M_last = 0x3, _M_node = 0x22}}, __last=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb5651050, _M_version = 3043298616, _M_prior = 0xb727d951, _M_next = 0x0}, _M_current = {_M_cur = 0x1000, _M_first = 0x3, _M_last = 0x22, _M_node = 0xffffffff}})
    at /usr/include/c++/4.3/bits/stl_deque.h:1301
No locals.
---Type <return> to continue, or q <return> to quit---
#11 0x0820402b in std::__debug::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::insert<__gnu_debug::_Safe_iterator<std::__norm::_Deque_iterator<ThrottledControlSocket*, ThrottledControlSocket*&, ThrottledControlSocket**>, std::__debug::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> > > > (this=0xa1e2c18, __position=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb56511bc, _M_version = 3043299740, _M_prior = 0xb565117c, _M_next = 0x0}, _M_current = {_M_cur = 0x0, _M_first = 0xffffff50, _M_last = 0xffffffff, _M_node = 0x0}}, __first=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb565119c, _M_version = 3043299708, _M_prior = 0x0, _M_next = 0x0}, _M_current = {_M_cur = 0xffffff50, _M_first = 0xffffffff, _M_last = 0x0, _M_node = 0xaf}}, __last=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb565117c, _M_version = 0, _M_prior = 0x0, _M_next = 0xffffff50}, _M_current = {_M_cur = 0xffffffff, _M_first = 0x0, _M_last = 0xaf, _M_node = 0x60e4b3e7}})
    at /usr/include/c++/4.3/debug/deque:329
No locals.
#12 0x081f8a5f in UploadBandwidthThrottler::Entry (this=0xa1e2c00)
    at ../../src/UploadBandwidthThrottler.cpp:376
queueLock = {m_isOk = true, m_mutex = @0xa1e2c14}
spentBytes = 0
spentOverhead = 0
sendLock = {m_isOk = true, m_mutex = @0xa1e2c10}
maxSlot = 175
---Type <return> to continue, or q <return> to quit---
timeSinceLastLoop = 1000
minFragSize = 1300
doubleSendSize = 2600
bytesToSpend = 1625600
sleepTime = 1000
thisLoopTick = 425699792
TIME_BETWEEN_UPLOAD_LOOPS = 1
lastLoopTick = 425699792
realBytesToSpend = 1625600999
allowedDataRate = 1536000
rememberedSlotCounter = 10
extraSleepTime = 1000
sendLock = {m_isOk = false, m_mutex = @0x0}
#13 0xb7599203 in wxThreadInternal::PthreadStart ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#14 0xb759927d in wxPthreadStart () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#15 0xb7f7550f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#16 0xb72eda0e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Festor on March 18, 2009, 01:19:21 PM
I found something of symbol table and gdb:

http://www.cs.utah.edu/dept/old/texinfo/gdb/gdb_13.html
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 18, 2009, 05:20:27 PM
http://www.cs.utah.edu/dept/old/texinfo/gdb/gdb_13.html

I probably totally misunderstand, but does it say that by using the file command
i can have the symbol table available in/for the amule gdb?
If so, what line should i start it with?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: GonoszTopi on March 18, 2009, 11:07:22 PM
Do you eat code for breakfast?
No. Not only. We eat and drink code for luch and dinner, too (and sometimes inbetween).

About "No symbol table info available.":
Code: [Select]
Program received signal SIGSEGV, Segmentation fault.
0x00000000 in ?? ()
The program has made a jump to an invalid address (#00000000) which does not belong to any program. It's normal that there's no symbol table information for this address.

Code: [Select]
#0  0xb7fb5430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb72378a0 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
It is also normal that you don't have debugging information for the kernel and for system libraries.

Code: [Select]
#13 0xb7599203 in wxThreadInternal::PthreadStart ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
...and similar ones: Now you have full debugging support for aMule itself, but not for the libraries it uses (wxWidgets in this case). You'd need to install a debug-enabled version of wxWidgets to get symbol table information.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Festor on March 18, 2009, 11:48:04 PM
Code: [Select]
#13 0xb7599203 in wxThreadInternal::PthreadStart ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
You'd need to install a debug-enabled version of wxWidgets to get symbol table information.

In Ubuntu 8.10 -> libwxbase2.8-dbg, libwxgtk2.8-dbg and wx2.8-headers packages
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 19, 2009, 07:24:42 AM
You'd need to install a debug-enabled version of wxWidgets to get symbol table information.

In Ubuntu 8.10 -> libwxbase2.8-dbg, libwxgtk2.8-dbg and wx2.8-headers packages

Huh?, but these 3 already have been installed...
??
Maybe i need to reconfigure amule to enable debug?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on March 23, 2009, 07:59:35 PM
Hi guys, sorry for the delay I was on holidays :)

Let's see:

So in short, RRM, install the debug libraries and wait for Festor to release fixed packages and you should finally get a perfect backtrace! Cheers and thanks for all the effort you are doing in order to improve amule.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 23, 2009, 10:17:24 PM
Thank you BTKaos, welcome back.
I hope your holiday was relaxing & fun!

Quote
It seems you need some additional debugging packages, sudo aptitude install  libc6-dbg libglib2.0-0-dbg libgtk2.0-0-dbg libstdc++6-4.3-dbg

Thank you. Done.

Quote
Cheers and thanks for all the effort you are doing in order to improve amule.

Thank YOU
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Festor on March 25, 2009, 10:10:06 PM
So in short, RRM, install the debug libraries and wait for Festor to release fixed packages and you should finally get a perfect backtrace! Cheers and thanks for all the effort you are doing in order to improve amule.

Sorry for the delay, should work fine now...  or I hope so ...  :-[

http://www.amule.org/amule/index.php?topic=16648.0
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on March 26, 2009, 12:39:06 PM
Fantastic work Festor! Let's see if we can debug now RRM's crash.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 26, 2009, 04:06:55 PM
Thank you, i will try to install that now.
Here'ś the last crash BEFORE installing Festorś latest package:

Terminated after throwing an instance of 'std::bad_alloc'
   what(): std::bad_alloc
* Could not get symbol names for backtrace
   backtrace:

Program received signal SIGABRT, Aborted.
[Switching to Thread 0xb6821700 (LWP 31376)]
0xb8002430 in __kernel_vsyscall ()
(gdb) BT
Code: [Select]
#0  0xb8002430 in __kernel_vsyscall ()
#1  0xb72848a0 in raise () from /lib/tls/i686/cmov/libc.so.6
#2  0xb7286268 in abort () from /lib/tls/i686/cmov/libc.so.6
#3  0x083dad76 in OnUnhandledException ()
    at ../../../../src/libs/common/MuleDebug.cpp:103
#4  0xb74a7655 in __cxxabiv1::__terminate (
    handler=0x83daa05 <OnUnhandledException()>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
#5  0xb74a7692 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
#6  0xb74a77ca in __cxa_throw (obj=0xb74d68f0, tinfo=0x86aa38c,
    dest=0xb74a7d00 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
#7  0xb74a7e23 in operator new (sz=44)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
#8  0xb766eb79 in wxSocketEvent::Clone ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
#9  0xb75e7965 in wxEvtHandler::AddPendingEvent ()
   from /usr/lib/libwx_baseu-2.8.so.0
#10 0xb766e7e8 in wxSocketBase::OnRequest ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
#11 0xb766e8e4 in wx_socket_callback () from /usr/lib/libwx_baseu_net-2.8.so.0
#12 0xb7672e3b in GSocket::Detected_Write ()
---Type <return> to continue, or q <return> to quit---
   from /usr/lib/libwx_baseu_net-2.8.so.0
#13 0xb77b56f7 in ?? () from /usr/lib/libwx_gtk2u_core-2.8.so.0
#14 0xb6e454af in gdk_io_invoke (source=0xb5b20720,
    condition=<value optimized out>, data=0xb10d9768)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
#15 0xb6be371d in g_io_unix_dispatch (source=0xb2517e98,
    callback=0xb6e45450 <gdk_io_invoke>, user_data=0xb10d9768)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
#16 0xb6bac718 in IA__g_main_context_dispatch (context=0xa60f8d0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
#17 0xb6bafdc3 in g_main_context_iterate (context=0xa60f8d0, block=1,
    dispatch=1, self=0xa610e58)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
#18 0xb6bb02e2 in IA__g_main_loop_run (loop=0xb5b00f78)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
#19 0xb6fde3a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
#20 0xb77b3e95 in wxEventLoop::Run () from /usr/lib/libwx_gtk2u_core-2.8.so.0
#21 0xb784a5ce in wxAppBase::MainLoop ()
   from /usr/lib/libwx_gtk2u_core-2.8.so.0
#22 0xb784a1a1 in wxAppBase::OnRun () from /usr/lib/libwx_gtk2u_core-2.8.so.0
#23 0xb7582a7a in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
#24 0xb7582c77 in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
---Type <return> to continue, or q <return> to quit---
#25 0x082a5c39 in main (argc=Cannot access memory at address 0x7a90
) at ../../src/amule-gui.cpp:95
(gdb) BT FULL
Code: [Select]
#0  0xb8002430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb72848a0 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0xb7286268 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0x083dad76 in OnUnhandledException ()
    at ../../../../src/libs/common/MuleDebug.cpp:103
t = (class std::type_info *) 0x86aa38c
output = (FILE *) 0xb73b3560
#4  0xb74a7655 in __cxxabiv1::__terminate (
    handler=0x83daa05 <OnUnhandledException()>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
No locals.
#5  0xb74a7692 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
No locals.
#6  0xb74a77ca in __cxa_throw (obj=0xb74d68f0, tinfo=0x86aa38c,
    dest=0xb74a7d00 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
header = <value optimized out>
#7  0xb74a7e23 in operator new (sz=44)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
---Type <return> to continue, or q <return> to quit---
handler = <value optimized out>
p = <value optimized out>
#8  0xb766eb79 in wxSocketEvent::Clone ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#9  0xb75e7965 in wxEvtHandler::AddPendingEvent ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#10 0xb766e7e8 in wxSocketBase::OnRequest ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#11 0xb766e8e4 in wx_socket_callback () from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#12 0xb7672e3b in GSocket::Detected_Write ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#13 0xb77b56f7 in ?? () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#14 0xb6e454af in gdk_io_invoke (source=0xb5b20720,
    condition=<value optimized out>, data=0xb10d9768)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = GDK_INPUT_WRITE
#15 0xb6be371d in g_io_unix_dispatch (source=0xb2517e98,
---Type <return> to continue, or q <return> to quit---
    callback=0xb6e45450 <gdk_io_invoke>, user_data=0xb10d9768)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 6
#16 0xb6bac718 in IA__g_main_context_dispatch (context=0xa60f8d0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#17 0xb6bafdc3 in g_main_context_iterate (context=0xa60f8d0, block=1,
    dispatch=1, self=0xa610e58)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 300
timeout = 0
some_ready = 1
nfds = 10
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xaeda450
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#18 0xb6bb02e2 in IA__g_main_loop_run (loop=0xb5b00f78)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0xa610e58
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#19 0xb6fde3a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
---Type <return> to continue, or q <return> to quit---
functions = (GList *) 0x0
init = (GtkInitFunction *) 0xb5b006f8
loop = (GMainLoop *) 0xb5b00f78
#20 0xb77b3e95 in wxEventLoop::Run () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#21 0xb784a5ce in wxAppBase::MainLoop ()
   from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#22 0xb784a1a1 in wxAppBase::OnRun () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#23 0xb7582a7a in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#24 0xb7582c77 in wxEntry () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#25 0x082a5c39 in main (argc=Cannot access memory at address 0x7a90
) at ../../src/amule-gui.cpp:95
No locals.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 26, 2009, 04:28:17 PM
Im very sorry that i still dont get it...
I know that you gave me the public key for 1F7CABE920A90F1A,
but how / where do i get the public key for 9633A5BB0EB83DCE?
Is there some kind of standard method to retrieve that key?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Festor on March 26, 2009, 04:33:31 PM
Is there some kind of standard method to retrieve that key?

For Ubuntu and PPA Launchpad gpg keys:
Code: [Select]
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com put_here_gpg_key
Or.. this url:
Code: [Select]
http://keyserver.ubuntu.com:11371/pks/lookup?search=0xPUT_HERE_GPG_KEY&op=index
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 26, 2009, 04:42:21 PM
Thank you.
So, like this, right?
Code: [Select]
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 9633A5BB0EB83DCEand instead of
Code: [Select]
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 50F03E95F33A4402BAAC9BA71F7CA8E920A90F1Ai could have used this shorter version?:
Code: [Select]
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 1F7CA8E920A90F1A
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on March 26, 2009, 05:02:55 PM
All right RRM.

Once you update amule, please check the output of "dpkg -l amule*" Post it here.

Also, could you post the output of "dpkg -l libstdc++*"

Please be sure you have installed the libstdc++6-4.3-dbg package.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on March 26, 2009, 05:04:41 PM
One more thing RRM, as the bug seems related to threading, please, also post the output of "thread apply all bt full" in gdb.

Cheers!
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Festor on March 26, 2009, 05:06:52 PM
Thank you.
So, like this, right?

Every ways works well.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 26, 2009, 05:20:53 PM
Oh, i hadnt seen your replies...
So, i will do the above now.
In the meantime, 9536 crashed.

"Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb673d700 (LWP 26484)]
0x43900692 in ?? ()"
(gdb) bt
Code: [Select]
#0  0x43900692 in ?? ()
#1  0xb6d614af in gdk_io_invoke (source=0xb5aed968,
    condition=<value optimized out>, data=0x2)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
#2  0xb6aff71d in g_io_unix_dispatch (source=0xb5ac2918,
    callback=0xb6d61450 <gdk_io_invoke>, user_data=0xb261f500)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
#3  0xb6ac8718 in IA__g_main_context_dispatch (context=0xa2c2918)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
#4  0xb6acbdc3 in g_main_context_iterate (context=0xa2c2918, block=1,
    dispatch=1, self=0xa2c3ec0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
#5  0xb6acc2e2 in IA__g_main_loop_run (loop=0xaad4220)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
#6  0xb6efa3a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
#7  0xb771710b in wxEventLoop::Run (this=0xa3223c0)
    at ../src/gtk/evtloop.cpp:76
#8  0xb77bb3dc in wxAppBase::MainLoop (this=0xa2c27d0)
    at ../src/common/appcmn.cpp:312
#9  0xb77bb131 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
#10 0xb74b03fa in wxEntry (argc=@0xb75a86cc, argv=0xa2b0e38)
    at ../src/common/init.cpp:460
---Type <return> to continue, or q <return> to quit---
#11 0xb74b04b7 in wxEntry (argc=@0xbfac2860, argv=0xbfac28e4)
    at ../src/common/init.cpp:472
#12 0x082ac21d in main (argc=1, argv=0xb6b45460) at ../../src/amule-gui.cpp:95
(gdb) bt full
Code: [Select]
#0  0x43900692 in ?? ()
No symbol table info available.
#1  0xb6d614af in gdk_io_invoke (source=0xb5aed968,
    condition=<value optimized out>, data=0x2)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = 2985979680
#2  0xb6aff71d in g_io_unix_dispatch (source=0xb5ac2918,
    callback=0xb6d61450 <gdk_io_invoke>, user_data=0xb261f500)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 0
#3  0xb6ac8718 in IA__g_main_context_dispatch (context=0xa2c2918)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#4  0xb6acbdc3 in g_main_context_iterate (context=0xa2c2918, block=1,
    dispatch=1, self=0xa2c3ec0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 2147483647
timeout = 19
some_ready = 1
nfds = 274
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xb155d208
__PRETTY_FUNCTION__ = "g_main_context_iterate"
---Type <return> to continue, or q <return> to quit---
#5  0xb6acc2e2 in IA__g_main_loop_run (loop=0xaad4220)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0xa2c3ec0
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#6  0xb6efa3a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0xa3223c0
loop = (GMainLoop *) 0xaad4220
#7  0xb771710b in wxEventLoop::Run (this=0xa3223c0)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#8  0xb77bb3dc in wxAppBase::MainLoop (this=0xa2c27d0)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0xa3223c0}, m_pp = 0xa2c2810,
  m_pOld = 0x0}
#9  0xb77bb131 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
No locals.
#10 0xb74b03fa in wxEntry (argc=@0xb75a86cc, argv=0xa2b0e38)
    at ../src/common/init.cpp:460
No locals.
---Type <return> to continue, or q <return> to quit---
#11 0xb74b04b7 in wxEntry (argc=@0xbfac2860, argv=0xbfac28e4)
    at ../src/common/init.cpp:472
No locals.
#12 0x082ac21d in main (argc=1, argv=0xb6b45460) at ../../src/amule-gui.cpp:95
No locals.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on March 26, 2009, 05:26:03 PM
Well, I had a quick look to the set of backtraces and it is clear what is going on: amule runs out of memory!

RRM, the next time amule crashes could you post the output of

Code: [Select]
$ free
$ ps axl | grep amule

I guess this could be related: http://www.amule.org/amule/index.php?topic=16714.0

Some advice, play with the "maximum connections" setting and see if the crash happens more often when the value is low and if it goes away when the value is high.

Cheers!
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 26, 2009, 05:29:23 PM
Quote
the output of "dpkg -l amule*"

No packages found that match amule.py

Quote
the output of "dpkg -l libstdc++*"

Code: [Select]
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Cfg-files/Unpacked/Failed-cfg/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: uppercase=bad)
||/ Name           Verion         Description
+++-==============-==============-============================================
un  libstdc++-dev  <none>         (no description available)
un  libstdc++2.10- <none>         (no description available)
un  libstdc++2.8-d <none>         (no description available)
un  libstdc++2.9-d <none>         (no description available)
un  libstdc++2.9-g <none>         (no description available)
un  libstdc++3.0-d <none>         (no description available)
un  libstdc++5-3.3 <none>         (no description available)
un  libstdc++5-dbg <none>         (no description available)
ii  libstdc++6     4.3.2-1ubuntu1 The GNU Standard C++ Library v3
un  libstdc++6-4.0 <none>         (no description available)
un  libstdc++6-4.1 <none>         (no description available)
pn  libstdc++6-4.2 <none>         (no description available)
pn  libstdc++6-4.2 <none>         (no description available)
un  libstdc++6-4.2 <none>         (no description available)
ii  libstdc++6-4.3 4.3.2-1ubuntu1 The GNU Standard C++ Library v3 (debugging f
ii  libstdc++6-4.3 4.3.2-1ubuntu1 The GNU Standard C++ Library v3 (development
un  libstdc++6-4.3 <none>         (no description available)
un  libstdc++6-dbg <none>         (no description available)

Quote
Please be sure you have installed the libstdc++6-4.3-dbg package.

Yes, that one had been installed already.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 26, 2009, 05:40:07 PM
Quote
RRM, the next time amule crashes could you post the output of

Code: [Select]
$ free

                    total       used              free        shared    buffers     cached
Mem:       3111840    2999368     112472          0       294048    1987268
   -/+ buffers/cache:     718052    2393788
Swap:      9100780      490140    8610640

Code: [Select]
$ ps axl | grep amule
0  1000  2448  1770  20   0   3236   788 -      S+   pts/1      0:00 grep amule
0  1000 26476 26438  20   0 195356 190608 poll  S+   pts/0      0:02 gdb amule
0  1000 26484 26476  20   0 150456 74936 ptrace Tl   pts/0     16:19 /usr/bin/amule

Quote
Some advice, play with the "maximum connections" setting and see if the
crash happens more often when the value is low and if it goes away when the value is high.

Its the other way around. If the value is low enough (below 200; depending on the number of downloads)
amule doesnt crash, but the higher it is, the faster it crashes.
Cheers!
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 26, 2009, 05:45:08 PM
One more thing RRM, as the bug seems related to threading, please, also post the output of "thread apply all bt full" in gdb.

thread apply all bt full:
Code: [Select]
Thread 5 (Thread 0xb45aeb90 (LWP 26538)):
#0  0xb7fc1430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7f853a2 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
   from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0xb75216e1 in wxConditionInternal::WaitTimeout (this=0xa3068e8,
    milliseconds=100) at ../src/unix/threadpsx.cpp:405
tspec = {tv_sec = 1238084103, tv_nsec = 286000000}
err = <value optimized out>
#3  0xb752176a in wxCondition::WaitTimeout (this=0xa322374, milliseconds=100)
    at ../include/wx/thrimpl.cpp:256
__FUNCTION__ = "WaitTimeout"
#4  0xb7523524 in wxSemaphoreInternal::WaitTimeout (this=0xa322370,
    milliseconds=100) at ../src/unix/threadpsx.cpp:552
remainingTime = -516
locker = {m_isOk = true, m_mutex = @0xa322370}
#5  0xb75235aa in wxSemaphore::WaitTimeout (this=0xa9c7308, milliseconds=100)
    at ../include/wx/thrimpl.cpp:320
__FUNCTION__ = "WaitTimeout"
#6  0x083e39d4 in CTimerThread::Entry (this=0xa9c72e8)
    at ../../src/Timer.cpp:64
---Type <return> to continue, or q <return> to quit---
now = 1133521938
sinceLast = 0
timeout = 100
evt = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x85c7608,
      static ms_classInfo = {m_className = 0xb75551a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7a528cc, m_next = 0xb75a98c4,
        static sm_classTable = 0xa2953e8}, m_refData = 0x0},
    m_eventObject = 0x0, m_eventType = 10244, m_timeStamp = 0, m_id = 6128,
    m_callbackUserData = 0x0, m_propagationLevel = 0, m_skipped = false,
    m_isCommandEvent = false, static ms_classInfo = {m_className = 0xb7566708,
      m_objectSize = 36, m_objectConstructor = 0, m_baseInfo1 = 0xb75a9858,
      m_baseInfo2 = 0x0, static sm_first = 0xb7a528cc, m_next = 0xb75aa908,
      static sm_classTable = 0xa2953e8}}, <No data fields>}
lastEvent = 1133521938
#7  0xb7524036 in wxThreadInternal::PthreadStart (thread=0xa9c72e8)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0xaad41a8
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#8  0xb752413d in wxPthreadStart (ptr=0xa9c72e8)
    at ../src/unix/threadpsx.cpp:718
---Type <return> to continue, or q <return> to quit---
No locals.
#9  0xb7f8150f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#10 0xb7256a0e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 3 (Thread 0xb55b0b90 (LWP 26524)):
#0  0xb7fc1430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7f88906 in nanosleep () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0xb752b168 in wxMicroSleep (microseconds=0) at ../src/unix/utilsunx.cpp:191
tmReq = {tv_sec = 0, tv_nsec = 1000000}
#3  0xb752b191 in wxMilliSleep (milliseconds=1) at ../src/unix/utilsunx.cpp:212
No locals.
#4  0xb752141d in wxThread::Sleep (milliseconds=1)
    at ../src/unix/threadpsx.cpp:986
No locals.
#5  0x081fd133 in UploadBandwidthThrottler::Entry (this=0xa94cb80)
    at ../../src/UploadBandwidthThrottler.cpp:324
timeSinceLastLoop = 4
minFragSize = 1300
doubleSendSize = 2600
---Type <return> to continue, or q <return> to quit---
bytesToSpend = 70656
sleepTime = 5
thisLoopTick = 1133522017
TIME_BETWEEN_UPLOAD_LOOPS = 1
lastLoopTick = 1133522017
realBytesToSpend = 64512999
allowedDataRate = 1536000
rememberedSlotCounter = 107
extraSleepTime = 5
sendLock = {m_isOk = false, m_mutex = @0xb7f90ff4}
#6  0xb7524036 in wxThreadInternal::PthreadStart (thread=0xa94cb80)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0xa955fd8
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#7  0xb752413d in wxPthreadStart (ptr=0xa94cb80)
    at ../src/unix/threadpsx.cpp:718
No locals.
#8  0xb7f8150f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#9  0xb7256a0e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
---Type <return> to continue, or q <return> to quit---

Thread 1 (Thread 0xb673d700 (LWP 26484)):
#0  0x43900692 in ?? ()
No symbol table info available.
#1  0xb6d614af in gdk_io_invoke (source=0xb5aed968,
    condition=<value optimized out>, data=0x2)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = 2985979680
#2  0xb6aff71d in g_io_unix_dispatch (source=0xb5ac2918,
    callback=0xb6d61450 <gdk_io_invoke>, user_data=0xb261f500)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 0
#3  0xb6ac8718 in IA__g_main_context_dispatch (context=0xa2c2918)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#4  0xb6acbdc3 in g_main_context_iterate (context=0xa2c2918, block=1,
    dispatch=1, self=0xa2c3ec0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 2147483647
timeout = 19
some_ready = 1
nfds = 274
allocated_nfds = <value optimized out>
---Type <return> to continue, or q <return> to quit---
fds = (GPollFD *) 0xb155d208
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#5  0xb6acc2e2 in IA__g_main_loop_run (loop=0xaad4220)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0xa2c3ec0
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#6  0xb6efa3a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0xa3223c0
loop = (GMainLoop *) 0xaad4220
#7  0xb771710b in wxEventLoop::Run (this=0xa3223c0)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#8  0xb77bb3dc in wxAppBase::MainLoop (this=0xa2c27d0)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0xa3223c0}, m_pp = 0xa2c2810,
  m_pOld = 0x0}
#9  0xb77bb131 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
No locals.
#10 0xb74b03fa in wxEntry (argc=@0xb75a86cc, argv=0xa2b0e38)
---Type <return> to continue, or q <return> to quit---
    at ../src/common/init.cpp:460
No locals.
#11 0xb74b04b7 in wxEntry (argc=@0xbfac2860, argv=0xbfac28e4)
    at ../src/common/init.cpp:472
No locals.
#12 0x082ac21d in main (argc=1, argv=0xb6b45460) at ../../src/amule-gui.cpp:95
No locals.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 26, 2009, 10:28:45 PM
and another crash:

Program received signal SIGABRT, Aborted.
[Switching to Thread 0xb6741700 (LWP 3589)]
0xb7fc5430 in __kernel_vsyscall ()

bt
Code: [Select]
bt
#0  0xb7fc5430 in __kernel_vsyscall ()
#1  0xb71a48a0 in raise () from /lib/tls/i686/cmov/libc.so.6
#2  0xb71a6268 in abort () from /lib/tls/i686/cmov/libc.so.6
#3  0xb73c7655 in __cxxabiv1::__terminate (handler=0x808a378 <abort@plt>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
#4  0xb73c7692 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
#5  0xb73c77ca in __cxa_throw (obj=0xb73f68f0, tinfo=0x86e5a6c,
    dest=0xb73c7d00 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
#6  0xb73c7e23 in operator new (sz=24)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
#7  0xb74ac556 in wxObjectList::CreateNode (this=0xa7e2be0, prev=0x4fff70,
    next=0x0, data=0x4fffb0, key=@0xb75ac750) at ../include/wx/list.h:1178
#8  0xb74c1759 in wxListBase::Append (this=0xa7e2be0, object=0x4fffb0)
    at ../src/common/list.cpp:244
#9  0xb7529be7 in wxEvtHandler::AddPendingEvent (this=0x86e80c0,
    event=@0xbfcc6ef0) at ../include/wx/list.h:1178
#10 0xb75cdd58 in wxSocketBase::OnRequest (this=0xaef0450,
    notification=wxSOCKET_OUTPUT) at ../src/common/socket.cpp:1006
#11 0xb75cde54 in wx_socket_callback (notification=GSOCK_OUTPUT,
    cdata=0xaef0450 "\b-M\b") at ../src/common/socket.cpp:942
#12 0xb75d26bb in GSocket::Detected_Write (this=0xa9ea440)
---Type <return> to continue, or q <return> to quit---
    at ../src/unix/gsocket.cpp:1836
#13 0xb771cbe7 in _GSocket_GDK_Input (data=0xa9ea440, source=97,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
#14 0xb6d654af in gdk_io_invoke (source=0xb5abdad0,
    condition=<value optimized out>, data=0xb5a269e0)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
#15 0xb6b0371d in g_io_unix_dispatch (source=0xb5aee5d8,
    callback=0xb6d65450 <gdk_io_invoke>, user_data=0xb5a269e0)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
#16 0xb6acc718 in IA__g_main_context_dispatch (context=0x9e6a918)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
#17 0xb6acfdc3 in g_main_context_iterate (context=0x9e6a918, block=1,
    dispatch=1, self=0x9e6bec0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
#18 0xb6ad02e2 in IA__g_main_loop_run (loop=0xb5a02a98)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
#19 0xb6efe3a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
#20 0xb771b10b in wxEventLoop::Run (this=0xb5a00668)
    at ../src/gtk/evtloop.cpp:76
#21 0xb77bf3dc in wxAppBase::MainLoop (this=0x9e6a7d0)
    at ../src/common/appcmn.cpp:312
#22 0xb77bf131 in wxAppBase::OnRun (this=0x6) at ../src/common/appcmn.cpp:367
---Type <return> to continue, or q <return> to quit---
#23 0xb74b43fa in wxEntry (argc=@0xb75ac6cc, argv=0x9e58e38)
    at ../src/common/init.cpp:460
#24 0xb74b44b7 in wxEntry (argc=@0xbfcc7260, argv=0xbfcc72e4)
    at ../src/common/init.cpp:472
#25 0x082ac21d in main (argc=Cannot access memory at address 0xe05
) at ../../src/amule-gui.cpp:95

bt full

Code: [Select]
#0  0xb7fc5430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb71a48a0 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0xb71a6268 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0xb73c7655 in __cxxabiv1::__terminate (handler=0x808a378 <abort@plt>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
No locals.
#4  0xb73c7692 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
No locals.
#5  0xb73c77ca in __cxa_throw (obj=0xb73f68f0, tinfo=0x86e5a6c,
    dest=0xb73c7d00 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
header = <value optimized out>
#6  0xb73c7e23 in operator new (sz=24)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
handler = <value optimized out>
p = <value optimized out>
#7  0xb74ac556 in wxObjectList::CreateNode (this=0xa7e2be0, prev=0x4fff70,
    next=0x0, data=0x4fffb0, key=@0xb75ac750) at ../include/wx/list.h:1178
No locals.
---Type <return> to continue, or q <return> to quit---
#8  0xb74c1759 in wxListBase::Append (this=0xa7e2be0, object=0x4fffb0)
    at ../src/common/list.cpp:244
node = <value optimized out>
__FUNCTION__ = "Append"
#9  0xb7529be7 in wxEvtHandler::AddPendingEvent (this=0x86e80c0,
    event=@0xbfcc6ef0) at ../include/wx/list.h:1178
eventCopy = <value optimized out>
__FUNCTION__ = "AddPendingEvent"
#10 0xb75cdd58 in wxSocketBase::OnRequest (this=0xaef0450,
    notification=wxSOCKET_OUTPUT) at ../src/common/socket.cpp:1006
event = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x86e1488,
      static ms_classInfo = {m_className = 0xb75591a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7a568cc, m_next = 0xb75ad8c4,
        static sm_classTable = 0x9e3d3e8}, m_refData = 0x0},
    m_eventObject = 0xaef0450, m_eventType = 10002, m_timeStamp = 0,
    m_id = 6123, m_callbackUserData = 0x0, m_propagationLevel = 0,
    m_skipped = false, m_isCommandEvent = false, static ms_classInfo = {
      m_className = 0xb756a708, m_objectSize = 36, m_objectConstructor = 0,
      m_baseInfo1 = 0xb75ad858, m_baseInfo2 = 0x0,
      static sm_first = 0xb7a568cc, m_next = 0xb75ae908,
      static sm_classTable = 0x9e3d3e8}}, m_event = wxSOCKET_OUTPUT,
  m_clientData = 0x0, static ms_classInfo = {m_className = 0xb75d5008,
---Type <return> to continue, or q <return> to quit---
    m_objectSize = 44,
    m_objectConstructor = 0xb75cbe00 <wxSocketEvent::wxCreateObject()>,
    m_baseInfo1 = 0xb75ae920, m_baseInfo2 = 0x0, static sm_first = 0xb7a568cc,
    m_next = 0xb75de54c, static sm_classTable = 0x9e3d3e8}}
flag = <value optimized out>
#11 0xb75cde54 in wx_socket_callback (notification=GSOCK_OUTPUT,
    cdata=0xaef0450 "\b-M\b") at ../src/common/socket.cpp:942
No locals.
#12 0xb75d26bb in GSocket::Detected_Write (this=0xa9ea440)
    at ../src/unix/gsocket.cpp:1836
No locals.
#13 0xb771cbe7 in _GSocket_GDK_Input (data=0xa9ea440, source=97,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
No locals.
#14 0xb6d654af in gdk_io_invoke (source=0xb5abdad0,
    condition=<value optimized out>, data=0xb5a269e0)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = GDK_INPUT_WRITE
#15 0xb6b0371d in g_io_unix_dispatch (source=0xb5aee5d8,
    callback=0xb6d65450 <gdk_io_invoke>, user_data=0xb5a269e0)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 6
#16 0xb6acc718 in IA__g_main_context_dispatch (context=0x9e6a918)
---Type <return> to continue, or q <return> to quit---
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#17 0xb6acfdc3 in g_main_context_iterate (context=0x9e6a918, block=1,
    dispatch=1, self=0x9e6bec0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 110
timeout = 0
some_ready = 1
nfds = 10
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xae0ca70
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#18 0xb6ad02e2 in IA__g_main_loop_run (loop=0xb5a02a98)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0x9e6bec0
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#19 0xb6efe3a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0xb5a00668
loop = (GMainLoop *) 0xb5a02a98
#20 0xb771b10b in wxEventLoop::Run (this=0xb5a00668)
---Type <return> to continue, or q <return> to quit---
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#21 0xb77bf3dc in wxAppBase::MainLoop (this=0x9e6a7d0)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0xb5a00668}, m_pp = 0x9e6a810,
  m_pOld = 0x0}
#22 0xb77bf131 in wxAppBase::OnRun (this=0x6) at ../src/common/appcmn.cpp:367
No locals.
#23 0xb74b43fa in wxEntry (argc=@0xb75ac6cc, argv=0x9e58e38)
    at ../src/common/init.cpp:460
No locals.
#24 0xb74b44b7 in wxEntry (argc=@0xbfcc7260, argv=0xbfcc72e4)
    at ../src/common/init.cpp:472
No locals.
#25 0x082ac21d in main (argc=Cannot access memory at address 0xe05
) at ../../src/amule-gui.cpp:95
No locals.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 26, 2009, 10:34:42 PM
thread apply all bt full

Code: [Select]
Thread 5 (Thread 0xb45aeb90 (LWP 3606)):
#0  allocator (this=0xb45ae12f) at /usr/include/c++/4.3/bits/allocator.h:98
No locals.
#1  0x083e8562 in get_backtrace (n=1)
    at ../../../../src/libs/common/MuleDebug.cpp:327
bt_array = {0x83e84ab, 0x83e9d9f, 0xb73c7655, 0xb73c7692, 0xb73c77ca,
  0xb73c7e23, 0x83e3555, 0xb7529bb5, 0x8190990, 0x83e3a04, 0xb7528036,
  0xb752813d, 0xb7f8550f, 0xb725aa0e, 0xb45ae104, 0x0, 0xb45ae108, 0xb45ae130,
  0xb45addd8, 0xb45ae138, 0xb45ae134, 0xb45ae114, 0xb45ae13c, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xb45ae140, 0x83e9b8e, 0x86a340c, 0x0, 0x0,
  0x83e9ae0, 0x40000000, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xb45adfd4, 0x0,
  0xb45adfd8, 0xb45adfdc, 0x0, 0xb45adfe8, 0xb45adfe0, 0xb45adfe4, 0xb45adfec,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xb45adff0, 0xb72df5e5, 0x0,
  0x0, 0x0, 0xb72df430, 0x40000000, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0xbe85fe00, 0x4, 0xb73f3ff4, 0xbe85fe00, 0xb73fa8a4, 0xb45ae1a8, 0x83e9b8e,
  0xbe85fe00, 0xb45ae0e0, 0xb7fb42af, 0xb45ae0d0, 0x8052780, 0xb45ae0c4,
  0xb7fc77c4, 0x0, 0xb6744040, 0x5, 0x0, 0x1, 0x0, 0x0, 0x0}
bt_strings = (char **) 0xb17ae38
num_entries = 14
libname = {<std::__norm::vector<wxString, std::allocator<wxString> >> = {<std::__norm::_Vector_base<wxString, std::allocator<wxString> >> = {
      _M_impl = {<std::allocator<wxString>> = {<__gnu_cxx::new_allocator<wxStrin---Type <return> to continue, or q <return> to quit---
g>> = {<No data fields>}, <No data fields>}, _M_start = 0x0, _M_finish = 0x5,
        _M_end_of_storage = 0xb8e}}, <No data fields>}, <__gnu_debug::_Safe_sequence<std::__debug::vector<wxString, std::allocator<wxString> > >> = {<__gnu_debug::_Safe_sequence_base> = {_M_iterators = 0xb6744d50,
      _M_const_iterators = 0xb798cb00,
      _M_version = 3073535547}, <No data fields>},
  _M_guaranteed_capacity = 3073522812}
funcname = {<std::__norm::vector<wxString, std::allocator<wxString> >> = {<std::__norm::_Vector_base<wxString, std::allocator<wxString> >> = {
      _M_impl = {<std::allocator<wxString>> = {<__gnu_cxx::new_allocator<wxString>> = {<No data fields>}, <No data fields>}, _M_start = 0x31d027d,
        _M_finish = 0xb45ae110,
        _M_end_of_storage = 0xb7fc7668}}, <No data fields>}, <__gnu_debug::_Safe_sequence<std::__debug::vector<wxString, std::allocator<wxString> > >> = {<__gnu_debug::_Safe_sequence_base> = {_M_iterators = 0x808225f,
      _M_const_iterators = 0x0, _M_version = 0}, <No data fields>},
  _M_guaranteed_capacity = 0}
address = {<std::__norm::vector<wxString, std::allocator<wxString> >> = {<std::__norm::_Vector_base<wxString, std::allocator<wxString> >> = {
      _M_impl = {<std::allocator<wxString>> = {<__gnu_cxx::new_allocator<wxString>> = {<No data fields>}, <No data fields>}, _M_start = 0x0, _M_finish = 0x0,
        _M_end_of_storage = 0xb7fc2bbc}}, <No data fields>}, <__gnu_debug::_Safe_sequence<std::__debug::vector<wxString, std::allocator<wxString> > >> = {<__gnu---Type <return> to continue, or q <return> to quit---
_debug::_Safe_sequence_base> = {_M_iterators = 0xb45ae0d0,
      _M_const_iterators = 0xb45ae0c4,
      _M_version = 1671450557}, <No data fields>},
  _M_guaranteed_capacity = 3080243968}
AllAddresses = {<wxStringBase> = {static npos = 4294967295,
    m_pchData = 0xb73c6a7b}, <No data fields>}
out = {m_nSize = 3073515996, m_nCount = 1, m_pItems = 0xb7fc6ff4,
  m_autoSort = 189}
hasLineNumberInfo = 183
trace = {<wxStringBase> = {static npos = 4294967295,
    m_pchData = 0xb6744d50}, <No data fields>}
__FUNCTION__ = "get_backtrace"
#2  0x083e9d9f in OnUnhandledException ()
    at ../../../../src/libs/common/MuleDebug.cpp:101
status = 0
dem = 0xb15780e0 "\bw��P"
name = 0xb73d1c73 "St9bad_alloc"
t = (class std::type_info *) 0x86e5a6c
output = (FILE *) 0xb72d3560
#3  0xb73c7655 in __cxxabiv1::__terminate (
    handler=0x83e9ae0 <OnUnhandledException()>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
No locals.
---Type <return> to continue, or q <return> to quit---
#4  0xb73c7692 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
No locals.
#5  0xb73c77ca in __cxa_throw (obj=0xbe85fe20, tinfo=0x86e5a6c,
    dest=0xb73c7d00 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
header = <value optimized out>
#6  0xb73c7e23 in operator new (sz=36)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
handler = <value optimized out>
p = <value optimized out>
#7  0x083e3555 in CTimerEvent::Clone (this=0xb45ae2ec)
    at ../../src/Timer.cpp:158
No locals.
#8  0xb7529bb5 in wxEvtHandler::AddPendingEvent (this=0x9e6a7d0,
    event=@0xb45ae2ec) at ../src/common/event.cpp:1130
eventCopy = <value optimized out>
__FUNCTION__ = "AddPendingEvent"
#9  0x08190990 in wxPostEvent (dest=0x9e6a7d0, event=@0xb45ae2ec)
    at /usr/include/wx-2.8/wx/event.h:2565
__FUNCTION__ = "wxPostEvent"
#10 0x083e3a04 in CTimerThread::Entry (this=0xa6824c0)
    at ../../src/Timer.cpp:68
---Type <return> to continue, or q <return> to quit---
now = 1139345247
sinceLast = 0
timeout = 100
evt = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x85c7608,
      static ms_classInfo = {m_className = 0xb75591a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7a568cc, m_next = 0xb75ad8c4,
        static sm_classTable = 0x9e3d3e8}, m_refData = 0x0},
    m_eventObject = 0x0, m_eventType = 10244, m_timeStamp = 0, m_id = 6128,
    m_callbackUserData = 0x0, m_propagationLevel = 0, m_skipped = false,
    m_isCommandEvent = false, static ms_classInfo = {m_className = 0xb756a708,
      m_objectSize = 36, m_objectConstructor = 0, m_baseInfo1 = 0xb75ad858,
      m_baseInfo2 = 0x0, static sm_first = 0xb7a568cc, m_next = 0xb75ae908,
      static sm_classTable = 0x9e3d3e8}}, <No data fields>}
lastEvent = 1139345347
#11 0xb7528036 in wxThreadInternal::PthreadStart (thread=0xa6824c0)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0xa681738
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#12 0xb752813d in wxPthreadStart (ptr=0xa6824c0)
    at ../src/unix/threadpsx.cpp:718
---Type <return> to continue, or q <return> to quit---
No locals.
#13 0xb7f8550f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#14 0xb725aa0e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 3 (Thread 0xb55b0b90 (LWP 3604)):
#0  0xb7fc5430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7f8c906 in nanosleep () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0xb752f168 in wxMicroSleep (microseconds=0) at ../src/unix/utilsunx.cpp:191
tmReq = {tv_sec = 0, tv_nsec = 625000000}
#3  0xb752f191 in wxMilliSleep (milliseconds=625)
    at ../src/unix/utilsunx.cpp:212
No locals.
#4  0xb752541d in wxThread::Sleep (milliseconds=625)
    at ../src/unix/threadpsx.cpp:986
No locals.
#5  0x081fd133 in UploadBandwidthThrottler::Entry (this=0xa4e9200)
    at ../../src/UploadBandwidthThrottler.cpp:324
timeSinceLastLoop = 0
minFragSize = 1300
---Type <return> to continue, or q <return> to quit---
doubleSendSize = 2600
bytesToSpend = 250368
sleepTime = 625
thisLoopTick = 1139346047
TIME_BETWEEN_UPLOAD_LOOPS = 1
lastLoopTick = 1139346047
realBytesToSpend = 58368999
allowedDataRate = 1536000
rememberedSlotCounter = 83
extraSleepTime = 625
sendLock = {m_isOk = false, m_mutex = @0xb7f94ff4}
#6  0xb7528036 in wxThreadInternal::PthreadStart (thread=0xa4e9200)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0xa516358
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#7  0xb752813d in wxPthreadStart (ptr=0xa4e9200)
    at ../src/unix/threadpsx.cpp:718
No locals.
#8  0xb7f8550f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#9  0xb725aa0e in clone () from /lib/tls/i686/cmov/libc.so.6
---Type <return> to continue, or q <return> to quit---
No symbol table info available.

Thread 1 (Thread 0xb6741700 (LWP 3589)):
#0  0xb7fc5430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb71a48a0 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0xb71a6268 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0xb73c7655 in __cxxabiv1::__terminate (handler=0x808a378 <abort@plt>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
No locals.
#4  0xb73c7692 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
No locals.
#5  0xb73c77ca in __cxa_throw (obj=0xb73f68f0, tinfo=0x86e5a6c,
    dest=0xb73c7d00 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
header = <value optimized out>
#6  0xb73c7e23 in operator new (sz=24)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
handler = <value optimized out>
p = <value optimized out>
---Type <return> to continue, or q <return> to quit---
#7  0xb74ac556 in wxObjectList::CreateNode (this=0xa7e2be0, prev=0x4fff70,
    next=0x0, data=0x4fffb0, key=@0xb75ac750) at ../include/wx/list.h:1178
No locals.
#8  0xb74c1759 in wxListBase::Append (this=0xa7e2be0, object=0x4fffb0)
    at ../src/common/list.cpp:244
node = <value optimized out>
__FUNCTION__ = "Append"
#9  0xb7529be7 in wxEvtHandler::AddPendingEvent (this=0x86e80c0,
    event=@0xbfcc6ef0) at ../include/wx/list.h:1178
eventCopy = <value optimized out>
__FUNCTION__ = "AddPendingEvent"
#10 0xb75cdd58 in wxSocketBase::OnRequest (this=0xaef0450,
    notification=wxSOCKET_OUTPUT) at ../src/common/socket.cpp:1006
event = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x86e1488,
      static ms_classInfo = {m_className = 0xb75591a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7a568cc, m_next = 0xb75ad8c4,
        static sm_classTable = 0x9e3d3e8}, m_refData = 0x0},
    m_eventObject = 0xaef0450, m_eventType = 10002, m_timeStamp = 0,
    m_id = 6123, m_callbackUserData = 0x0, m_propagationLevel = 0,
    m_skipped = false, m_isCommandEvent = false, static ms_classInfo = {
      m_className = 0xb756a708, m_objectSize = 36, m_objectConstructor = 0,
      m_baseInfo1 = 0xb75ad858, m_baseInfo2 = 0x0,
---Type <return> to continue, or q <return> to quit---
      static sm_first = 0xb7a568cc, m_next = 0xb75ae908,
      static sm_classTable = 0x9e3d3e8}}, m_event = wxSOCKET_OUTPUT,
  m_clientData = 0x0, static ms_classInfo = {m_className = 0xb75d5008,
    m_objectSize = 44,
    m_objectConstructor = 0xb75cbe00 <wxSocketEvent::wxCreateObject()>,
    m_baseInfo1 = 0xb75ae920, m_baseInfo2 = 0x0, static sm_first = 0xb7a568cc,
    m_next = 0xb75de54c, static sm_classTable = 0x9e3d3e8}}
flag = <value optimized out>
#11 0xb75cde54 in wx_socket_callback (notification=GSOCK_OUTPUT,
    cdata=0xaef0450 "\b-M\b") at ../src/common/socket.cpp:942
No locals.
#12 0xb75d26bb in GSocket::Detected_Write (this=0xa9ea440)
    at ../src/unix/gsocket.cpp:1836
No locals.
#13 0xb771cbe7 in _GSocket_GDK_Input (data=0xa9ea440, source=97,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
No locals.
#14 0xb6d654af in gdk_io_invoke (source=0xb5abdad0,
    condition=<value optimized out>, data=0xb5a269e0)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = GDK_INPUT_WRITE
#15 0xb6b0371d in g_io_unix_dispatch (source=0xb5aee5d8,
    callback=0xb6d65450 <gdk_io_invoke>, user_data=0xb5a269e0)
---Type <return> to continue, or q <return> to quit---
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 6
#16 0xb6acc718 in IA__g_main_context_dispatch (context=0x9e6a918)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#17 0xb6acfdc3 in g_main_context_iterate (context=0x9e6a918, block=1,
    dispatch=1, self=0x9e6bec0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 110
timeout = 0
some_ready = 1
nfds = 10
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xae0ca70
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#18 0xb6ad02e2 in IA__g_main_loop_run (loop=0xb5a02a98)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0x9e6bec0
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#19 0xb6efe3a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
---Type <return> to continue, or q <return> to quit---
init = (GtkInitFunction *) 0xb5a00668
loop = (GMainLoop *) 0xb5a02a98
#20 0xb771b10b in wxEventLoop::Run (this=0xb5a00668)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#21 0xb77bf3dc in wxAppBase::MainLoop (this=0x9e6a7d0)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0xb5a00668}, m_pp = 0x9e6a810,
  m_pOld = 0x0}
#22 0xb77bf131 in wxAppBase::OnRun (this=0x6) at ../src/common/appcmn.cpp:367
No locals.
#23 0xb74b43fa in wxEntry (argc=@0xb75ac6cc, argv=0x9e58e38)
    at ../src/common/init.cpp:460
No locals.
#24 0xb74b44b7 in wxEntry (argc=@0xbfcc7260, argv=0xbfcc72e4)
    at ../src/common/init.cpp:472
No locals.
#25 0x082ac21d in main (argc=Cannot access memory at address 0xe05
) at ../../src/amule-gui.cpp:95
No locals.

$ free

Code: [Select]
             total       used         free        shared    buffers   cached
Mem:        3111840    2995664        116176         0      32608    1426584
-/+ buffers/cache:     1536472       1575368
Swap:       9100780    2803216       6297564

$ ps axl | grep amule
Code: [Select]
0  1000  3575  3554  20   0 208212 63244 poll   S+   pts/0      0:03 gdb amule
0  1000  3589  3575  20   0 3144528 1045644 ptrace Tl pts/0    55:34 /usr/bin/amule
0  1000 22213 20750  20   0   3240   808 pipe_w S+   pts/1      0:00 grep amule

Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on March 27, 2009, 02:47:50 AM
$ free

Code: [Select]
            total
Mem:        3111840

$ ps axl | grep amule
Code: [Select]
F  UID   PID   PPID PRI  NI VSZ     RSS     WCHAN  STAT TTY    TIME COMMAND
0  1000  3589  3575  20   0 3144528 1045644 ptrace Tl pts/0    55:34 /usr/bin/amule

Good job RRM. Look, amule VSZ is more than 3Gb! This for one is a memory leak, or maybe you have more work than your system can handle memory-wise?

I'm going to bed right now, I'll have a closer look in the next days. Any expert in memory debugging?

[Puzzling, some other of your crashes doesn't seem related]
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 27, 2009, 07:27:57 AM
Thank you Bill, you are very supportive.
This forum is amazing (the knowledge, the support).

Quote
amule VSZ is more than 3Gb!

So, should the virtual memory be lower, or should i buy more memory?
6GB would be enough?

Quote
some other of your crashes doesn't seem related

Couldnt it be that when it lacks memory, anything might go wrong?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on March 27, 2009, 02:23:15 PM
So, should the virtual memory be lower, or should i buy more memory?
6GB would be enough?
Don't buy more memory. It seems amule has a bug and it eating more memory than it should.

Unless you are in the realms of 10.000-100.000 simultaneous uploads?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 27, 2009, 04:58:21 PM
Thank you guys.
Quote
Unless you are in the realms of 10.000-100.000 simultaneous uploads?

he he, noooo  ;D
It happens beyond 200 simultaneous uploads,
particularly when combined with multiple downloads.

Probably its irrelevant to the problem you are referring to,
or you already know all this,
but i found this (http://kb.adobe.com/selfservice/viewContent.do?externalId=tn_17517): 
Quote
"Here is a checklist for possible causes for increased memory usage:

    * Check which MDAC version is being used. In many of the reported cases, the MDAC version 2.1.3711.11 contained a documented memory leak.
    * Examine ColdFusion query caching to make sure no differences appear.
    * Make sure that growing files, logs, or record sets are not being brought into memory, even if only for the duration of the request.
    * Check accumulating states in persistent scopes, including server, application, and session.
    * Operations on collections (e.g., CFSearch and CFIndex) can cause growth over time.
    * Keep in mind that operations needing large contiguous blocks of memory like CFFile or CFHTTP can take longer to plateau.
    * Homegrown CFX tags may be allocating memory and not properly freeing it up.
    * When running tests for memory usage, check for the existence of any application.cfm files located in the directory path that enable session, application, or server variables. These variables may add processing cycles or additional demand on memory, which may not be immediately apparent.
    * One of the most common causes are improperly locked access to session, application, and server variables. These variables are stored in memory and need to be enclosed in a CFLOCK tag with the appropriate SCOPE attribute specified (i.e. session, application, or server) when referenced.
    * When accessing client variables stored in an Oracle DB with the CFAS native driver for Oracle, see KB article 15885."

Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 27, 2009, 05:08:13 PM
Amule has not crashed today, because before going to work i had set maximum
connections to 100 (though even with so few connections amule sometimes
uploads 6 to 10 MB/s), so i get this:

$ ps axl | grep amule
Code: [Select]
F  UID   PID   PPID PRI  NI VSZ     RSS     WCHAN  STAT TTY    TIME COMMAND
0  1000 23494 23472  20   0 162652 90208 -      Rl+  pts/0    621:25 /usr/bin/am


and yet:

$ free
Code: [Select]
             total       used       free 
Mem:       3111840    3042400      69440

So, maybe there is an accumulation?
Or might it be that this is the result of using both
amule and torrents, because since i have to restrict amule activity lately,
i also up/download (about 20) torrents, 283 connections in total,
to utilize the bandwith amule doesnt use.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 28, 2009, 05:46:40 PM
And another crash:

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb6693700 (LWP 23494)]
0x0ad5f030 in ?? ()
(gdb) bt
Code: [Select]
#0  0x0ad5f030 in ?? ()
#1  0xb6cb74af in gdk_io_invoke (source=0xb24a0310,
    condition=<value optimized out>, data=0x3)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
#2  0xb6a5571d in g_io_unix_dispatch (source=0xb20eee48,
    callback=0xb6cb7450 <gdk_io_invoke>, user_data=0xb247d8e8)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
#3  0xb6a1e718 in IA__g_main_context_dispatch (context=0x9a88918)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
#4  0xb6a21dc3 in g_main_context_iterate (context=0x9a88918, block=1,
    dispatch=1, self=0x9a89ec0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
#5  0xb6a222e2 in IA__g_main_loop_run (loop=0xa27c748)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
#6  0xb6e503a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
#7  0xb766d10b in wxEventLoop::Run (this=0xa27d6c8)
    at ../src/gtk/evtloop.cpp:76
#8  0xb77113dc in wxAppBase::MainLoop (this=0x9a887d0)
    at ../src/common/appcmn.cpp:312
#9  0xb7711131 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
#10 0xb74063fa in wxEntry (argc=@0xb74fe6cc, argv=0x9a76e38)
    at ../src/common/init.cpp:460
---Type <return> to continue, or q <return> to quit---
#11 0xb74064b7 in wxEntry (argc=@0xbfa187b0, argv=0xbfa18834)
    at ../src/common/init.cpp:472
#12 0x082ac21d in main (argc=1, argv=0xb6a9b460) at ../../src/amule-gui.cpp:95
(gdb) bt full
Code: [Select]
#0  0x0ad5f030 in ?? ()
No symbol table info available.
#1  0xb6cb74af in gdk_io_invoke (source=0xb24a0310,
    condition=<value optimized out>, data=0x3)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = 184218312
#2  0xb6a5571d in g_io_unix_dispatch (source=0xb20eee48,
    callback=0xb6cb7450 <gdk_io_invoke>, user_data=0xb247d8e8)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 0
#3  0xb6a1e718 in IA__g_main_context_dispatch (context=0x9a88918)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#4  0xb6a21dc3 in g_main_context_iterate (context=0x9a88918, block=1,
    dispatch=1, self=0x9a89ec0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 2147483647
timeout = 15
some_ready = 1
nfds = 103
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xa86e6e0
__PRETTY_FUNCTION__ = "g_main_context_iterate"
---Type <return> to continue, or q <return> to quit---
#5  0xb6a222e2 in IA__g_main_loop_run (loop=0xa27c748)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0x9a89ec0
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#6  0xb6e503a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0xa27d6c8
loop = (GMainLoop *) 0xa27c748
#7  0xb766d10b in wxEventLoop::Run (this=0xa27d6c8)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#8  0xb77113dc in wxAppBase::MainLoop (this=0x9a887d0)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0xa27d6c8}, m_pp = 0x9a88810,
  m_pOld = 0x0}
#9  0xb7711131 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
No locals.
#10 0xb74063fa in wxEntry (argc=@0xb74fe6cc, argv=0x9a76e38)
    at ../src/common/init.cpp:460
No locals.
---Type <return> to continue, or q <return> to quit---
#11 0xb74064b7 in wxEntry (argc=@0xbfa187b0, argv=0xbfa18834)
    at ../src/common/init.cpp:472
No locals.
#12 0x082ac21d in main (argc=1, argv=0xb6a9b460) at ../../src/amule-gui.cpp:95
No locals.

Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 28, 2009, 05:48:54 PM
thread apply all bt full

Code: [Select]
Thread 5 (Thread 0xb450eb90 (LWP 23536)):
#0  0xb7f17430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7edb3a2 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
   from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0xb74776e1 in wxConditionInternal::WaitTimeout (this=0x9acc908,
    milliseconds=100) at ../src/unix/threadpsx.cpp:405
tspec = {tv_sec = 1238242285, tv_nsec = 404000000}
err = <value optimized out>
#3  0xb747776a in wxCondition::WaitTimeout (this=0x9ae827c, milliseconds=100)
    at ../include/wx/thrimpl.cpp:256
__FUNCTION__ = "WaitTimeout"
#4  0xb7479524 in wxSemaphoreInternal::WaitTimeout (this=0x9ae8278,
    milliseconds=100) at ../src/unix/threadpsx.cpp:552
remainingTime = -516
locker = {m_isOk = true, m_mutex = @0x9ae8278}
#5  0xb74795aa in wxSemaphore::WaitTimeout (this=0xa286860, milliseconds=100)
    at ../include/wx/thrimpl.cpp:320
__FUNCTION__ = "WaitTimeout"
#6  0x083e39d4 in CTimerThread::Entry (this=0xa286840)
    at ../../src/Timer.cpp:64
---Type <return> to continue, or q <return> to quit---
now = 1291704056
sinceLast = 0
timeout = 100
evt = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x85c7608,
      static ms_classInfo = {m_className = 0xb74ab1a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb79a88cc, m_next = 0xb74ff8c4,
        static sm_classTable = 0x9a5b3e8}, m_refData = 0x0},
    m_eventObject = 0x0, m_eventType = 10244, m_timeStamp = 0, m_id = 6128,
    m_callbackUserData = 0x0, m_propagationLevel = 0, m_skipped = false,
    m_isCommandEvent = false, static ms_classInfo = {m_className = 0xb74bc708,
      m_objectSize = 36, m_objectConstructor = 0, m_baseInfo1 = 0xb74ff858,
      m_baseInfo2 = 0x0, static sm_first = 0xb79a88cc, m_next = 0xb7500908,
      static sm_classTable = 0x9a5b3e8}}, <No data fields>}
lastEvent = 1291704056
#7  0xb747a036 in wxThreadInternal::PthreadStart (thread=0xa286840)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0x9ae8210
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#8  0xb747a13d in wxPthreadStart (ptr=0xa286840)
    at ../src/unix/threadpsx.cpp:718
---Type <return> to continue, or q <return> to quit---
No locals.
#9  0xb7ed750f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#10 0xb71aca0e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 3 (Thread 0xb5510b90 (LWP 23532)):
#0  0xb7f17430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7ede906 in nanosleep () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0xb7481168 in wxMicroSleep (microseconds=0) at ../src/unix/utilsunx.cpp:191
tmReq = {tv_sec = 0, tv_nsec = 4000000}
#3  0xb7481191 in wxMilliSleep (milliseconds=4) at ../src/unix/utilsunx.cpp:212
No locals.
#4  0xb747741d in wxThread::Sleep (milliseconds=4)
    at ../src/unix/threadpsx.cpp:986
No locals.
#5  0x081fd133 in UploadBandwidthThrottler::Entry (this=0xb591bd90)
    at ../../src/UploadBandwidthThrottler.cpp:324
timeSinceLastLoop = 1
minFragSize = 1300
doubleSendSize = 2600
---Type <return> to continue, or q <return> to quit---
bytesToSpend = 29680
sleepTime = 5
thisLoopTick = 1291704104
TIME_BETWEEN_UPLOAD_LOOPS = 1
lastLoopTick = 1291704104
realBytesToSpend = 23040999
allowedDataRate = 2048000
rememberedSlotCounter = 40
extraSleepTime = 5
sendLock = {m_isOk = false, m_mutex = @0xb7ee6ff4}
#6  0xb747a036 in wxThreadInternal::PthreadStart (thread=0xb591bd90)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0xb591bee0
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#7  0xb747a13d in wxPthreadStart (ptr=0xb591bd90)
    at ../src/unix/threadpsx.cpp:718
No locals.
#8  0xb7ed750f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#9  0xb71aca0e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
---Type <return> to continue, or q <return> to quit---

Thread 1 (Thread 0xb6693700 (LWP 23494)):
#0  0x0ad5f030 in ?? ()
No symbol table info available.
#1  0xb6cb74af in gdk_io_invoke (source=0xb24a0310,
    condition=<value optimized out>, data=0x3)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = 184218312
#2  0xb6a5571d in g_io_unix_dispatch (source=0xb20eee48,
    callback=0xb6cb7450 <gdk_io_invoke>, user_data=0xb247d8e8)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 0
#3  0xb6a1e718 in IA__g_main_context_dispatch (context=0x9a88918)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#4  0xb6a21dc3 in g_main_context_iterate (context=0x9a88918, block=1,
    dispatch=1, self=0x9a89ec0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 2147483647
timeout = 15
some_ready = 1
nfds = 103
allocated_nfds = <value optimized out>
---Type <return> to continue, or q <return> to quit---
fds = (GPollFD *) 0xa86e6e0
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#5  0xb6a222e2 in IA__g_main_loop_run (loop=0xa27c748)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0x9a89ec0
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#6  0xb6e503a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0xa27d6c8
loop = (GMainLoop *) 0xa27c748
#7  0xb766d10b in wxEventLoop::Run (this=0xa27d6c8)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#8  0xb77113dc in wxAppBase::MainLoop (this=0x9a887d0)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0xa27d6c8}, m_pp = 0x9a88810,
  m_pOld = 0x0}
#9  0xb7711131 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
No locals.
#10 0xb74063fa in wxEntry (argc=@0xb74fe6cc, argv=0x9a76e38)
---Type <return> to continue, or q <return> to quit---
    at ../src/common/init.cpp:460
No locals.
#11 0xb74064b7 in wxEntry (argc=@0xbfa187b0, argv=0xbfa18834)
    at ../src/common/init.cpp:472
No locals.
#12 0x082ac21d in main (argc=1, argv=0xb6a9b460) at ../../src/amule-gui.cpp:95
No locals.

$ free
Code: [Select]
             total       used       free     shared    buffers     cached
Mem:       3111840    3002768     109072          0      36264    2085076
-/+ buffers/cache:     881428    2230412
Swap:      9100780     429376    8671404

$ ps axl | grep amule
Code: [Select]
0  1000 23472 23445  20   0 203176 198464 poll  S+   pts/0      0:03 gdb amule
F  UID   PID   PPID PRI  NI VSZ     RSS     WCHAN  STAT TTY    TIME COMMAND
0  1000 23494 23472  20   0 187964 113600 ptrace Tl  pts/0    1383:58 /usr/bin/amule

So, even in the 'safe mode ' (only 100 connections), and with a relatively low
VSZ, amule crashes.
I guess its safe to say that with more connections, the memory leak is bigger as well.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 28, 2009, 08:22:55 PM
Im doing a little monitoring.
I restarted the computer and then checked available memory and VSZ
with time (Amule: 250 connections; Torrents: 16= 301 connections):

$ free
Code: [Select]
           total       used       free     
Mem:       3111840     496256    2615584   = right before starting up Amule
Mem:       3111840     859656    2252184   = 6 seconds after starting up Amule
Mem:       3111840     916388    2195452   = 8 seconds ,,,
Mem:       3111840     921388    2190452   = 10 secs ,,,
Mem:       3111840     932488    2179352   = 12 secs ,,,
Mem:       3111840    1296008    1815832   = 18 secs
Mem:       3111840    3022224      89616   = 29 secs
Mem:       3111840    3020048      91792   = 40 secs
Mem:       3111840    3019724      92116   = 11 minutes
Mem:       3111840    3025576      86264   = 47 min.
Mem:       3111840    3023116      88724   = 68 min.
Mem:       3111840    1926184    1185656   = 1 sec. after closing gdb amule

$ ps axl | grep amule
Code: [Select]
VSZ     RSS     WCHAN  STAT TTY    TIME COMMAND
110464 40604 poll   Sl+  pts/1      0:07 /usr/bin/amule
110772 40920 -      Rl+  pts/1      0:09 /usr/bin/amule
111420 41568 poll   Sl+  pts/1      0:11 /usr/bin/amule
112000 42688 poll   Sl+  pts/1      0:13 /usr/bin/amule
112912 43520 poll   Sl+  pts/1      0:19 /usr/bin/amule
114760 45216 poll   Sl+  pts/1      0:30 /usr/bin/amule
115980 46800 poll   Sl+  pts/1      0:41 /usr/bin/amule
118144 48960 poll   Sl+  pts/1      1:16 /usr/bin/amule
123260 53380 -      Sl+  pts/1      2:36 /usr/bin/amule
140240 69312 -      Rl+  pts/1     11:01 /usr/bin/amule
164044 92316 -      Rl+  pts/1     24:59 /usr/bin/amule
178380 107064 futex_ Sl+ pts/1     48:17 /usr/bin/amule
739292 668084 -     Sl+  pts/1     63:34 /usr/bin/amule
3138656 2384740 sync_p Dl+ pts/1   67:37 /usr/bin/amule
3144228 2220900 ptrace Tl pts/1    67:38 /usr/bin/amule

Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 28, 2009, 09:09:08 PM
Program received signal SIGABRT, Aborted.
[Switching to Thread 0xb67f5700 (LWP 6635)]
0xb8079430 in __kernel_vsyscall ()

bt
Code: [Select]
#0  0xb8079430 in __kernel_vsyscall ()
#1  0xb72588a0 in raise () from /lib/tls/i686/cmov/libc.so.6
#2  0xb725a268 in abort () from /lib/tls/i686/cmov/libc.so.6
#3  0xb747b655 in __cxxabiv1::__terminate (handler=0x808a378 <abort@plt>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
#4  0xb747b692 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
#5  0xb747b7ca in __cxa_throw (obj=0xb74aaaf0, tinfo=0x86e5a6c,
    dest=0xb747bd00 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
#6  0xb747be23 in operator new (sz=24)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
#7  0xb7560556 in wxObjectList::CreateNode (this=0x8ef76f8, prev=0x9b222b0,
    next=0x0, data=0x86e80c0, key=@0xb7660750) at ../include/wx/list.h:1178
#8  0xb7575759 in wxListBase::Append (this=0x8ef76f8, object=0x86e80c0)
    at ../src/common/list.cpp:244
#9  0xb75ddc26 in wxEvtHandler::AddPendingEvent (this=0x86e80c0,
    event=@0xbfa784a0) at ../include/wx/list.h:1178
#10 0xb7681d58 in wxSocketBase::OnRequest (this=0x9b8fa90,
    notification=wxSOCKET_OUTPUT) at ../src/common/socket.cpp:1006
#11 0xb7681e54 in wx_socket_callback (notification=GSOCK_OUTPUT,
    cdata=0x9b8fa90 "\b-M\b") at ../src/common/socket.cpp:942
#12 0xb76866bb in GSocket::Detected_Write (this=0x9a49538)
---Type <return> to continue, or q <return> to quit---
    at ../src/unix/gsocket.cpp:1836
#13 0xb77d0be7 in _GSocket_GDK_Input (data=0x9a49538, source=73,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
#14 0xb6e194af in gdk_io_invoke (source=0xb57303c0,
    condition=<value optimized out>, data=0xb5731150)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
#15 0xb6bb771d in g_io_unix_dispatch (source=0xb572faa0,
    callback=0xb6e19450 <gdk_io_invoke>, user_data=0xb5731150)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
#16 0xb6b80718 in IA__g_main_context_dispatch (context=0x8ecf918)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
#17 0xb6b83dc3 in g_main_context_iterate (context=0x8ecf918, block=1,
    dispatch=1, self=0x8ed0ec0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
#18 0xb6b842e2 in IA__g_main_loop_run (loop=0x919d610)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
#19 0xb6fb23a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
#20 0xb77cf10b in wxEventLoop::Run (this=0x96fbc68)
    at ../src/gtk/evtloop.cpp:76
#21 0xb78733dc in wxAppBase::MainLoop (this=0x8ecf7d0)
    at ../src/common/appcmn.cpp:312
#22 0xb7873131 in wxAppBase::OnRun (this=0x6) at ../src/common/appcmn.cpp:367
---Type <return> to continue, or q <return> to quit---
#23 0xb75683fa in wxEntry (argc=@0xb76606cc, argv=0x8ebde38)
    at ../src/common/init.cpp:460
#24 0xb75684b7 in wxEntry (argc=@0xbfa78810, argv=0xbfa78894)
    at ../src/common/init.cpp:472
#25 0x082ac21d in main (argc=Cannot access memory at address 0x19eb
) at ../../src/amule-gui.cpp:95

bt full
Code: [Select]
#0  0xb8079430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb72588a0 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0xb725a268 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0xb747b655 in __cxxabiv1::__terminate (handler=0x808a378 <abort@plt>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
No locals.
#4  0xb747b692 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
No locals.
#5  0xb747b7ca in __cxa_throw (obj=0xb74aaaf0, tinfo=0x86e5a6c,
    dest=0xb747bd00 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
header = <value optimized out>
#6  0xb747be23 in operator new (sz=24)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
handler = <value optimized out>
p = <value optimized out>
#7  0xb7560556 in wxObjectList::CreateNode (this=0x8ef76f8, prev=0x9b222b0,
    next=0x0, data=0x86e80c0, key=@0xb7660750) at ../include/wx/list.h:1178
No locals.
---Type <return> to continue, or q <return> to quit---
#8  0xb7575759 in wxListBase::Append (this=0x8ef76f8, object=0x86e80c0)
    at ../src/common/list.cpp:244
node = <value optimized out>
__FUNCTION__ = "Append"
#9  0xb75ddc26 in wxEvtHandler::AddPendingEvent (this=0x86e80c0,
    event=@0xbfa784a0) at ../include/wx/list.h:1178
eventCopy = <value optimized out>
__FUNCTION__ = "AddPendingEvent"
#10 0xb7681d58 in wxSocketBase::OnRequest (this=0x9b8fa90,
    notification=wxSOCKET_OUTPUT) at ../src/common/socket.cpp:1006
event = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x86e1488,
      static ms_classInfo = {m_className = 0xb760d1a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7b0a8cc, m_next = 0xb76618c4,
        static sm_classTable = 0x8ea23e8}, m_refData = 0x0},
    m_eventObject = 0x9b8fa90, m_eventType = 10002, m_timeStamp = 0,
    m_id = 6123, m_callbackUserData = 0x0, m_propagationLevel = 0,
    m_skipped = false, m_isCommandEvent = false, static ms_classInfo = {
      m_className = 0xb761e708, m_objectSize = 36, m_objectConstructor = 0,
      m_baseInfo1 = 0xb7661858, m_baseInfo2 = 0x0,
      static sm_first = 0xb7b0a8cc, m_next = 0xb7662908,
      static sm_classTable = 0x8ea23e8}}, m_event = wxSOCKET_OUTPUT,
  m_clientData = 0x0, static ms_classInfo = {m_className = 0xb7689008,
---Type <return> to continue, or q <return> to quit---
    m_objectSize = 44,
    m_objectConstructor = 0xb767fe00 <wxSocketEvent::wxCreateObject()>,
    m_baseInfo1 = 0xb7662920, m_baseInfo2 = 0x0, static sm_first = 0xb7b0a8cc,
    m_next = 0xb769254c, static sm_classTable = 0x8ea23e8}}
flag = <value optimized out>
#11 0xb7681e54 in wx_socket_callback (notification=GSOCK_OUTPUT,
    cdata=0x9b8fa90 "\b-M\b") at ../src/common/socket.cpp:942
No locals.
#12 0xb76866bb in GSocket::Detected_Write (this=0x9a49538)
    at ../src/unix/gsocket.cpp:1836
No locals.
#13 0xb77d0be7 in _GSocket_GDK_Input (data=0x9a49538, source=73,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
No locals.
#14 0xb6e194af in gdk_io_invoke (source=0xb57303c0,
    condition=<value optimized out>, data=0xb5731150)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = GDK_INPUT_WRITE
#15 0xb6bb771d in g_io_unix_dispatch (source=0xb572faa0,
    callback=0xb6e19450 <gdk_io_invoke>, user_data=0xb5731150)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 6
#16 0xb6b80718 in IA__g_main_context_dispatch (context=0x8ecf918)
---Type <return> to continue, or q <return> to quit---
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#17 0xb6b83dc3 in g_main_context_iterate (context=0x8ecf918, block=1,
    dispatch=1, self=0x8ed0ec0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 110
timeout = 0
some_ready = 1
nfds = 11
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xb1f6b378
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#18 0xb6b842e2 in IA__g_main_loop_run (loop=0x919d610)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0x8ed0ec0
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#19 0xb6fb23a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0x96fbc68
loop = (GMainLoop *) 0x919d610
#20 0xb77cf10b in wxEventLoop::Run (this=0x96fbc68)
---Type <return> to continue, or q <return> to quit---
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#21 0xb78733dc in wxAppBase::MainLoop (this=0x8ecf7d0)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0x96fbc68}, m_pp = 0x8ecf810,
  m_pOld = 0x0}
#22 0xb7873131 in wxAppBase::OnRun (this=0x6) at ../src/common/appcmn.cpp:367
No locals.
#23 0xb75683fa in wxEntry (argc=@0xb76606cc, argv=0x8ebde38)
    at ../src/common/init.cpp:460
No locals.
#24 0xb75684b7 in wxEntry (argc=@0xbfa78810, argv=0xbfa78894)
    at ../src/common/init.cpp:472
No locals.
#25 0x082ac21d in main (argc=Cannot access memory at address 0x19eb
) at ../../src/amule-gui.cpp:95
No locals.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 28, 2009, 09:14:54 PM
thread apply all bt full
Code: [Select]
Thread 5 (Thread 0xb4684b90 (LWP 6653)):
#0  0xb8079430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb72588a0 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0xb725a268 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0x083e9e51 in OnUnhandledException ()
    at ../../../../src/libs/common/MuleDebug.cpp:103
t = (class std::type_info *) 0x86e5a6c
output = (FILE *) 0xb7387560
#4  0xb747b655 in __cxxabiv1::__terminate (
    handler=0x83e9ae0 <OnUnhandledException()>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
No locals.
#5  0xb747b692 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
No locals.
#6  0xb747b7ca in __cxa_throw (obj=0xb74aa8f0, tinfo=0x86e5a6c,
    dest=0xb747bd00 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
header = <value optimized out>
---Type <return> to continue, or q <return> to quit---
#7  0xb747be23 in operator new (sz=36)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
handler = <value optimized out>
p = <value optimized out>
#8  0x083e3555 in CTimerEvent::Clone (this=0xb46842ec)
    at ../../src/Timer.cpp:158
No locals.
#9  0xb75ddbb5 in wxEvtHandler::AddPendingEvent (this=0x8ecf7d0,
    event=@0xb46842ec) at ../src/common/event.cpp:1130
eventCopy = <value optimized out>
__FUNCTION__ = "AddPendingEvent"
#10 0x08190990 in wxPostEvent (dest=0x8ecf7d0, event=@0xb46842ec)
    at /usr/include/wx-2.8/wx/event.h:2565
__FUNCTION__ = "wxPostEvent"
#11 0x083e3a04 in CTimerThread::Entry (this=0x919d5c0)
    at ../../src/Timer.cpp:68
now = 1320027760
sinceLast = 0
timeout = 100
evt = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x85c7608,
      static ms_classInfo = {m_className = 0xb760d1a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7b0a8cc, m_next = 0xb76618c4,
---Type <return> to continue, or q <return> to quit---
        static sm_classTable = 0x8ea23e8}, m_refData = 0x0},
    m_eventObject = 0x0, m_eventType = 10244, m_timeStamp = 0, m_id = 6128,
    m_callbackUserData = 0x0, m_propagationLevel = 0, m_skipped = false,
    m_isCommandEvent = false, static ms_classInfo = {m_className = 0xb761e708,
      m_objectSize = 36, m_objectConstructor = 0, m_baseInfo1 = 0xb7661858,
      m_baseInfo2 = 0x0, static sm_first = 0xb7b0a8cc, m_next = 0xb7662908,
      static sm_classTable = 0x8ea23e8}}, <No data fields>}
lastEvent = 1320027860
#12 0xb75dc036 in wxThreadInternal::PthreadStart (thread=0x919d5c0)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0x919d5e8
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#13 0xb75dc13d in wxPthreadStart (ptr=0x919d5c0)
    at ../src/unix/threadpsx.cpp:718
No locals.
#14 0xb803950f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#15 0xb730ea0e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 3 (Thread 0xb5686b90 (LWP 6651)):
---Type <return> to continue, or q <return> to quit---
#0  0xb8079430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb8040906 in nanosleep () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0xb75e3168 in wxMicroSleep (microseconds=0) at ../src/unix/utilsunx.cpp:191
tmReq = {tv_sec = 1, tv_nsec = 0}
#3  0xb75e3191 in wxMilliSleep (milliseconds=1000)
    at ../src/unix/utilsunx.cpp:212
No locals.
#4  0xb75d941d in wxThread::Sleep (milliseconds=1000)
    at ../src/unix/threadpsx.cpp:986
No locals.
#5  0x081fd133 in UploadBandwidthThrottler::Entry (this=0x9566bb8)
    at ../../src/UploadBandwidthThrottler.cpp:324
timeSinceLastLoop = 0
minFragSize = 1300
doubleSendSize = 2600
bytesToSpend = 2130432
sleepTime = 1000
thisLoopTick = 1320030875
TIME_BETWEEN_UPLOAD_LOOPS = 1
lastLoopTick = 1320030875
realBytesToSpend = 82432999
---Type <return> to continue, or q <return> to quit---
allowedDataRate = 2048000
rememberedSlotCounter = 84
extraSleepTime = 1000
sendLock = {m_isOk = false, m_mutex = @0x0}
#6  0xb75dc036 in wxThreadInternal::PthreadStart (thread=0x9566bb8)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0x957aa28
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#7  0xb75dc13d in wxPthreadStart (ptr=0x9566bb8)
    at ../src/unix/threadpsx.cpp:718
No locals.
#8  0xb803950f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#9  0xb730ea0e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 1 (Thread 0xb67f5700 (LWP 6635)):
#0  0xb8079430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb72588a0 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#2  0xb725a268 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0xb747b655 in __cxxabiv1::__terminate (handler=0x808a378 <abort@plt>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
No locals.
#4  0xb747b692 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
No locals.
#5  0xb747b7ca in __cxa_throw (obj=0xb74aaaf0, tinfo=0x86e5a6c,
    dest=0xb747bd00 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
header = <value optimized out>
#6  0xb747be23 in operator new (sz=24)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
handler = <value optimized out>
p = <value optimized out>
#7  0xb7560556 in wxObjectList::CreateNode (this=0x8ef76f8, prev=0x9b222b0,
    next=0x0, data=0x86e80c0, key=@0xb7660750) at ../include/wx/list.h:1178
No locals.
#8  0xb7575759 in wxListBase::Append (this=0x8ef76f8, object=0x86e80c0)
    at ../src/common/list.cpp:244
node = <value optimized out>
__FUNCTION__ = "Append"
---Type <return> to continue, or q <return> to quit---
#9  0xb75ddc26 in wxEvtHandler::AddPendingEvent (this=0x86e80c0,
    event=@0xbfa784a0) at ../include/wx/list.h:1178
eventCopy = <value optimized out>
__FUNCTION__ = "AddPendingEvent"
#10 0xb7681d58 in wxSocketBase::OnRequest (this=0x9b8fa90,
    notification=wxSOCKET_OUTPUT) at ../src/common/socket.cpp:1006
event = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x86e1488,
      static ms_classInfo = {m_className = 0xb760d1a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7b0a8cc, m_next = 0xb76618c4,
        static sm_classTable = 0x8ea23e8}, m_refData = 0x0},
    m_eventObject = 0x9b8fa90, m_eventType = 10002, m_timeStamp = 0,
    m_id = 6123, m_callbackUserData = 0x0, m_propagationLevel = 0,
    m_skipped = false, m_isCommandEvent = false, static ms_classInfo = {
      m_className = 0xb761e708, m_objectSize = 36, m_objectConstructor = 0,
      m_baseInfo1 = 0xb7661858, m_baseInfo2 = 0x0,
      static sm_first = 0xb7b0a8cc, m_next = 0xb7662908,
      static sm_classTable = 0x8ea23e8}}, m_event = wxSOCKET_OUTPUT,
  m_clientData = 0x0, static ms_classInfo = {m_className = 0xb7689008,
    m_objectSize = 44,
    m_objectConstructor = 0xb767fe00 <wxSocketEvent::wxCreateObject()>,
    m_baseInfo1 = 0xb7662920, m_baseInfo2 = 0x0, static sm_first = 0xb7b0a8cc,
    m_next = 0xb769254c, static sm_classTable = 0x8ea23e8}}
---Type <return> to continue, or q <return> to quit---
flag = <value optimized out>
#11 0xb7681e54 in wx_socket_callback (notification=GSOCK_OUTPUT,
    cdata=0x9b8fa90 "\b-M\b") at ../src/common/socket.cpp:942
No locals.
#12 0xb76866bb in GSocket::Detected_Write (this=0x9a49538)
    at ../src/unix/gsocket.cpp:1836
No locals.
#13 0xb77d0be7 in _GSocket_GDK_Input (data=0x9a49538, source=73,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
No locals.
#14 0xb6e194af in gdk_io_invoke (source=0xb57303c0,
    condition=<value optimized out>, data=0xb5731150)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = GDK_INPUT_WRITE
#15 0xb6bb771d in g_io_unix_dispatch (source=0xb572faa0,
    callback=0xb6e19450 <gdk_io_invoke>, user_data=0xb5731150)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 6
#16 0xb6b80718 in IA__g_main_context_dispatch (context=0x8ecf918)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#17 0xb6b83dc3 in g_main_context_iterate (context=0x8ecf918, block=1,
    dispatch=1, self=0x8ed0ec0)
---Type <return> to continue, or q <return> to quit---
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 110
timeout = 0
some_ready = 1
nfds = 11
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xb1f6b378
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#18 0xb6b842e2 in IA__g_main_loop_run (loop=0x919d610)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0x8ed0ec0
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#19 0xb6fb23a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0x96fbc68
loop = (GMainLoop *) 0x919d610
#20 0xb77cf10b in wxEventLoop::Run (this=0x96fbc68)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#21 0xb78733dc in wxAppBase::MainLoop (this=0x8ecf7d0)
---Type <return> to continue, or q <return> to quit---
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0x96fbc68}, m_pp = 0x8ecf810,
  m_pOld = 0x0}
#22 0xb7873131 in wxAppBase::OnRun (this=0x6) at ../src/common/appcmn.cpp:367
No locals.
#23 0xb75683fa in wxEntry (argc=@0xb76606cc, argv=0x8ebde38)
    at ../src/common/init.cpp:460
No locals.
#24 0xb75684b7 in wxEntry (argc=@0xbfa78810, argv=0xbfa78894)
    at ../src/common/init.cpp:472
No locals.
#25 0x082ac21d in main (argc=Cannot access memory at address 0x19eb
) at ../../src/amule-gui.cpp:95
No locals.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 29, 2009, 02:57:11 PM
No crash since last night (allowing only 80 Amule connections; torrents: 272 connections)
However, even now VSZ slowly but steadily grows:
ps axl | grep amule, with time
Code: [Select]
VSZ
133468 79096 sync_p Dl+  pts/0    497:10 /usr/bin/amule
138824 84292 poll   Sl+  pts/0    575:57 /usr/bin/amule
139072 84520 poll   Sl+  pts/0    589:16 /usr/bin/amule
140408 85756 poll   Sl+  pts/0    622:53 /usr/bin/amule
141416 86764 poll   Sl+  pts/0    648:21 /usr/bin/amule
149164 94596 -      Rl+  pts/0    857:55 /usr/bin/amule
157612 103428 poll  Sl+  pts/0    1165:56 /usr/bin/amule

So that eventually, amule will crash again.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on March 30, 2009, 06:18:06 PM
Im doing a little monitoring.
Good job RRM, thanks to your work it is clear what is going on. I'm working on a patch so we can check what internal structure of amule is wasting so much memory
Quote
I restarted the computer and then checked available memory and VSZ
with time (Amule: 250 connections; Torrents: 16= 301 connections):

$ free
Code: [Select]
           total       used       free     
Mem:       3111840     496256    2615584   = right before starting up Amule
....
Be careful, you have to check free output under +/- buffers sections (it is, not counting cache)
Quote
$ ps axl | grep amule
Code: [Select]
VSZ     RSS     WCHAN  STAT TTY    TIME COMMAND
....
164044 92316 -      Rl+  pts/1     24:59 /usr/bin/amule
178380 107064 futex_ Sl+ pts/1     48:17 /usr/bin/amule
739292 668084 -     Sl+  pts/1     63:34 /usr/bin/amule
3138656 2384740 sync_p Dl+ pts/1   67:37 /usr/bin/amule
3144228 2220900 ptrace Tl pts/1    67:38 /usr/bin/amule

  • VSZ is over 1GB right from the start...
    and gradually continues to grow.
    After the sudden increase in VSZ (about 55 - 60 min), Amule
    is frozen, but has not crashed yet.
    At 67 min. and 37 secs. Amule crashes.
  • Amule apparently keeps my system so busy that the bittorrent transmission client
    is still waiting to verify local data of some torrents 50 mins. after startup.

Note that you start with 100MiB of VSZ memory. This is a normal value. Then in min 60 amule start eating memory like crazy. Here is the bug. Now we should know where is amule throwing all the memory away.

What is your max clients in queue setting?

A side note about performance, Festor packages are compiled with debug in mind so they are lacking some important optimizations.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 30, 2009, 07:10:37 PM
Thank You,

Quote
I'm working on a patch so we can check what internal structure of amule is wasting so much memory

Wow, thats interesting!
Im looking forward to having it checking my amule...

Quote
Be careful, you have to check free output under +/- buffers sections

Ah, ok, thanks.  ;D

Quote
Note that you start with 100MiB of VSZ memory.

Ooops, yes, you are right; i misread that.
Right after starting up after another crash,
VSZ was even as low as 87280.

Quote
What is your max clients in queue setting?

5000. Shall i play with it to check whether it makes a difference?

Quote
A side note about performance, Festor packages are compiled with debug in mind so they are lacking some important optimizations.

Yes, I understood that our first priority is to be able to get to know whats going on.
If you cannot pinpoint the bug, you cannot fix it...
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 31, 2009, 09:46:54 AM
BTW, i guess its not always the oversized VSZ that makes my system crash,
because many times it crashes, the VSZ is just 170MB or so.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on March 31, 2009, 03:48:40 PM
BTW, i guess its not always the oversized VSZ that makes my system crash,
because many times it crashes, the VSZ is just 170MB or so.
Interesting. Could you post a backtrace of that situation?

The good backtraces we have from you show an out of memory condition. Make sure to check vsz after amule crashed and before exiting gdb.

Regards!

Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 31, 2009, 09:29:31 PM
Quote
Interesting. Could you post a backtrace of that situation?

I already did: reply 90 + 91 and reply 100 + 101 on page 7 (I initially misread that the VSZ was 1.9GB).
But i will also post the backtrace of the next crash with such a low VSZ

Quote
Make sure to check vsz after amule crashed and before exiting gdb.

Yes, i did that. Thank you.

Regards!
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 31, 2009, 10:35:10 PM
I also noticed that so far,
When VSZ is low, there's always a "SIGSEGV - segmentation fault" involved in the crash.
When VSZ is high, there's always a "signal SIGABRT; aborted" involved.
And in all the above cases combined, there's always "Switching to Thread ...." involved.

Ok, another crash, with low VSZ:

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb673e700 (LWP 28522)]
0xb6b46450 in g_io_watch_funcs () from /usr/lib/libglib-2.0.so.0

$ free
Code: [Select]
             total       used       free     shared    buffers     cached
Mem:       3111840    3038752      73088          0     709592    1377904
-/+ buffers/cache:     951256    2160584
Swap:      9100780     686880    8413900
$ ps axl | grep amule
Code: [Select]
0  1000 16084 15952  20   0   3236   796 pipe_w S+   pts/1      0:00 grep amule
0  1000 28358 28268  20   0 203536 198832 poll  S+   pts/0      0:03 gdb amule
0  1000 28522 28358  20   0 150676 96116 ptrace Tl   pts/0     85:15 /usr/bin/amule

(gdb) bt
Code: [Select]
#0  0xb6b46450 in g_io_watch_funcs () from /usr/lib/libglib-2.0.so.0
#1  0xb797007b in vtable for wxNotebookBase ()
   from /usr/lib/libwx_gtk2ud_core-2.8.so.0
#2  0xbfdc007b in ?? ()
#3  0xb7719be7 in _GSocket_GDK_Input (data=0xa850a88, source=41,
    condition=176491144) at ../src/gtk/gsockgtk.cpp:36
#4  0xb6d624af in gdk_io_invoke (source=0xaf240c8,
    condition=<value optimized out>, data=0xa845e68)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
#5  0xb6b0071d in g_io_unix_dispatch (source=0xaf24070,
    callback=0xb6d62450 <gdk_io_invoke>, user_data=0xa845e68)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
#6  0xb6ac9718 in IA__g_main_context_dispatch (context=0x9ee0918)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
#7  0xb6accdc3 in g_main_context_iterate (context=0x9ee0918, block=1,
    dispatch=1, self=0x9ee1ec0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
#8  0xb6acd2e2 in IA__g_main_loop_run (loop=0xa73a378)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
#9  0xb6efb3a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
#10 0xb771810b in wxEventLoop::Run (this=0xa739628)
    at ../src/gtk/evtloop.cpp:76
---Type <return> to continue, or q <return> to quit---
#11 0xb77bc3dc in wxAppBase::MainLoop (this=0x9ee07d0)
    at ../src/common/appcmn.cpp:312
#12 0xb77bc131 in wxAppBase::OnRun (this=0xb6b46440)
    at ../src/common/appcmn.cpp:367
#13 0xb74b13fa in wxEntry (argc=@0xb75a96cc, argv=0x9ecee38)
    at ../src/common/init.cpp:460
#14 0xb74b14b7 in wxEntry (argc=@0xbfdc4360, argv=0xbfdc43e4)
    at ../src/common/init.cpp:472
#15 0x082ac21d in main (argc=1, argv=0xb6b46460) at ../../src/amule-gui.cpp:95

(gdb) bt full
Code: [Select]
#0  0xb6b46450 in g_io_watch_funcs () from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#1  0xb797007b in vtable for wxNotebookBase ()
   from /usr/lib/libwx_gtk2ud_core-2.8.so.0
No symbol table info available.
#2  0xbfdc007b in ?? ()
No symbol table info available.
#3  0xb7719be7 in _GSocket_GDK_Input (data=0xa850a88, source=41,
    condition=176491144) at ../src/gtk/gsockgtk.cpp:36
No locals.
#4  0xb6d624af in gdk_io_invoke (source=0xaf240c8,
    condition=<value optimized out>, data=0xa845e68)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = GDK_INPUT_WRITE
#5  0xb6b0071d in g_io_unix_dispatch (source=0xaf24070,
    callback=0xb6d62450 <gdk_io_invoke>, user_data=0xa845e68)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 3065275456
#6  0xb6ac9718 in IA__g_main_context_dispatch (context=0x9ee0918)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#7  0xb6accdc3 in g_main_context_iterate (context=0x9ee0918, block=1,
    dispatch=1, self=0x9ee1ec0)
---Type <return> to continue, or q <return> to quit---
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 0
timeout = 0
some_ready = 1
nfds = 358
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xb2618178
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#8  0xb6acd2e2 in IA__g_main_loop_run (loop=0xa73a378)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0x9ee1ec0
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#9  0xb6efb3a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0xa739628
loop = (GMainLoop *) 0xa73a378
#10 0xb771810b in wxEventLoop::Run (this=0xa739628)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#11 0xb77bc3dc in wxAppBase::MainLoop (this=0x9ee07d0)
---Type <return> to continue, or q <return> to quit---
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0xa739628}, m_pp = 0x9ee0810,
  m_pOld = 0x0}
#12 0xb77bc131 in wxAppBase::OnRun (this=0xb6b46440)
    at ../src/common/appcmn.cpp:367
No locals.
#13 0xb74b13fa in wxEntry (argc=@0xb75a96cc, argv=0x9ecee38)
    at ../src/common/init.cpp:460
No locals.
#14 0xb74b14b7 in wxEntry (argc=@0xbfdc4360, argv=0xbfdc43e4)
    at ../src/common/init.cpp:472
No locals.
#15 0x082ac21d in main (argc=1, argv=0xb6b46460) at ../../src/amule-gui.cpp:95
No locals.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 31, 2009, 10:35:42 PM
(gdb) thread apply all bt full
Code: [Select]
Thread 5 (Thread 0xb45aeb90 (LWP 28604)):
#0  0xb7fc2430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7f863a2 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
   from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0xb75226e1 in wxConditionInternal::WaitTimeout (this=0xa739d70,
    milliseconds=100) at ../src/unix/threadpsx.cpp:405
tspec = {tv_sec = 1238530244, tv_nsec = 814000000}
err = <value optimized out>
#3  0xb752276a in wxCondition::WaitTimeout (this=0xa739d3c, milliseconds=100)
    at ../include/wx/thrimpl.cpp:256
__FUNCTION__ = "WaitTimeout"
#4  0xb7524524 in wxSemaphoreInternal::WaitTimeout (this=0xa739d38,
    milliseconds=100) at ../src/unix/threadpsx.cpp:552
remainingTime = -516
locker = {m_isOk = true, m_mutex = @0xa739d38}
#5  0xb75245aa in wxSemaphore::WaitTimeout (this=0xa73a228, milliseconds=100)
    at ../include/wx/thrimpl.cpp:320
__FUNCTION__ = "WaitTimeout"
#6  0x083e39d4 in CTimerThread::Entry (this=0xa73a208)
    at ../../src/Timer.cpp:64
---Type <return> to continue, or q <return> to quit---
now = 1579663466
sinceLast = 0
timeout = 100
evt = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x85c7608,
      static ms_classInfo = {m_className = 0xb75561a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7a538cc, m_next = 0xb75aa8c4,
        static sm_classTable = 0x9eb33e8}, m_refData = 0x0},
    m_eventObject = 0x0, m_eventType = 10244, m_timeStamp = 0, m_id = 6128,
    m_callbackUserData = 0x0, m_propagationLevel = 0, m_skipped = false,
    m_isCommandEvent = false, static ms_classInfo = {m_className = 0xb7567708,
      m_objectSize = 36, m_objectConstructor = 0, m_baseInfo1 = 0xb75aa858,
      m_baseInfo2 = 0x0, static sm_first = 0xb7a538cc, m_next = 0xb75ab908,
      static sm_classTable = 0x9eb33e8}}, <No data fields>}
lastEvent = 1579663466
#7  0xb7525036 in wxThreadInternal::PthreadStart (thread=0xa73a208)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0xa73a230
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#8  0xb752513d in wxPthreadStart (ptr=0xa73a208)
    at ../src/unix/threadpsx.cpp:718
---Type <return> to continue, or q <return> to quit---
No locals.
#9  0xb7f8250f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#10 0xb7257a0e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 3 (Thread 0xb55b0b90 (LWP 28602)):
#0  0xb7fc2430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7f89906 in nanosleep () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0xb752c168 in wxMicroSleep (microseconds=0) at ../src/unix/utilsunx.cpp:191
tmReq = {tv_sec = 0, tv_nsec = 20000000}
#3  0xb752c191 in wxMilliSleep (milliseconds=20)
    at ../src/unix/utilsunx.cpp:212
No locals.
#4  0xb752241d in wxThread::Sleep (milliseconds=20)
    at ../src/unix/threadpsx.cpp:986
No locals.
#5  0x081fd133 in UploadBandwidthThrottler::Entry (this=0xa590900)
    at ../../src/UploadBandwidthThrottler.cpp:324
timeSinceLastLoop = 5
minFragSize = 1300
---Type <return> to continue, or q <return> to quit---
doubleSendSize = 2600
bytesToSpend = 127622
sleepTime = 25
thisLoopTick = 1579663493
TIME_BETWEEN_UPLOAD_LOOPS = 1
lastLoopTick = 1579663493
realBytesToSpend = 87552999
allowedDataRate = 5724160
rememberedSlotCounter = 1
extraSleepTime = 25
sendLock = {m_isOk = false, m_mutex = @0xb7f91ff4}
#6  0xb7525036 in wxThreadInternal::PthreadStart (thread=0xa590900)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0xa57e450
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#7  0xb752513d in wxPthreadStart (ptr=0xa590900)
    at ../src/unix/threadpsx.cpp:718
No locals.
#8  0xb7f8250f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#9  0xb7257a0e in clone () from /lib/tls/i686/cmov/libc.so.6
---Type <return> to continue, or q <return> to quit---
No symbol table info available.

Thread 1 (Thread 0xb673e700 (LWP 28522)):
#0  0xb6b46450 in g_io_watch_funcs () from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#1  0xb797007b in vtable for wxNotebookBase ()
   from /usr/lib/libwx_gtk2ud_core-2.8.so.0
No symbol table info available.
#2  0xbfdc007b in ?? ()
No symbol table info available.
#3  0xb7719be7 in _GSocket_GDK_Input (data=0xa850a88, source=41,
    condition=176491144) at ../src/gtk/gsockgtk.cpp:36
No locals.
#4  0xb6d624af in gdk_io_invoke (source=0xaf240c8,
    condition=<value optimized out>, data=0xa845e68)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = GDK_INPUT_WRITE
#5  0xb6b0071d in g_io_unix_dispatch (source=0xaf24070,
    callback=0xb6d62450 <gdk_io_invoke>, user_data=0xa845e68)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 3065275456
#6  0xb6ac9718 in IA__g_main_context_dispatch (context=0x9ee0918)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
---Type <return> to continue, or q <return> to quit---
No locals.
#7  0xb6accdc3 in g_main_context_iterate (context=0x9ee0918, block=1,
    dispatch=1, self=0x9ee1ec0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 0
timeout = 0
some_ready = 1
nfds = 358
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xb2618178
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#8  0xb6acd2e2 in IA__g_main_loop_run (loop=0xa73a378)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0x9ee1ec0
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#9  0xb6efb3a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0xa739628
loop = (GMainLoop *) 0xa73a378
#10 0xb771810b in wxEventLoop::Run (this=0xa739628)
    at ../src/gtk/evtloop.cpp:76
---Type <return> to continue, or q <return> to quit---
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#11 0xb77bc3dc in wxAppBase::MainLoop (this=0x9ee07d0)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0xa739628}, m_pp = 0x9ee0810,
  m_pOld = 0x0}
#12 0xb77bc131 in wxAppBase::OnRun (this=0xb6b46440)
    at ../src/common/appcmn.cpp:367
No locals.
#13 0xb74b13fa in wxEntry (argc=@0xb75a96cc, argv=0x9ecee38)
    at ../src/common/init.cpp:460
No locals.
#14 0xb74b14b7 in wxEntry (argc=@0xbfdc4360, argv=0xbfdc43e4)
    at ../src/common/init.cpp:472
No locals.
#15 0x082ac21d in main (argc=1, argv=0xb6b46460) at ../../src/amule-gui.cpp:95
No locals.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 31, 2009, 11:01:42 PM
This is weird; i never before had a crash immediately (22 secs!) followed by another crash:

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb6743700 (LWP 22265)]
0xb771ebe4 in _GSocket_GDK_Input (data=0x9f450b8, source=53,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
36   ../src/gtk/gsockgtk.cpp: No such file or directory.
   in ../src/gtk/gsockgtk.cpp

$ free
Code: [Select]
             total       used       free     shared    buffers     cached
Mem:       3111840    3011164     100676          0     660212    1472388
-/+ buffers/cache:     878564    2233276
Swap:      9100780     696368    8404412
$ ps axl | grep amule
Code: [Select]
0  1000 22239 22193  20   0 203536 198836 poll  S+   pts/0      0:02 gdb amule
0  1000 22265 22239  20   0  95520 42008 ptrace Tl   pts/0      0:22 /usr/bin/amule
0  1000 24448 24265  20   0   3236   796 pipe_w S+   pts/1      0:00 grep amule

(gdb) bt
Code: [Select]
#0  0xb771ebe4 in _GSocket_GDK_Input (data=0x9f450b8, source=53,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
#1  0xb6d674af in gdk_io_invoke (source=0xb5a2cfe0,
    condition=<value optimized out>, data=0xb5a2e1b0)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
#2  0xb6b0571d in g_io_unix_dispatch (source=0xb5a2d918,
    callback=0xb6d67450 <gdk_io_invoke>, user_data=0xb5a2e1b0)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
#3  0xb6ace718 in IA__g_main_context_dispatch (context=0x942f918)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
#4  0xb6ad1dc3 in g_main_context_iterate (context=0x942f918, block=1,
    dispatch=1, self=0x9430ec0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
#5  0xb6ad22e2 in IA__g_main_loop_run (loop=0x996e780)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
#6  0xb6f003a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
#7  0xb771d10b in wxEventLoop::Run (this=0x9c5d6c0)
    at ../src/gtk/evtloop.cpp:76
#8  0xb77c13dc in wxAppBase::MainLoop (this=0x942f7d0)
    at ../src/common/appcmn.cpp:312
#9  0xb77c1131 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
#10 0xb74b63fa in wxEntry (argc=@0xb75ae6cc, argv=0x941de38)
---Type <return> to continue, or q <return> to quit---
    at ../src/common/init.cpp:460
#11 0xb74b64b7 in wxEntry (argc=@0xbfec7460, argv=0xbfec74e4)
    at ../src/common/init.cpp:472
#12 0x082ac21d in main (argc=1, argv=0xb6b4b460) at ../../src/amule-gui.cpp:95

(gdb) bt full
Code: [Select]
#0  0xb771ebe4 in _GSocket_GDK_Input (data=0x9f450b8, source=53,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
No locals.
#1  0xb6d674af in gdk_io_invoke (source=0xb5a2cfe0,
    condition=<value optimized out>, data=0xb5a2e1b0)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = GDK_INPUT_WRITE
#2  0xb6b0571d in g_io_unix_dispatch (source=0xb5a2d918,
    callback=0xb6d67450 <gdk_io_invoke>, user_data=0xb5a2e1b0)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 0
#3  0xb6ace718 in IA__g_main_context_dispatch (context=0x942f918)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#4  0xb6ad1dc3 in g_main_context_iterate (context=0x942f918, block=1,
    dispatch=1, self=0x9430ec0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 2147483647
timeout = 8
some_ready = 1
nfds = 71
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xa0f0b38
---Type <return> to continue, or q <return> to quit---
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#5  0xb6ad22e2 in IA__g_main_loop_run (loop=0x996e780)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0x9430ec0
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#6  0xb6f003a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0x9c5d6c0
loop = (GMainLoop *) 0x996e780
#7  0xb771d10b in wxEventLoop::Run (this=0x9c5d6c0)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#8  0xb77c13dc in wxAppBase::MainLoop (this=0x942f7d0)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0x9c5d6c0}, m_pp = 0x942f810,
  m_pOld = 0x0}
#9  0xb77c1131 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
No locals.
#10 0xb74b63fa in wxEntry (argc=@0xb75ae6cc, argv=0x941de38)
    at ../src/common/init.cpp:460
---Type <return> to continue, or q <return> to quit---
No locals.
#11 0xb74b64b7 in wxEntry (argc=@0xbfec7460, argv=0xbfec74e4)
    at ../src/common/init.cpp:472
No locals.
#12 0x082ac21d in main (argc=1, argv=0xb6b4b460) at ../../src/amule-gui.cpp:95
No locals.


Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 31, 2009, 11:02:33 PM
(gdb) thread apply all bt full
Code: [Select]
Thread 5 (Thread 0xb45bfb90 (LWP 22301)):
#0  0xb7fc7430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7f8b3a2 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
   from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0xb75276e1 in wxConditionInternal::WaitTimeout (this=0x949deb0,
    milliseconds=100) at ../src/unix/threadpsx.cpp:405
tspec = {tv_sec = 1238532886, tv_nsec = 170000000}
err = <value optimized out>
#3  0xb752776a in wxCondition::WaitTimeout (this=0x95ba91c, milliseconds=100)
    at ../include/wx/thrimpl.cpp:256
__FUNCTION__ = "WaitTimeout"
#4  0xb7529524 in wxSemaphoreInternal::WaitTimeout (this=0x95ba918,
    milliseconds=100) at ../src/unix/threadpsx.cpp:552
remainingTime = -516
locker = {m_isOk = true, m_mutex = @0x95ba918}
#5  0xb75295aa in wxSemaphore::WaitTimeout (this=0x9c880b0, milliseconds=100)
    at ../include/wx/thrimpl.cpp:320
__FUNCTION__ = "WaitTimeout"
#6  0x083e39d4 in CTimerThread::Entry (this=0x9c88090)
    at ../../src/Timer.cpp:64
---Type <return> to continue, or q <return> to quit---
now = 1582304822
sinceLast = 0
timeout = 100
evt = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x85c7608,
      static ms_classInfo = {m_className = 0xb755b1a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7a588cc, m_next = 0xb75af8c4,
        static sm_classTable = 0x94023e8}, m_refData = 0x0},
    m_eventObject = 0x0, m_eventType = 10244, m_timeStamp = 0, m_id = 6128,
    m_callbackUserData = 0x0, m_propagationLevel = 0, m_skipped = false,
    m_isCommandEvent = false, static ms_classInfo = {m_className = 0xb756c708,
      m_objectSize = 36, m_objectConstructor = 0, m_baseInfo1 = 0xb75af858,
      m_baseInfo2 = 0x0, static sm_first = 0xb7a588cc, m_next = 0xb75b0908,
      static sm_classTable = 0x94023e8}}, <No data fields>}
lastEvent = 1582304822
#7  0xb752a036 in wxThreadInternal::PthreadStart (thread=0x9c88090)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0x95ba8d0
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#8  0xb752a13d in wxPthreadStart (ptr=0x9c88090)
    at ../src/unix/threadpsx.cpp:718
---Type <return> to continue, or q <return> to quit---
No locals.
#9  0xb7f8750f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#10 0xb725ca0e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 3 (Thread 0xb55c1b90 (LWP 22279)):
#0  0xb7fc7430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7f8e906 in nanosleep () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0xb7531168 in wxMicroSleep (microseconds=0) at ../src/unix/utilsunx.cpp:191
tmReq = {tv_sec = 0, tv_nsec = 24000000}
#3  0xb7531191 in wxMilliSleep (milliseconds=24)
    at ../src/unix/utilsunx.cpp:212
No locals.
#4  0xb752741d in wxThread::Sleep (milliseconds=24)
    at ../src/unix/threadpsx.cpp:986
No locals.
#5  0x081fd133 in UploadBandwidthThrottler::Entry (this=0x9af2aa0)
    at ../../src/UploadBandwidthThrottler.cpp:324
timeSinceLastLoop = 1
minFragSize = 1300
---Type <return> to continue, or q <return> to quit---
doubleSendSize = 2600
bytesToSpend = 39373
sleepTime = 25
thisLoopTick = 1582304871
TIME_BETWEEN_UPLOAD_LOOPS = 1
lastLoopTick = 1582304871
realBytesToSpend = 10752999
allowedDataRate = 5724160
rememberedSlotCounter = 1
extraSleepTime = 25
sendLock = {m_isOk = false, m_mutex = @0x0}
#6  0xb752a036 in wxThreadInternal::PthreadStart (thread=0x9af2aa0)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0x9accbb0
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#7  0xb752a13d in wxPthreadStart (ptr=0x9af2aa0)
    at ../src/unix/threadpsx.cpp:718
No locals.
#8  0xb7f8750f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#9  0xb725ca0e in clone () from /lib/tls/i686/cmov/libc.so.6
---Type <return> to continue, or q <return> to quit---
No symbol table info available.

Thread 1 (Thread 0xb6743700 (LWP 22265)):
#0  0xb771ebe4 in _GSocket_GDK_Input (data=0x9f450b8, source=53,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
No locals.
#1  0xb6d674af in gdk_io_invoke (source=0xb5a2cfe0,
    condition=<value optimized out>, data=0xb5a2e1b0)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = GDK_INPUT_WRITE
#2  0xb6b0571d in g_io_unix_dispatch (source=0xb5a2d918,
    callback=0xb6d67450 <gdk_io_invoke>, user_data=0xb5a2e1b0)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 0
#3  0xb6ace718 in IA__g_main_context_dispatch (context=0x942f918)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#4  0xb6ad1dc3 in g_main_context_iterate (context=0x942f918, block=1,
    dispatch=1, self=0x9430ec0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 2147483647
timeout = 8
some_ready = 1
---Type <return> to continue, or q <return> to quit---
nfds = 71
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xa0f0b38
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#5  0xb6ad22e2 in IA__g_main_loop_run (loop=0x996e780)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0x9430ec0
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#6  0xb6f003a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0x9c5d6c0
loop = (GMainLoop *) 0x996e780
#7  0xb771d10b in wxEventLoop::Run (this=0x9c5d6c0)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#8  0xb77c13dc in wxAppBase::MainLoop (this=0x942f7d0)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0x9c5d6c0}, m_pp = 0x942f810,
  m_pOld = 0x0}
#9  0xb77c1131 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
---Type <return> to continue, or q <return> to quit---
No locals.
#10 0xb74b63fa in wxEntry (argc=@0xb75ae6cc, argv=0x941de38)
    at ../src/common/init.cpp:460
No locals.
#11 0xb74b64b7 in wxEntry (argc=@0xbfec7460, argv=0xbfec74e4)
    at ../src/common/init.cpp:472
No locals.
#12 0x082ac21d in main (argc=1, argv=0xb6b4b460) at ../../src/amule-gui.cpp:95
No locals.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 01, 2009, 01:16:25 PM
Another low VSZ crash with:

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb667a700 (LWP 26904)]
0xb7655be4 in _GSocket_GDK_Input (data=0xb223f1f0, source=75,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
36   ../src/gtk/gsockgtk.cpp: No such file or directory.
   in ../src/gtk/gsockgtk.cpp

(gdb) bt
Code: [Select]
#0  0xb7655be4 in _GSocket_GDK_Input (data=0xb223f1f0, source=75,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
#1  0xb6c9e4af in gdk_io_invoke (source=0xd410b20,
    condition=<value optimized out>, data=0xd7a21d0)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
#2  0xb6a3c71d in g_io_unix_dispatch (source=0xd410b68,
    callback=0xb6c9e450 <gdk_io_invoke>, user_data=0xd7a21d0)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
#3  0xb6a05718 in IA__g_main_context_dispatch (context=0x953a918)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
#4  0xb6a08dc3 in g_main_context_iterate (context=0x953a918, block=1,
    dispatch=1, self=0x953bec0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
#5  0xb6a092e2 in IA__g_main_loop_run (loop=0x9562aa0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
#6  0xb6e373a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
#7  0xb765410b in wxEventLoop::Run (this=0x9562930)
    at ../src/gtk/evtloop.cpp:76
#8  0xb76f83dc in wxAppBase::MainLoop (this=0x953a7d0)
    at ../src/common/appcmn.cpp:312
#9  0xb76f8131 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
#10 0xb73ed3fa in wxEntry (argc=@0xb74e56cc, argv=0x9528e38)
---Type <return> to continue, or q <return> to quit---
    at ../src/common/init.cpp:460
#11 0xb73ed4b7 in wxEntry (argc=@0xbfc00190, argv=0xbfc00214)
    at ../src/common/init.cpp:472
#12 0x082ac21d in main (argc=1, argv=0xb6a82460) at ../../src/amule-gui.cpp:95
(gdb) bt full
Code: [Select]
#0  0xb7655be4 in _GSocket_GDK_Input (data=0xb223f1f0, source=75,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
No locals.
#1  0xb6c9e4af in gdk_io_invoke (source=0xd410b20,
    condition=<value optimized out>, data=0xd7a21d0)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = GDK_INPUT_WRITE
#2  0xb6a3c71d in g_io_unix_dispatch (source=0xd410b68,
    callback=0xb6c9e450 <gdk_io_invoke>, user_data=0xd7a21d0)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 0
#3  0xb6a05718 in IA__g_main_context_dispatch (context=0x953a918)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#4  0xb6a08dc3 in g_main_context_iterate (context=0x953a918, block=1,
    dispatch=1, self=0x953bec0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 2147483647
timeout = 17
some_ready = 1
nfds = 373
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xb2be1018
---Type <return> to continue, or q <return> to quit---
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#5  0xb6a092e2 in IA__g_main_loop_run (loop=0x9562aa0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0x953bec0
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#6  0xb6e373a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0x9562930
loop = (GMainLoop *) 0x9562aa0
#7  0xb765410b in wxEventLoop::Run (this=0x9562930)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#8  0xb76f83dc in wxAppBase::MainLoop (this=0x953a7d0)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0x9562930}, m_pp = 0x953a810,
  m_pOld = 0x0}
#9  0xb76f8131 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
No locals.
#10 0xb73ed3fa in wxEntry (argc=@0xb74e56cc, argv=0x9528e38)
    at ../src/common/init.cpp:460
---Type <return> to continue, or q <return> to quit---
No locals.
#11 0xb73ed4b7 in wxEntry (argc=@0xbfc00190, argv=0xbfc00214)
    at ../src/common/init.cpp:472
No locals.
#12 0x082ac21d in main (argc=1, argv=0xb6a82460) at ../../src/amule-gui.cpp:95
No locals.

$ ps axl | grep amule
Code: [Select]
0  1000  6368 14422  20   0   1884   300 sync_p D+   pts/1      0:00 grep amule
0  1000 26886 26845  20   0 189400 184724 poll  S+   pts/0      0:02 gdb amule
0  1000 26904 26886  20   0 198812 143052 ptrace Tl  pts/0    447:55 /usr/bin/amule
$ free
Code: [Select]
             total       used       free     shared    buffers     cached
Mem:       3111840    3000672     111168          0     118588    1738460
-/+ buffers/cache:    1143624    1968216
Swap:      9100780     692800    8407980
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 01, 2009, 01:18:43 PM
(gdb) thread apply all bt full
Code: [Select]
Thread 5 (Thread 0xb44f5b90 (LWP 26933)):
#0  0xb7efe430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7ec23a2 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
   from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0xb745e6e1 in wxConditionInternal::WaitTimeout (this=0x959a240,
    milliseconds=100) at ../src/unix/threadpsx.cpp:405
tspec = {tv_sec = 1238582286, tv_nsec = 590000000}
err = <value optimized out>
#3  0xb745e76a in wxCondition::WaitTimeout (this=0x95a8ee4, milliseconds=100)
    at ../include/wx/thrimpl.cpp:256
__FUNCTION__ = "WaitTimeout"
#4  0xb7460524 in wxSemaphoreInternal::WaitTimeout (this=0x95a8ee0,
    milliseconds=100) at ../src/unix/threadpsx.cpp:552
remainingTime = -516
locker = {m_isOk = true, m_mutex = @0x95a8ee0}
#5  0xb74605aa in wxSemaphore::WaitTimeout (this=0x96c59d8, milliseconds=100)
    at ../include/wx/thrimpl.cpp:320
__FUNCTION__ = "WaitTimeout"
#6  0x083e39d4 in CTimerThread::Entry (this=0x96c59b8)
    at ../../src/Timer.cpp:64
---Type <return> to continue, or q <return> to quit---
now = 1631705242
sinceLast = 0
timeout = 100
evt = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x85c7608,
      static ms_classInfo = {m_className = 0xb74921a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb798f8cc, m_next = 0xb74e68c4,
        static sm_classTable = 0x950d3e8}, m_refData = 0x0},
    m_eventObject = 0x0, m_eventType = 10244, m_timeStamp = 0, m_id = 6128,
    m_callbackUserData = 0x0, m_propagationLevel = 0, m_skipped = false,
    m_isCommandEvent = false, static ms_classInfo = {m_className = 0xb74a3708,
      m_objectSize = 36, m_objectConstructor = 0, m_baseInfo1 = 0xb74e6858,
      m_baseInfo2 = 0x0, static sm_first = 0xb798f8cc, m_next = 0xb74e7908,
      static sm_classTable = 0x950d3e8}}, <No data fields>}
lastEvent = 1631705242
#7  0xb7461036 in wxThreadInternal::PthreadStart (thread=0x96c59b8)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0x956c108
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#8  0xb746113d in wxPthreadStart (ptr=0x96c59b8)
    at ../src/unix/threadpsx.cpp:718
---Type <return> to continue, or q <return> to quit---
No locals.
#9  0xb7ebe50f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#10 0xb7193a0e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 3 (Thread 0xb54f7b90 (LWP 26930)):
#0  0xb7efe430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7ec5906 in nanosleep () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0xb7468168 in wxMicroSleep (microseconds=0) at ../src/unix/utilsunx.cpp:191
tmReq = {tv_sec = 0, tv_nsec = 18000000}
#3  0xb7468191 in wxMilliSleep (milliseconds=18)
    at ../src/unix/utilsunx.cpp:212
No locals.
#4  0xb745e41d in wxThread::Sleep (milliseconds=18)
    at ../src/unix/threadpsx.cpp:986
No locals.
#5  0x081fd133 in UploadBandwidthThrottler::Entry (this=0x9c09e58)
    at ../../src/UploadBandwidthThrottler.cpp:324
timeSinceLastLoop = 7
minFragSize = 1300
---Type <return> to continue, or q <return> to quit---
doubleSendSize = 2600
bytesToSpend = 135394
sleepTime = 25
thisLoopTick = 1631705266
TIME_BETWEEN_UPLOAD_LOOPS = 1
lastLoopTick = 1631705266
realBytesToSpend = 89600999
allowedDataRate = 5724160
rememberedSlotCounter = 37
extraSleepTime = 25
sendLock = {m_isOk = false, m_mutex = @0xb7ecdff4}
#6  0xb7461036 in wxThreadInternal::PthreadStart (thread=0x9c09e58)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0x9c13588
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#7  0xb746113d in wxPthreadStart (ptr=0x9c09e58)
    at ../src/unix/threadpsx.cpp:718
No locals.
#8  0xb7ebe50f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#9  0xb7193a0e in clone () from /lib/tls/i686/cmov/libc.so.6
---Type <return> to continue, or q <return> to quit---
No symbol table info available.

Thread 1 (Thread 0xb667a700 (LWP 26904)):
#0  0xb7655be4 in _GSocket_GDK_Input (data=0xb223f1f0, source=75,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
No locals.
#1  0xb6c9e4af in gdk_io_invoke (source=0xd410b20,
    condition=<value optimized out>, data=0xd7a21d0)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = GDK_INPUT_WRITE
#2  0xb6a3c71d in g_io_unix_dispatch (source=0xd410b68,
    callback=0xb6c9e450 <gdk_io_invoke>, user_data=0xd7a21d0)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 0
#3  0xb6a05718 in IA__g_main_context_dispatch (context=0x953a918)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#4  0xb6a08dc3 in g_main_context_iterate (context=0x953a918, block=1,
    dispatch=1, self=0x953bec0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 2147483647
timeout = 17
some_ready = 1
---Type <return> to continue, or q <return> to quit---
nfds = 373
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xb2be1018
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#5  0xb6a092e2 in IA__g_main_loop_run (loop=0x9562aa0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0x953bec0
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#6  0xb6e373a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0x9562930
loop = (GMainLoop *) 0x9562aa0
#7  0xb765410b in wxEventLoop::Run (this=0x9562930)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#8  0xb76f83dc in wxAppBase::MainLoop (this=0x953a7d0)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0x9562930}, m_pp = 0x953a810,
  m_pOld = 0x0}
#9  0xb76f8131 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
---Type <return> to continue, or q <return> to quit---
No locals.
#10 0xb73ed3fa in wxEntry (argc=@0xb74e56cc, argv=0x9528e38)
    at ../src/common/init.cpp:460
No locals.
#11 0xb73ed4b7 in wxEntry (argc=@0xbfc00190, argv=0xbfc00214)
    at ../src/common/init.cpp:472
No locals.
#12 0x082ac21d in main (argc=1, argv=0xb6a82460) at ../../src/amule-gui.cpp:95
No locals.

Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on April 01, 2009, 05:56:39 PM
Thanks RRM, very useful info. I guess I now have everything I need to debug the problem.

My preliminary guess is that both crashes are related.

I need a free afternoon (or more) to analyze all the useful info you gave us, and I'm sorry I'm a little bit busy with work right now.

So for the moment, play with the max. connections settings and try to enjoy aMule, let's see what we can do.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on April 01, 2009, 06:01:06 PM
By the way your last backtraces are the best ones a user can get, again, thanks for this fantastic info.

This crash is not new, but you are the first user to actually care enough to provide all the needed info. Congrats!

Now let's see if some developer or myself can fix it  8)  Any of you guys (other than RRM) could duplicate it?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on April 01, 2009, 06:17:14 PM
Umm, dear RRM, it would be great if could supply us with another little piece of information.

Next time amule crashes find its PID number. For instance here

$ ps axl | grep amule

Code: [Select]
0  1000 16084 15952  20   0   3236   796 pipe_w S+   pts/1      0:00 grep amule
0  1000 28358 28268  20   0 203536 198832 poll  S+   pts/0      0:03 gdb amule
0  1000 28522 28358  20   0 150676 96116 ptrace Tl   pts/0     85:15 /usr/bin/amule

The pid number is the number in the 3rd column for /usr/bin/amule. It is, the number is 28522

You can always get the PID number of amule by executing the ps axl | grep amule command.

Once you have the number go and read the first lines of output of the backtrace:
Quote
(gdb) bt
Code: [Select]
#0  0xb6b46450 in g_io_watch_funcs () from /usr/lib/libglib-2.0.so.0
#1  0xb797007b in vtable for wxNotebookBase ()
   from /usr/lib/libwx_gtk2ud_core-2.8.so.0
#2  0xbfdc007b in ?? ()
#3  0xb7719be7 in _GSocket_GDK_Input (data=0xa850a88, source=41,
    condition=176491144) at ../src/gtk/gsockgtk.cpp:36
...

Notice that the line starting by #2 has a number 0xbfdc007b followed by ??

If your backtrace has a line like this, with ?? then attach the output of the following command

Code: [Select]
cat /proc/PID/maps

You should replace PID by the number you got above. In our example the command should then be:
Code: [Select]
cat /proc/28522/maps

Greetings! Bill
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 01, 2009, 09:59:35 PM
Thank you Bill.
Dont be sorry. Its incredible what you guys are doing.

Quote
play with the max. connections settings

Yeah, im doing that; the lower the settings, the longer it takes before amule crashes.

Quote
The pid number is the number in the 3rd column for /usr/bin/amule.

Ah, i see, its different for every session.

Quote
attach the output of the following command

Code: [Select]
cat /proc/PID/maps

Ok, i will (do that tomorrow). Thank you for your guidance, once again.
Greetings!
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 02, 2009, 08:25:59 PM
Today its the combination of high VSZ and SIGABRT again...

Program received signal SIGABRT, Aborted.
[Switching to Thread 0xb4568b90 (LWP 18618)]
0xb8071430 in __kernel_vsyscall ()

(gdb) bt
Code: [Select]
#0  0xb8071430 in __kernel_vsyscall ()
#1  0xb72508a0 in raise () from /lib/tls/i686/cmov/libc.so.6
#2  0xb7252268 in abort () from /lib/tls/i686/cmov/libc.so.6
#3  0xb7473655 in __cxxabiv1::__terminate (handler=0x808a378 <abort@plt>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
#4  0xb7473692 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
#5  0xb74737ca in __cxa_throw (obj=0xb74a2af0, tinfo=0x86e5a6c,
    dest=0xb7473d00 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
#6  0xb7473e23 in operator new (sz=36)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
#7  0x083e3555 in CTimerEvent::Clone (this=0xb45682ec)
    at ../../src/Timer.cpp:158
#8  0xb75d5bb5 in wxEvtHandler::AddPendingEvent (this=0xa8a17d0,
    event=@0xb45682ec) at ../src/common/event.cpp:1130
#9  0x08190990 in wxPostEvent (dest=0xa8a17d0, event=@0xb45682ec)
    at /usr/include/wx-2.8/wx/event.h:2565
#10 0x083e3a04 in CTimerThread::Entry (this=0xafee8e8)
    at ../../src/Timer.cpp:68
#11 0xb75d4036 in wxThreadInternal::PthreadStart (thread=0xafee8e8)
    at ../src/unix/threadpsx.cpp:766
#12 0xb75d413d in wxPthreadStart (ptr=0xafee8e8)
---Type <return> to continue, or q <return> to quit---
    at ../src/unix/threadpsx.cpp:718
#13 0xb803150f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
#14 0xb7306a0e in clone () from /lib/tls/i686/cmov/libc.so.6

(gdb) bt full
Code: [Select]
#0  0xb8071430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb72508a0 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0xb7252268 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0xb7473655 in __cxxabiv1::__terminate (handler=0x808a378 <abort@plt>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
No locals.
#4  0xb7473692 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
No locals.
#5  0xb74737ca in __cxa_throw (obj=0xb74a2af0, tinfo=0x86e5a6c,
    dest=0xb7473d00 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
header = <value optimized out>
#6  0xb7473e23 in operator new (sz=36)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
handler = <value optimized out>
p = <value optimized out>
#7  0x083e3555 in CTimerEvent::Clone (this=0xb45682ec)
    at ../../src/Timer.cpp:158
No locals.
---Type <return> to continue, or q <return> to quit---
#8  0xb75d5bb5 in wxEvtHandler::AddPendingEvent (this=0xa8a17d0,
    event=@0xb45682ec) at ../src/common/event.cpp:1130
eventCopy = <value optimized out>
__FUNCTION__ = "AddPendingEvent"
#9  0x08190990 in wxPostEvent (dest=0xa8a17d0, event=@0xb45682ec)
    at /usr/include/wx-2.8/wx/event.h:2565
__FUNCTION__ = "wxPostEvent"
#10 0x083e3a04 in CTimerThread::Entry (this=0xafee8e8)
    at ../../src/Timer.cpp:68
now = 1744228669
sinceLast = 0
timeout = 100
evt = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x85c7608,
      static ms_classInfo = {m_className = 0xb76051a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7b028cc, m_next = 0xb76598c4,
        static sm_classTable = 0xa8743e8}, m_refData = 0x0},
    m_eventObject = 0x0, m_eventType = 10244, m_timeStamp = 0, m_id = 6128,
    m_callbackUserData = 0x0, m_propagationLevel = 0, m_skipped = false,
    m_isCommandEvent = false, static ms_classInfo = {m_className = 0xb7616708,
      m_objectSize = 36, m_objectConstructor = 0, m_baseInfo1 = 0xb7659858,
      m_baseInfo2 = 0x0, static sm_first = 0xb7b028cc, m_next = 0xb765a908,
      static sm_classTable = 0xa8743e8}}, <No data fields>}
---Type <return> to continue, or q <return> to quit---
lastEvent = 1744228769
#11 0xb75d4036 in wxThreadInternal::PthreadStart (thread=0xafee8e8)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0xaff2898
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#12 0xb75d413d in wxPthreadStart (ptr=0xafee8e8)
    at ../src/unix/threadpsx.cpp:718
No locals.
#13 0xb803150f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#14 0xb7306a0e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 02, 2009, 08:26:44 PM
(gdb) thread apply all bt full
Code: [Select]
Thread 5 (Thread 0xb4568b90 (LWP 18618)):
#0  0xb8071430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb72508a0 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0xb7252268 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0xb7473655 in __cxxabiv1::__terminate (handler=0x808a378 <abort@plt>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
No locals.
#4  0xb7473692 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
No locals.
#5  0xb74737ca in __cxa_throw (obj=0xb74a2af0, tinfo=0x86e5a6c,
    dest=0xb7473d00 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
header = <value optimized out>
#6  0xb7473e23 in operator new (sz=36)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
handler = <value optimized out>
p = <value optimized out>
#7  0x083e3555 in CTimerEvent::Clone (this=0xb45682ec)
---Type <return> to continue, or q <return> to quit---
    at ../../src/Timer.cpp:158
No locals.
#8  0xb75d5bb5 in wxEvtHandler::AddPendingEvent (this=0xa8a17d0,
    event=@0xb45682ec) at ../src/common/event.cpp:1130
eventCopy = <value optimized out>
__FUNCTION__ = "AddPendingEvent"
#9  0x08190990 in wxPostEvent (dest=0xa8a17d0, event=@0xb45682ec)
    at /usr/include/wx-2.8/wx/event.h:2565
__FUNCTION__ = "wxPostEvent"
#10 0x083e3a04 in CTimerThread::Entry (this=0xafee8e8)
    at ../../src/Timer.cpp:68
now = 1744228669
sinceLast = 0
timeout = 100
evt = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x85c7608,
      static ms_classInfo = {m_className = 0xb76051a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7b028cc, m_next = 0xb76598c4,
        static sm_classTable = 0xa8743e8}, m_refData = 0x0},
    m_eventObject = 0x0, m_eventType = 10244, m_timeStamp = 0, m_id = 6128,
    m_callbackUserData = 0x0, m_propagationLevel = 0, m_skipped = false,
    m_isCommandEvent = false, static ms_classInfo = {m_className = 0xb7616708,
      m_objectSize = 36, m_objectConstructor = 0, m_baseInfo1 = 0xb7659858,
---Type <return> to continue, or q <return> to quit---
      m_baseInfo2 = 0x0, static sm_first = 0xb7b028cc, m_next = 0xb765a908,
      static sm_classTable = 0xa8743e8}}, <No data fields>}
lastEvent = 1744228769
#11 0xb75d4036 in wxThreadInternal::PthreadStart (thread=0xafee8e8)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0xaff2898
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#12 0xb75d413d in wxPthreadStart (ptr=0xafee8e8)
    at ../src/unix/threadpsx.cpp:718
No locals.
#13 0xb803150f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#14 0xb7306a0e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 3 (Thread 0xb556ab90 (LWP 18611)):
#0  0xb8071430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb8038906 in nanosleep () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0xb75db168 in wxMicroSleep (microseconds=0) at ../src/unix/utilsunx.cpp:191
---Type <return> to continue, or q <return> to quit---
tmReq = {tv_sec = 0, tv_nsec = 932000000}
#3  0xb75db191 in wxMilliSleep (milliseconds=932)
    at ../src/unix/utilsunx.cpp:212
No locals.
#4  0xb75d141d in wxThread::Sleep (milliseconds=932)
    at ../src/unix/threadpsx.cpp:986
No locals.
#5  0x081fd133 in UploadBandwidthThrottler::Entry (this=0xae50548)
    at ../../src/UploadBandwidthThrottler.cpp:324
timeSinceLastLoop = 68
minFragSize = 1300
doubleSendSize = 2600
bytesToSpend = 1517769
sleepTime = 1000
thisLoopTick = 1744228726
TIME_BETWEEN_UPLOAD_LOOPS = 1
lastLoopTick = 1744228726
realBytesToSpend = 88576999
allowedDataRate = 5724160
rememberedSlotCounter = 44
extraSleepTime = 1000
sendLock = {m_isOk = false, m_mutex = @0x0}
#6  0xb75d4036 in wxThreadInternal::PthreadStart (thread=0xae50548)
---Type <return> to continue, or q <return> to quit---
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0xae80258
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#7  0xb75d413d in wxPthreadStart (ptr=0xae50548)
    at ../src/unix/threadpsx.cpp:718
No locals.
#8  0xb803150f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#9  0xb7306a0e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 1 (Thread 0xb67ed700 (LWP 18523)):
#0  0xb8071430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb72508a0 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0xb7252268 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0x083e9e51 in OnUnhandledException ()
    at ../../../../src/libs/common/MuleDebug.cpp:103
t = (class std::type_info *) 0x86e5a6c
---Type <return> to continue, or q <return> to quit---
output = (FILE *) 0xb737f560
#4  0xb7473655 in __cxxabiv1::__terminate (
    handler=0x83e9ae0 <OnUnhandledException()>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
No locals.
#5  0xb7473692 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
No locals.
#6  0xb74737ca in __cxa_throw (obj=0xb74a28f0, tinfo=0x86e5a6c,
    dest=0xb7473d00 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
header = <value optimized out>
#7  0xb7473e23 in operator new (sz=44)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
handler = <value optimized out>
p = <value optimized out>
#8  0xb767a0e9 in wxSocketEvent::Clone (this=0xbfc706a0)
    at ../include/wx/socket.h:314
No locals.
#9  0xb75d5bb5 in wxEvtHandler::AddPendingEvent (this=0x86e80c0,
    event=@0xbfc706a0) at ../src/common/event.cpp:1130
eventCopy = <value optimized out>
__FUNCTION__ = "AddPendingEvent"
---Type <return> to continue, or q <return> to quit---
#10 0xb7679d58 in wxSocketBase::OnRequest (this=0xb24262a8,
    notification=wxSOCKET_OUTPUT) at ../src/common/socket.cpp:1006
event = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x86e1488,
      static ms_classInfo = {m_className = 0xb76051a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7b028cc, m_next = 0xb76598c4,
        static sm_classTable = 0xa8743e8}, m_refData = 0x0},
    m_eventObject = 0xb24262a8, m_eventType = 10002, m_timeStamp = 0,
    m_id = 6123, m_callbackUserData = 0x0, m_propagationLevel = 0,
    m_skipped = false, m_isCommandEvent = false, static ms_classInfo = {
      m_className = 0xb7616708, m_objectSize = 36, m_objectConstructor = 0,
      m_baseInfo1 = 0xb7659858, m_baseInfo2 = 0x0,
      static sm_first = 0xb7b028cc, m_next = 0xb765a908,
      static sm_classTable = 0xa8743e8}}, m_event = wxSOCKET_OUTPUT,
  m_clientData = 0x0, static ms_classInfo = {m_className = 0xb7681008,
    m_objectSize = 44,
    m_objectConstructor = 0xb7677e00 <wxSocketEvent::wxCreateObject()>,
    m_baseInfo1 = 0xb765a920, m_baseInfo2 = 0x0, static sm_first = 0xb7b028cc,
    m_next = 0xb768a54c, static sm_classTable = 0xa8743e8}}
flag = <value optimized out>
#11 0xb7679e54 in wx_socket_callback (notification=GSOCK_OUTPUT,
    cdata=0xb24262a8 "\b-M\b") at ../src/common/socket.cpp:942
No locals.
---Type <return> to continue, or q <return> to quit---
#12 0xb767e6bb in GSocket::Detected_Write (this=0xb221eb88)
    at ../src/unix/gsocket.cpp:1836
No locals.
#13 0xb77c8be7 in _GSocket_GDK_Input (data=0xb221eb88, source=43,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
No locals.
#14 0xb6e114af in gdk_io_invoke (source=0xb383f110,
    condition=<value optimized out>, data=0xb3624ec8)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = GDK_INPUT_WRITE
#15 0xb6baf71d in g_io_unix_dispatch (source=0xb56cdeb0,
    callback=0xb6e11450 <gdk_io_invoke>, user_data=0xb3624ec8)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 6
#16 0xb6b78718 in IA__g_main_context_dispatch (context=0xa8a1918)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#17 0xb6b7bdc3 in g_main_context_iterate (context=0xa8a1918, block=1,
    dispatch=1, self=0xa8a2ec0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 110
timeout = 0
some_ready = 1
---Type <return> to continue, or q <return> to quit---
nfds = 8
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xb164f8c8
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#18 0xb6b7c2e2 in IA__g_main_loop_run (loop=0xa90ff18)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0xa8a2ec0
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#19 0xb6faa3a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0xaff35d8
loop = (GMainLoop *) 0xa90ff18
#20 0xb77c710b in wxEventLoop::Run (this=0xaff35d8)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#21 0xb786b3dc in wxAppBase::MainLoop (this=0xa8a17d0)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0xaff35d8}, m_pp = 0xa8a1810,
  m_pOld = 0x0}
#22 0xb786b131 in wxAppBase::OnRun (this=0x6) at ../src/common/appcmn.cpp:367
---Type <return> to continue, or q <return> to quit---
No locals.
#23 0xb75603fa in wxEntry (argc=@0xb76586cc, argv=0xa88fe38)
    at ../src/common/init.cpp:460
No locals.
#24 0xb75604b7 in wxEntry (argc=@0xbfc70a10, argv=0xbfc70a94)
    at ../src/common/init.cpp:472
No locals.
#25 0x082ac21d in main (argc=Cannot access memory at address 0x485b
) at ../../src/amule-gui.cpp:95
No locals.
#0  0xb8071430 in __kernel_vsyscall ()

$ ps axl | grep amule
Code: [Select]
0  1000  1535  1456  20   0   2068   524 -      R+   pts/1      0:00 grep amule
0  1000 18464 18393  20   0 191644 34776 poll   S+   pts/0      0:03 gdb amule
0  1000 18523 18464  20   0 3144196 1214856 ptrace Tl pts/0   1282:40 /usr/bin/amule

$ free
Code: [Select]
             total       used       free     shared    buffers     cached
Mem:       3111840    3002648     109192          0      19164     507804
-/+ buffers/cache:    2475680     636160
Swap:      9100780    3621700    5479080

Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 02, 2009, 08:47:02 PM
I didnt see the line with ??, but let me post the results of that PID command anyway...
Somehow i couldnt attach the txt file in which i had saved the outcome of
Code: [Select]
cat /proc/18523/maps, so i will post it here, in two parts.
part 1:
Code: [Select]
b391e000-b391f000 r--p 00000000 08:11 15295291   /usr/lib/locale/en_GB.utf8/LC_TIME
b391f000-b3a00000 r--p 00000000 08:11 15295282   /usr/lib/locale/en_GB.utf8/LC_COLLATE
b3a00000-b3af7000 rw-p b3a00000 00:00 0
b3af7000-b3b00000 ---p b3af7000 00:00 0
b3b00000-b3b49000 rw-p b3b00000 00:00 0
b3b49000-b3b88000 r--p 00000000 08:11 15295283   /usr/lib/locale/en_GB.utf8/LC_CTYPE
b3b88000-b3b89000 r--p 00000000 08:11 15295286   /usr/lib/locale/en_GB.utf8/LC_MONETARY
b3b89000-b3b8a000 r--p 00000000 08:11 15295292   /usr/lib/locale/en_GB.utf8/LC_MESSAGES/SYS_LC_MESSAGES
b3b8a000-b3b8b000 r--p 00000000 08:11 15295289   /usr/lib/locale/en_GB.utf8/LC_PAPER
b3b8b000-b3b8c000 r--p 00000000 08:11 15295287   /usr/lib/locale/en_GB.utf8/LC_NAME
b3b8c000-b3b8d000 r--p 00000000 08:11 15295281   /usr/lib/locale/en_GB.utf8/LC_ADDRESS
b3b8d000-b3b8e000 r--p 00000000 08:11 15295290   /usr/lib/locale/en_GB.utf8/LC_TELEPHONE
b3b8e000-b3b8f000 r--p 00000000 08:11 15295285   /usr/lib/locale/en_GB.utf8/LC_MEASUREMENT
b3b8f000-b3b90000 r--p 00000000 08:11 15295284   /usr/lib/locale/en_GB.utf8/LC_IDENTIFICATION
b3b90000-b3bdb000 r--p 00000000 08:11 15392788   /usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif.ttf
b3bdb000-b3cdf000 rw-p b3bdb000 00:00 0
b3cdf000-b3d68000 r--p 00000000 08:11 15392785   /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-Bold.ttf
b3d68000-b3d69000 ---p b3d68000 00:00 0
b3d69000-b4569000 rw-p b3d69000 00:00 0
b4569000-b456a000 ---p b4569000 00:00 0
b456a000-b4d6a000 rw-p b456a000 00:00 0
b4d6a000-b4d6b000 ---p b4d6a000 00:00 0
b4d6b000-b556b000 rw-p b4d6b000 00:00 0
b556b000-b559c000 r-xp 00000000 08:11 15271619   /usr/lib/libcroco-0.6.so.3.0.1
b559c000-b559f000 rw-p 00030000 08:11 15271619   /usr/lib/libcroco-0.6.so.3.0.1
b559f000-b55b7000 r-xp 00000000 08:11 25223171   /usr/lib/gio/modules/libgvfsdbus.so
b55b7000-b55b8000 r--p 00017000 08:11 25223171   /usr/lib/gio/modules/libgvfsdbus.so
b55b8000-b55b9000 rw-p 00018000 08:11 25223171   /usr/lib/gio/modules/libgvfsdbus.so
b55b9000-b55c6000 r-xp 00000000 08:11 15270702   /usr/lib/libgvfscommon.so.0.0.0
b55c6000-b55c7000 r--p 0000d000 08:11 15270702   /usr/lib/libgvfscommon.so.0.0.0
b55c7000-b55c8000 rw-p 0000e000 08:11 15270702   /usr/lib/libgvfscommon.so.0.0.0
b55c8000-b55fe000 r-xp 00000000 08:11 7487615    /lib/libdbus-1.so.3.4.0
b55fe000-b55ff000 r--p 00035000 08:11 7487615    /lib/libdbus-1.so.3.4.0
b55ff000-b5600000 rw-p 00036000 08:11 7487615    /lib/libdbus-1.so.3.4.0
b5600000-b56fe000 rw-p b5600000 00:00 0
b56fe000-b5700000 ---p b56fe000 00:00 0
b5700000-b571b000 rw-p b5700000 00:00 0
b571b000-b574b000 r-xp 00000000 08:11 15271251   /usr/lib/libgsf-1.so.114.0.8
b574b000-b574d000 r--p 0002f000 08:11 15271251   /usr/lib/libgsf-1.so.114.0.8
b574d000-b574e000 rw-p 00031000 08:11 15271251   /usr/lib/libgsf-1.so.114.0.8
b574e000-b574f000 rw-p b574e000 00:00 0
b574f000-b5780000 r-xp 00000000 08:11 15270040   /usr/lib/librsvg-2.so.2.22.3
b5780000-b5781000 r--p 00030000 08:11 15270040   /usr/lib/librsvg-2.so.2.22.3
b5781000-b5782000 rw-p 00031000 08:11 15270040   /usr/lib/librsvg-2.so.2.22.3
b5782000-b5784000 r-xp 00000000 08:11 7504267    /lib/tls/i686/cmov/libutil-2.8.90.so
b5784000-b5785000 r--p 00001000 08:11 7504267    /lib/tls/i686/cmov/libutil-2.8.90.so
b5785000-b5786000 rw-p 00002000 08:11 7504267    /lib/tls/i686/cmov/libutil-2.8.90.so
b5786000-b5790000 rw-p b5786000 00:00 0
b5790000-b579f000 r-xp 00000000 08:11 7488081    /lib/libbz2.so.1.0.4
b579f000-b57a0000 r--p 0000f000 08:11 7488081    /lib/libbz2.so.1.0.4
b57a0000-b57a1000 rw-p 00010000 08:11 7488081    /lib/libbz2.so.1.0.4
b57a1000-b57ac000 rw-p b57a1000 00:00 0
b57ac000-b57af000 r-xp 00000000 08:11 15327950   /usr/lib/pango/1.6.0/modules/pango-hebrew-fc.so
b57af000-b57b0000 r--p 00002000 08:11 15327950   /usr/lib/pango/1.6.0/modules/pango-hebrew-fc.so
b57b0000-b57b1000 rw-p 00003000 08:11 15327950   /usr/lib/pango/1.6.0/modules/pango-hebrew-fc.so
b57b1000-b57b2000 rw-p b57b1000 00:00 0
b57b2000-b57b3000 r-xp 00000000 08:11 15294815   /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so
b57b3000-b57b4000 r--p 00000000 08:11 15294815   /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so
b57b4000-b57b5000 rw-p 00001000 08:11 15294815   /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so
b57b5000-b57cc000 r--s 00000000 08:11 15344031   /usr/share/mime/mime.cache
b57cc000-b5877000 r--p 00000000 08:11 15483943   /usr/share/icons/Tangerine/icon-theme.cache
b5877000-b597b000 rw-p b5877000 00:00 0
b597b000-b5a10000 r--p 00000000 08:11 15392784   /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf
b5a10000-b5a12000 r-xp 00000000 08:11 15327946   /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
b5a12000-b5a13000 r--p 00001000 08:11 15327946   /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
b5a13000-b5a14000 rw-p 00002000 08:11 15327946   /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
b5a14000-b5a1a000 r--s 00000000 08:11 19407431   /var/cache/fontconfig/945677eb7aeaf62f1d50efc3fb3ec7d8-x86.cache-2
b5a1a000-b5a1d000 r--s 00000000 08:11 19407381   /var/cache/fontconfig/a755afe4a08bf5b97852ceb7400b47bc-x86.cache-2
b5a1d000-b5a20000 r--s 00000000 08:11 19408574   /var/cache/fontconfig/6d41288fd70b0be22e8c3a91e032eec0-x86.cache-2
b5a20000-b5a23000 r--s 00000000 08:11 19408573   /var/cache/fontconfig/de156ccd2eddbdc19d37a45b8b2aac9c-x86.cache-2
b5a23000-b5a2b000 r--s 00000000 08:11 19408570   /var/cache/fontconfig/e3de0de479f42330eadf588a55fb5bf4-x86.cache-2
b5a2b000-b5a36000 r--s 00000000 08:11 19408583   /var/cache/fontconfig/0f34bcd4b6ee430af32735b75db7f02b-x86.cache-2
b5a36000-b5a39000 r--s 00000000 08:11 19408580   /var/cache/fontconfig/de9486f0b47a4d768a594cb4198cb1c6-x86.cache-2
b5a39000-b5a40000 r--s 00000000 08:11 19406916   /var/cache/fontconfig/d52a8644073d54c13679302ca1180695-x86.cache-2
b5a40000-b5aa0000 rw-s 00000000 00:09 8585232    /SYSV00000000 (deleted)
b5aa0000-b5b00000 rw-s 00000000 00:09 8552463    /SYSV00000000 (deleted)
b5b00000-b5c00000 rw-p b5b00000 00:00 0
b5c00000-b5c03000 r--s 00000000 08:11 19408582   /var/cache/fontconfig/e383d7ea5fbe662a33d9b44caf393297-x86.cache-2
b5c03000-b5c22000 r-xp 00000000 08:11 15294850   /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
b5c22000-b5c23000 r--p 0001e000 08:11 15294850   /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
b5c23000-b5c24000 rw-p 0001f000 08:11 15294850   /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
b5c24000-b5c34000 r-xp 00000000 08:11 7504263    /lib/tls/i686/cmov/libresolv-2.8.90.so
b5c34000-b5c35000 r--p 0000f000 08:11 7504263    /lib/tls/i686/cmov/libresolv-2.8.90.so
b5c35000-b5c36000 rw-p 00010000 08:11 7504263    /lib/tls/i686/cmov/libresolv-2.8.90.so
b5c36000-b5c38000 rw-p b5c36000 00:00 0
b5c38000-b5c3a000 r--s 00000000 08:11 19408581   /var/cache/fontconfig/c69f04ab05004e31a6d5e715764f16d8-x86.cache-2
b5c3a000-b5c3b000 r--s 00000000 08:11 19408568   /var/cache/fontconfig/4c73fe0c47614734b17d736dbde7580a-x86.cache-2
b5c3b000-b5c41000 r--s 00000000 08:11 19406910   /var/cache/fontconfig/089dead882dea3570ffc31a9898cfb69-x86.cache-2
b5c41000-b5c47000 r-xp 00000000 08:11 15294543   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-xpm.so
b5c47000-b5c48000 r--p 00005000 08:11 15294543   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-xpm.so
b5c48000-b5c49000 rw-p 00006000 08:11 15294543   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-xpm.so
b5c49000-b5c4a000 ---p b5c49000 00:00 0
b5c4a000-b644a000 rw-p b5c4a000 00:00 0
b644a000-b6450000 r-xp 00000000 08:11 15271479   /usr/lib/libgailutil.so.18.0.1
b6450000-b6451000 r--p 00005000 08:11 15271479   /usr/lib/libgailutil.so.18.0.1
b6451000-b6452000 rw-p 00006000 08:11 15271479   /usr/lib/libgailutil.so.18.0.1
b6452000-b6481000 r-xp 00000000 08:11 15270570   /usr/lib/libgnomecanvas-2.so.0.2001.0
b6481000-b6482000 r--p 0002e000 08:11 15270570   /usr/lib/libgnomecanvas-2.so.0.2001.0
b6482000-b6483000 rw-p 0002f000 08:11 15270570   /usr/lib/libgnomecanvas-2.so.0.2001.0
b6483000-b64c1000 r-xp 00000000 08:11 15271569   /usr/lib/libgnomeprintui-2-2.so.0.1.0
b64c1000-b64c2000 r--p 0003d000 08:11 15271569   /usr/lib/libgnomeprintui-2-2.so.0.1.0
b64c2000-b64c3000 rw-p 0003e000 08:11 15271569   /usr/lib/libgnomeprintui-2-2.so.0.1.0
b64c3000-b65f8000 r-xp 00000000 08:11 15271020   /usr/lib/libxml2.so.2.6.32
b65f8000-b65f9000 ---p 00135000 08:11 15271020   /usr/lib/libxml2.so.2.6.32
b65f9000-b65fd000 r--p 00135000 08:11 15271020   /usr/lib/libxml2.so.2.6.32
b65fd000-b65fe000 rw-p 00139000 08:11 15271020   /usr/lib/libxml2.so.2.6.32
b65fe000-b65ff000 rw-p b65fe000 00:00 0
b65ff000-b6614000 r-xp 00000000 08:11 15271916   /usr/lib/libart_lgpl_2.so.2.3.20
b6614000-b6616000 rw-p 00014000 08:11 15271916   /usr/lib/libart_lgpl_2.so.2.3.20
b6616000-b667c000 r-xp 00000000 08:11 15272783   /usr/lib/libgnomeprint-2-2.so.0.1.0
b667c000-b667d000 ---p 00066000 08:11 15272783   /usr/lib/libgnomeprint-2-2.so.0.1.0
b667d000-b667e000 r--p 00066000 08:11 15272783   /usr/lib/libgnomeprint-2-2.so.0.1.0
b667e000-b667f000 rw-p 00067000 08:11 15272783   /usr/lib/libgnomeprint-2-2.so.0.1.0
b667f000-b6689000 r-xp 00000000 08:11 7504222    /lib/tls/i686/cmov/libnss_files-2.8.90.so
b6689000-b668a000 r--p 00009000 08:11 7504222    /lib/tls/i686/cmov/libnss_files-2.8.90.so
b668a000-b668b000 rw-p 0000a000 08:11 7504222    /lib/tls/i686/cmov/libnss_files-2.8.90.so
b668b000-b6694000 r-xp 00000000 08:11 7504259    /lib/tls/i686/cmov/libnss_nis-2.8.90.so
b6694000-b6695000 r--p 00008000 08:11 7504259    /lib/tls/i686/cmov/libnss_nis-2.8.90.so
b6695000-b6696000 rw-p 00009000 08:11 7504259    /lib/tls/i686/cmov/libnss_nis-2.8.90.so
b6696000-b66ab000 r-xp 00000000 08:11 7504219    /lib/tls/i686/cmov/libnsl-2.8.90.so
b66ab000-b66ac000 r--p 00014000 08:11 7504219    /lib/tls/i686/cmov/libnsl-2.8.90.so
b66ac000-b66ad000 rw-p 00015000 08:11 7504219    /lib/tls/i686/cmov/libnsl-2.8.90.so
b66ad000-b66af000 rw-p b66ad000 00:00 0
b66af000-b66b6000 r-xp 00000000 08:11 7504220    /lib/tls/i686/cmov/libnss_compat-2.8.90.so
b66b6000-b66b7000 r--p 00006000 08:11 7504220    /lib/tls/i686/cmov/libnss_compat-2.8.90.so
b66b7000-b66b8000 rw-p 00007000 08:11 7504220    /lib/tls/i686/cmov/libnss_compat-2.8.90.so
b66b8000-b66b9000 r--s 00000000 08:11 19406911   /var/cache/fontconfig/4794a0821666d79190d59a36cb4f44b5-x86.cache-2
b66b9000-b66bb000 r--s 00000000 08:11 19407182   /var/cache/fontconfig/e13b20fdb08344e0e664864cc2ede53d-x86.cache-2
b66bb000-b66be000 rw-s 00000000 00:09 8618001    /SYSV00000000 (deleted)
b66be000-b66c2000 r-xp 00000000 08:11 7504221    /lib/tls/i686/cmov/libnss_dns-2.8.90.so
b66c2000-b66c3000 r--p 00003000 08:11 7504221    /lib/tls/i686/cmov/libnss_dns-2.8.90.so
b66c3000-b66c4000 rw-p 00004000 08:11 7504221    /lib/tls/i686/cmov/libnss_dns-2.8.90.so
b66c4000-b66c6000 r-xp 00000000 08:11 7487583    /lib/libnss_mdns4_minimal.so.2
b66c6000-b66c7000 rw-p 00001000 08:11 7487583    /lib/libnss_mdns4_minimal.so.2
b66c7000-b66c9000 rw-p b66c7000 00:00 0
b66c9000-b66ca000 r--p 00000000 08:11 15295427   /usr/lib/locale/nl_NL.utf8/LC_NUMERIC
b66ca000-b66cb000 r--p 00000000 08:11 15426937   /usr/lib/locale/nl_NL.utf8/LC_TIME
b66cb000-b67ac000 r--p 00000000 08:11 15295674   /usr/lib/locale/nl_NL.utf8/LC_COLLATE
b67ac000-b67ad000 r--p 00000000 08:11 15426938   /usr/lib/locale/nl_NL.utf8/LC_MONETARY
b67ad000-b67ae000 r--p 00000000 08:11 15295227   /usr/lib/locale/nl_NL.utf8/LC_MESSAGES/SYS_LC_MESSAGES
b67ae000-b67ed000 r--p 00000000 08:11 15295675   /usr/lib/locale/nl_NL.utf8/LC_C
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 02, 2009, 08:49:43 PM
part 2
Code: [Select]
TYPE
b67ed000-b67f1000 rw-p b67ed000 00:00 0
b67f1000-b67f5000 r-xp 00000000 08:11 15270153   /usr/lib/libXdmcp.so.6.0.0
b67f5000-b67f6000 rw-p 00003000 08:11 15270153   /usr/lib/libXdmcp.so.6.0.0
b67f6000-b67f8000 r-xp 00000000 08:11 15270151   /usr/lib/libXau.so.6.0.0
b67f8000-b67f9000 rw-p 00001000 08:11 15270151   /usr/lib/libXau.so.6.0.0
b67f9000-b67ff000 r-xp 00000000 08:11 15271817   /usr/lib/libxcb-render.so.0.0.0
b67ff000-b6800000 r--p 00005000 08:11 15271817   /usr/lib/libxcb-render.so.0.0.0
b6800000-b6801000 rw-p 00006000 08:11 15271817   /usr/lib/libxcb-render.so.0.0.0
b6801000-b6804000 r-xp 00000000 08:11 15271819   /usr/lib/libxcb-render-util.so.0.0.0
b6804000-b6805000 r--p 00002000 08:11 15271819   /usr/lib/libxcb-render-util.so.0.0.0
b6805000-b6806000 rw-p 00003000 08:11 15271819   /usr/lib/libxcb-render-util.so.0.0.0
b6806000-b6807000 rw-p b6806000 00:00 0
b6807000-b6846000 r-xp 00000000 08:11 15271815   /usr/lib/libpixman-1.so.0.12.0
b6846000-b6848000 r--p 0003e000 08:11 15271815   /usr/lib/libpixman-1.so.0.12.0
b6848000-b6849000 rw-p 00040000 08:11 15271815   /usr/lib/libpixman-1.so.0.12.0
b6849000-b6860000 r-xp 00000000 08:11 15270845   /usr/lib/libxcb.so.1.0.0
b6860000-b6861000 r--p 00016000 08:11 15270845   /usr/lib/libxcb.so.1.0.0
b6861000-b6862000 rw-p 00017000 08:11 15270845   /usr/lib/libxcb.so.1.0.0
b6862000-b6863000 r-xp 00000000 08:11 15270854   /usr/lib/libxcb-xlib.so.0.0.0
b6863000-b6864000 r--p 00000000 08:11 15270854   /usr/lib/libxcb-xlib.so.0.0.0
b6864000-b6865000 rw-p 00001000 08:11 15270854   /usr/lib/libxcb-xlib.so.0.0.0
b6865000-b687a000 r-xp 00000000 08:11 15271181   /usr/lib/libICE.so.6.3.0
b687a000-b687b000 rw-p 00014000 08:11 15271181   /usr/lib/libICE.so.6.3.0
b687b000-b687d000 rw-p b687b000 00:00 0
b687d000-b68a5000 r-xp 00000000 08:11 7487563    /lib/libpcre.so.3.12.1
b68a5000-b68a6000 r--p 00027000 08:11 7487563    /lib/libpcre.so.3.12.1
b68a6000-b68a7000 rw-p 00028000 08:11 7487563    /lib/libpcre.so.3.12.1
b68a7000-b68a8000 rw-p b68a7000 00:00 0
b68a8000-b68cc000 r-xp 00000000 08:11 15270076   /usr/lib/libexpat.so.1.5.2
b68cc000-b68ce000 r--p 00023000 08:11 15270076   /usr/lib/libexpat.so.1.5.2
b68ce000-b68cf000 rw-p 00025000 08:11 15270076   /usr/lib/libexpat.so.1.5.2
b68cf000-b68e7000 r-xp 00000000 08:11 7487527    /lib/libselinux.so.1
b68e7000-b68e8000 r--p 00017000 08:11 7487527    /lib/libselinux.so.1
b68e8000-b68e9000 rw-p 00018000 08:11 7487527    /lib/libselinux.so.1
b68e9000-b68f1000 r-xp 00000000 08:11 15271224   /usr/lib/libXcursor.so.1.0.2
b68f1000-b68f2000 rw-p 00007000 08:11 15271224   /usr/lib/libXcursor.so.1.0.2
b68f2000-b68f7000 r-xp 00000000 08:11 15271241   /usr/lib/libXrandr.so.2.1.0
b68f7000-b68f8000 r--p 00005000 08:11 15271241   /usr/lib/libXrandr.so.2.1.0
b68f8000-b68f9000 rw-p 00006000 08:11 15271241   /usr/lib/libXrandr.so.2.1.0
b68f9000-b6901000 r-xp 00000000 08:11 15270301   /usr/lib/libXi.so.6.0.0
b6901000-b6902000 r--p 00007000 08:11 15270301   /usr/lib/libXi.so.6.0.0
b6902000-b6903000 rw-p 00008000 08:11 15270301   /usr/lib/libXi.so.6.0.0
b6903000-b6904000 rw-p b6903000 00:00 0
b6904000-b690c000 r-xp 00000000 08:11 15270900   /usr/lib/libXrender.so.1.3.0
b690c000-b690d000 r--p 00007000 08:11 15270900   /usr/lib/libXrender.so.1.3.0
b690d000-b690e000 rw-p 00008000 08:11 15270900   /usr/lib/libXrender.so.1.3.0
b690e000-b691b000 r-xp 00000000 08:11 15270035   /usr/lib/libXext.so.6.4.0
b691b000-b691d000 rw-p 0000c000 08:11 15270035   /usr/lib/libXext.so.6.4.0
b691d000-b698d000 r-xp 00000000 08:11 15271821   /usr/lib/libcairo.so.2.10800.0
b698d000-b698f000 r--p 0006f000 08:11 15271821   /usr/lib/libcairo.so.2.10800.0
b698f000-b6990000 rw-p 00071000 08:11 15271821   /usr/lib/libcairo.so.2.10800.0
b6990000-b6994000 r-xp 00000000 08:11 15271234   /usr/lib/libXfixes.so.3.1.0
b6994000-b6995000 rw-p 00003000 08:11 15271234   /usr/lib/libXfixes.so.3.1.0
b6995000-b6997000 r-xp 00000000 08:11 15271221   /usr/lib/libXdamage.so.1.1.0
b6997000-b6998000 rw-p 00001000 08:11 15271221   /usr/lib/libXdamage.so.1.1.0
b6998000-b6999000 rw-p b6998000 00:00 0
b6999000-b699b000 r-xp 00000000 08:11 15271890   /usr/lib/libXcomposite.so.1.0.0
b699b000-b699c000 r--p 00001000 08:11 15271890   /usr/lib/libXcomposite.so.1.0.0
b699c000-b699d000 rw-p 00002000 08:11 15271890   /usr/lib/libXcomposite.so.1.0.0
b699d000-b6a88000 r-xp 00000000 08:11 15270878   /usr/lib/libX11.so.6.2.0
b6a88000-b6a89000 r--p 000ea000 08:11 15270878   /usr/lib/libX11.so.6.2.0
b6a89000-b6a8b000 rw-p 000eb000 08:11 15270878   /usr/lib/libX11.so.6.2.0
b6a8b000-b6a8c000 rw-p b6a8b000 00:00 0
b6a8c000-b6a95000 r-xp 00000000 08:11 15271988   /usr/lib/libpangocairo-1.0.so.0.2202.0
b6a95000-b6a96000 r--p 00008000 08:11 15271988   /usr/lib/libpangocairo-1.0.so.0.2202.0
b6a96000-b6a97000 rw-p 00009000 08:11 15271988   /usr/lib/libpangocairo-1.0.so.0.2202.0
b6a97000-b6ae9000 r-xp 00000000 08:11 15271453   /usr/lib/libtiff.so.4.2.1
b6ae9000-b6aeb000 r--p 00052000 08:11 15271453   /usr/lib/libtiff.so.4.2.1
b6aeb000-b6aec000 rw-p 00054000 08:11 15271453   /usr/lib/libtiff.so.4.2.1
b6aec000-b6aed000 rw-p b6aec000 00:00 0
b6aed000-b6b0c000 r-xp 00000000 08:11 15271751   /usr/lib/libjpeg.so.62.0.0
b6b0c000-b6b0d000 rw-p 0001e000 08:11 15271751   /usr/lib/libjpeg.so.62.0.0
b6b0d000-b6b31000 r-xp 00000000 08:11 15271301   /usr/lib/libpng12.so.0.27.0
b6b31000-b6b32000 r--p 00023000 08:11 15271301   /usr/lib/libpng12.so.0.27.0
b6b32000-b6b33000 rw-p 00024000 08:11 15271301   /usr/lib/libpng12.so.0.27.0
b6b33000-b6b3a000 r-xp 00000000 08:11 15270840   /usr/lib/libSM.so.6.0.0
b6b3a000-b6b3b000 r--p 00006000 08:11 15270840   /usr/lib/libSM.so.6.0.0
b6b3b000-b6b3c000 rw-p 00007000 08:11 15270840   /usr/lib/libSM.so.6.0.0
b6b3c000-b6b3e000 r-xp 00000000 08:11 15271225   /usr/lib/libXinerama.so.1.0.0
b6b3e000-b6b3f000 rw-p 00001000 08:11 15271225   /usr/lib/libXinerama.so.1.0.0
b6b3f000-b6bf4000 r-xp 00000000 08:11 15271534   /usr/lib/libglib-2.0.so.0.1800.2
b6bf4000-b6bf5000 r--p 000b4000 08:11 15271534   /usr/lib/libglib-2.0.so.0.1800.2
b6bf5000-b6bf6000 rw-p 000b5000 08:11 15271534   /usr/lib/libglib-2.0.so.0.1800.2
b6bf6000-b6bfd000 r-xp 00000000 08:11 7504264    /lib/tls/i686/cmov/librt-2.8.90.so
b6bfd000-b6bfe000 r--p 00007000 08:11 7504264    /lib/tls/i686/cmov/librt-2.8.90.so
b6bfe000-b6bff000 rw-p 00008000 08:11 7504264    /lib/tls/i686/cmov/librt-2.8.90.so
b6bff000-b6c00000 rw-p b6bff000 00:00 0
b6c00000-b6c04000 r-xp 00000000 08:11 15271550   /usr/lib/libgthread-2.0.so.0.1800.2
b6c04000-b6c05000 r--p 00003000 08:11 15271550   /usr/lib/libgthread-2.0.so.0.1800.2
b6c05000-b6c06000 rw-p 00004000 08:11 15271550   /usr/lib/libgthread-2.0.so.0.1800.2
b6c06000-b6c09000 r-xp 00000000 08:11 15271540   /usr/lib/libgmodule-2.0.so.0.1800.2
b6c09000-b6c0a000 r--p 00002000 08:11 15271540   /usr/lib/libgmodule-2.0.so.0.1800.2
b6c0a000-b6c0b000 rw-p 00003000 08:11 15271540   /usr/lib/libgmodule-2.0.so.0.1800.2
b6c0b000-b6c47000 r-xp 00000000 08:11 15271542   /usr/lib/libgobject-2.0.so.0.1800.2
b6c47000-b6c48000 r--p 0003b000 08:11 15271542   /usr/lib/libgobject-2.0.so.0.1800.2
b6c48000-b6c49000 rw-p 0003c000 08:11 15271542   /usr/lib/libgobject-2.0.so.0.1800.2
b6c49000-b6c74000 r-xp 00000000 08:11 15270073   /usr/lib/libfontconfig.so.1.3.0
b6c74000-b6c75000 r--p 0002a000 08:11 15270073   /usr/lib/libfontconfig.so.1.3.0
b6c75000-b6c76000 rw-p 0002b000 08:11 15270073   /usr/lib/libfontconfig.so.1.3.0
b6c76000-b6ce7000 r-xp 00000000 08:11 15270721   /usr/lib/libfreetype.so.6.3.18
b6ce7000-b6ceb000 r--p 00070000 08:11 15270721   /usr/lib/libfreetype.so.6.3.18
b6ceb000-b6cec000 rw-p 00074000 08:11 15270721   /usr/lib/libfreetype.so.6.3.18
b6cec000-b6d2c000 r-xp 00000000 08:11 15271329   /usr/lib/libpango-1.0.so.0.2202.0
b6d2c000-b6d2d000 ---p 00040000 08:11 15271329   /usr/lib/libpango-1.0.so.0.2202.0
b6d2d000-b6d2e000 r--p 00040000 08:11 15271329   /usr/lib/libpango-1.0.so.0.2202.0
b6d2e000-b6d2f000 rw-p 00041000 08:11 15271329   /usr/lib/libpango-1.0.so.0.2202.0
b6d2f000-b6d30000 rw-p b6d2f000 00:00 0
b6d30000-b6d95000 r-xp 00000000 08:11 15271504   /usr/lib/libgio-2.0.so.0.1800.2
b6d95000-b6d96000 ---p 00065000 08:11 15271504   /usr/lib/libgio-2.0.so.0.1800.2
b6d96000-b6d97000 r--p 00065000 08:11 15271504   /usr/lib/libgio-2.0.so.0.1800.2
b6d97000-b6d98000 rw-p 00066000 08:11 15271504   /usr/lib/libgio-2.0.so.0.1800.2
b6d98000-b6db0000 r-xp 00000000 08:11 15271669   /usr/lib/libgdk_pixbuf-2.0.so.0.1400.4
b6db0000-b6db1000 r--p 00017000 08:11 15271669   /usr/lib/libgdk_pixbuf-2.0.so.0.1400.4
b6db1000-b6db2000 rw-p 00018000 08:11 15271669   /usr/lib/libgdk_pixbuf-2.0.so.0.1400.4
b6db2000-b6dd8000 r-xp 00000000 08:11 15271989   /usr/lib/libpangoft2-1.0.so.0.2202.0
b6dd8000-b6dd9000 r--p 00025000 08:11 15271989   /usr/lib/libpangoft2-1.0.so.0.2202.0
b6dd9000-b6dda000 rw-p 00026000 08:11 15271989   /usr/lib/libpangoft2-1.0.so.0.2202.0
b6dda000-b6df3000 r-xp 00000000 08:11 15270990   /usr/lib/libatk-1.0.so.0.2409.1
b6df3000-b6df5000 r--p 00018000 08:11 15270990   /usr/lib/libatk-1.0.so.0.2409.1
b6df5000-b6df6000 rw-p 0001a000 08:11 15270990   /usr/lib/libatk-1.0.so.0.2409.1
b6df6000-b6e7e000 r-xp 00000000 08:11 15271567   /usr/lib/libgdk-x11-2.0.so.0.1400.4
b6e7e000-b6e7f000 ---p 00088000 08:11 15271567   /usr/lib/libgdk-x11-2.0.so.0.1400.4
b6e7f000-b6e81000 r--p 00088000 08:11 15271567   /usr/lib/libgdk-x11-2.0.so.0.1400.4
b6e81000-b6e82000 rw-p 0008a000 08:11 15271567   /usr/lib/libgdk-x11-2.0.so.0.1400.4
b6e82000-b6e83000 rw-p b6e82000 00:00 0
b6e83000-b7218000 r-xp 00000000 08:11 15271671   /usr/lib/libgtk-x11-2.0.so.0.1400.4
b7218000-b7219000 ---p 00395000 08:11 15271671   /usr/lib/libgtk-x11-2.0.so.0.1400.4
b7219000-b721d000 r--p 00395000 08:11 15271671   /usr/lib/libgtk-x11-2.0.so.0.1400.4
b721d000-b721f000 rw-p 00399000 08:11 15271671   /usr/lib/libgtk-x11-2.0.so.0.1400.4
b721f000-b7221000 rw-p b721f000 00:00 0
b7221000-b7223000 r-xp 00000000 08:11 7504213    /lib/tls/i686/cmov/libdl-2.8.90.so
b7223000-b7224000 r--p 00001000 08:11 7504213    /lib/tls/i686/cmov/libdl-2.8.90.so
b7224000-b7225000 rw-p 00002000 08:11 7504213    /lib/tls/i686/cmov/libdl-2.8.90.so
b7225000-b737d000 r-xp 00000000 08:11 7504210    /lib/tls/i686/cmov/libc-2.8.90.so
b737d000-b737f000 r--p 00158000 08:11 7504210    /lib/tls/i686/cmov/libc-2.8.90.so
b737f000-b7380000 rw-p 0015a000 08:11 7504210    /lib/tls/i686/cmov/libc-2.8.90.so
b7380000-b7383000 rw-p b7380000 00:00 0
b7383000-b7390000 r-xp 00000000 08:11 7487509    /lib/libgcc_s.so.1
b7390000-b7391000 r--p 0000c000 08:11 7487509    /lib/libgcc_s.so.1
b7391000-b7392000 rw-p 0000d000 08:11 7487509    /lib/libgcc_s.so.1
b7392000-b73b6000 r-xp 00000000 08:11 7504214    /lib/tls/i686/cmov/libm-2.8.90.so
b73b6000-b73b7000 r--p 00023000 08:11 7504214    /lib/tls/i686/cmov/libm-2.8.90.so
b73b7000-b73b8000 rw-p 00024000 08:11 7504214    /lib/tls/i686/cmov/libm-2.8.90.so
b73b8000-b73b9000 rw-p b73b8000 00:00 0
b73b9000-b749c000 r-xp 00000000 08:11 15271202   /usr/lib/libstdc++.so.6.0.10
b749c000-b74a0000 r--p 000e3000 08:11 15271202   /usr/lib/libstdc++.so.6.0.10
b74a0000-b74a1000 rw-p 000e7000 08:11 15271202   /usr/lib/libstdc++.so.6.0.10
b74a1000-b74a7000 rw-p b74a1000 00:00 0
b74a7000-b74cd000 r-xp 00000000 08:11 15271167   /usr/lib/libGeoIP.so.1.4.4
b74cd000-b74ce000 r--p 00025000 08:11 15271167   /usr/lib/libGeoIP.so.1.4.4
b74ce000-b74cf000 rw-p 00026000 08:11 15271167   /usr/lib/libGeoIP.so.1.4.4
b74cf000-b764d000 r-xp 00000000 08:11 15272509   /usr/lib/libwx_baseud-2.8.so.0.5.0
b764d000-b7651000 r--p 0017d000 08:11 15272509   /usr/lib/libwx_baseud-2.8.so.0.5.0
b7651000-b7653000 rw-p 00181000 08:11 15272509   /usr/lib/libwx_baseud-2.8.so.0.5.0
b7653000-b765b000 rw-p b7653000 00:00 0
b765b000-b7688000 r-xp 00000000 08:11 15272510   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b7688000-b7689000 ---p 0002d000 08:11 15272510   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b7689000-b768a000 r--p 0002d000 08:11 15272510   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b768a000-b768b000 rw-p 0002e000 08:11 15272510   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b768b000-b7a06000 r-xp 00000000 08:11 15271028   /usr/lib/libwx_gtk2ud_core-2.8.so.0.5.0
b7a06000-b7a2d000 r--p 0037a000 08:11 15271028   /usr/lib/libwx_gtk2ud_core-2.8.so.0.5.0
b7a2d000-b7a32000 rw-p 003a1000 08:11 15271028   /usr/lib/libwx_gtk2ud_core-2.8.so.0.5.0
b7a32000-b7a39000 rw-p b7a32000 00:00 0
b7a39000-b7afa000 r-xp 00000000 08:11 15270699   /usr/lib/libwx_gtk2ud_adv-2.8.so.0.5.0
b7afa000-b7b02000 r--p 000c1000 08:11 15270699   /usr/lib/libwx_gtk2ud_adv-2.8.so.0.5.0
b7b02000-b7b03000 rw-p 000c9000 08:11 15270699   /usr/lib/libwx_gtk2ud_adv-2.8.so.0.5.0
b7b03000-b7b05000 rw-p b7b03000 00:00 0
b7b05000-b7b0d000 r-xp 00000000 08:11 15269911   /usr/lib/libixml.so.2.0.4
b7b0d000-b7b0e000 r--p 00007000 08:11 15269911   /usr/lib/libixml.so.2.0.4
b7b0e000-b7b0f000 rw-p 00008000 08:11 15269911   /usr/lib/libixml.so.2.0.4
b7b0f000-b7b13000 r-xp 00000000 08:11 15269967   /usr/lib/libthreadutil.so.2.2.3
b7b13000-b7b14000 r--p 00003000 08:11 15269967   /usr/lib/libthreadutil.so.2.2.3
b7b14000-b7b15000 rw-p 00004000 08:11 15269967   /usr/lib/libthreadutil.so.2.2.3
b7b15000-b7b2f000 r-xp 00000000 08:11 15270052   /usr/lib/libupnp.so.3.0.5
b7b2f000-b7b30000 r--p 00019000 08:11 15270052   /usr/lib/libupnp.so.3.0.5
b7b30000-b7b31000 rw-p 0001a000 08:11 15270052   /usr/lib/libupnp.so.3.0.5
b7b31000-b7b32000 rw-p b7b31000 00:00 0
b7b32000-b7eed000 r-xp 00000000 08:11 15271308   /usr/lib/libcrypto++.so.7.0.0
b7eed000-b7f22000 r--p 003bb000 08:11 15271308   /usr/lib/libcrypto++.so.7.0.0
b7f22000-b7f25000 rw-p 003f0000 08:11 15271308   /usr/lib/libcrypto++.so.7.0.0
b7f25000-b7f28000 rw-p b7f25000 00:00 0
b7f28000-b7f3c000 r-xp 00000000 08:11 15270039   /usr/lib/libz.so.1.2.3.3
b7f3c000-b7f3e000 rw-p 00013000 08:11 15270039   /usr/lib/libz.so.1.2.3.3
b7f3e000-b7f3f000 rw-p b7f3e000 00:00 0
b7f3f000-b801b000 r-xp 00000000 08:11 15272892   /usr/lib/libbfd-2.18.93.20081009.so
b801b000-b8025000 r--p 000dc000 08:11 15272892   /usr/lib/libbfd-2.18.93.20081009.so
b8025000-b8027000 rw-p 000e6000 08:11 15272892   /usr/lib/libbfd-2.18.93.20081009.so
b8027000-b802b000 rw-p b8027000 00:00 0
b802b000-b8040000 r-xp 00000000 08:11 7504262    /lib/tls/i686/cmov/libpthread-2.8.90.so
b8040000-b8041000 r--p 00014000 08:11 7504262    /lib/tls/i686/cmov/libpthread-2.8.90.so
b8041000-b8042000 rw-p 00015000 08:11 7504262    /lib/tls/i686/cmov/libpthread-2.8.90.so
b8042000-b8044000 rw-p b8042000 00:00 0
b8044000-b8045000 r--p 00000000 08:11 15295681   /usr/lib/locale/nl_NL.utf8/LC_PAPER
b8045000-b8046000 r--p 00000000 08:11 15295426   /usr/lib/locale/nl_NL.utf8/LC_NAME
b8046000-b8047000 r--p 00000000 08:11 15426939   /usr/lib/locale/nl_NL.utf8/LC_ADDRESS
b8047000-b8048000 r--p 00000000 08:11 15426940   /usr/lib/locale/nl_NL.utf8/LC_TELEPHONE
b8048000-b8049000 r--p 00000000 08:11 15295677   /usr/lib/locale/nl_NL.utf8/LC_MEASUREMENT
b8049000-b804a000 r--p 00000000 08:11 15426941   /usr/lib/locale/nl_NL.utf8/LC_IDENTIFICATION
b804a000-b804c000 r-xp 00000000 08:11 15278949   /usr/lib/gconv/UTF-32.so
b804c000-b804d000 r--p 00001000 08:11 15278949   /usr/lib/gconv/UTF-32.so
b804d000-b804e000 rw-p 00002000 08:11 15278949   /usr/lib/gconv/UTF-32.so
b804e000-b8055000 r--s 00000000 08:11 15278953   /usr/lib/gconv/gconv-modules.cache
b8055000-b8057000 rw-p b8055000 00:00 0
b8057000-b8071000 r-xp 00000000 08:11 7487687    /lib/ld-2.8.90.so
b8071000-b8072000 r-xp b8071000 00:00 0          [vdso]
b8072000-b8073000 r--p 0001a000 08:11 7487687    /lib/ld-2.8.90.so
b8073000-b8074000 rw-p 0001b000 08:11 7487687    /lib/ld-2.8.90.so
b8074000-bfb74000 rw-p b8074000 00:00 0
bfc56000-bfc73000 rw-p bffe3000 00:00 0          [stack]
bfc73000-bff73000 rw-p bfc73000 00:00 0
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 03, 2009, 07:36:39 AM
And... another high VSZ - SIGABRT crash:

$ free
Code: [Select]
             total       used       free     shared    buffers     cached
Mem:       3111840    2808640     303200          0       1364     739908
-/+ buffers/cache:    2067368    1044472
Swap:      9100780    3877992    5222788

$ ps axl | grep amule
Code: [Select]
0  1000  4989  3850  20   0   3236   780 sync_b D+   pts/1      0:00 grep amule
0  1000  9045  9018  20   0 192572 35544 poll   S+   pts/0      0:03 gdb amule
0  1000  9109  9045  20   0 3144684 1013320 ptrace Tl pts/0   225:53 /usr/bin/amule

Program received signal SIGABRT, Aborted.
[Switching to Thread 0xb46e5b90 (LWP 9188)]
0xb7fed430 in __kernel_vsyscall ()

(gdb) bt
Code: [Select]
#0  0xb7fed430 in __kernel_vsyscall ()
#1  0xb71cc8a0 in raise () from /lib/tls/i686/cmov/libc.so.6
#2  0xb71ce268 in abort () from /lib/tls/i686/cmov/libc.so.6
#3  0x083e9e51 in OnUnhandledException ()
    at ../../../../src/libs/common/MuleDebug.cpp:103
#4  0xb73ef655 in __cxxabiv1::__terminate (
    handler=0x83e9ae0 <OnUnhandledException()>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
#5  0xb73ef692 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
#6  0xb73ef7ca in __cxa_throw (obj=0xb741e8f0, tinfo=0x86e5a6c,
    dest=0xb73efd00 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
#7  0xb73efe23 in operator new (sz=36)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
#8  0x083e3555 in CTimerEvent::Clone (this=0xb46e52ec)
    at ../../src/Timer.cpp:158
#9  0xb7551bb5 in wxEvtHandler::AddPendingEvent (this=0xa49e7d0,
    event=@0xb46e52ec) at ../src/common/event.cpp:1130
#10 0x08190990 in wxPostEvent (dest=0xa49e7d0, event=@0xb46e52ec)
    at /usr/include/wx-2.8/wx/event.h:2565
#11 0x083e3a04 in CTimerThread::Entry (this=0xad20500)
    at ../../src/Timer.cpp:68
---Type <return> to continue, or q <return> to quit---

#12 0xb7550036 in wxThreadInternal::PthreadStart (thread=0xad20500)
    at ../src/unix/threadpsx.cpp:766
#13 0xb755013d in wxPthreadStart (ptr=0xad20500)
    at ../src/unix/threadpsx.cpp:718
#14 0xb7fad50f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
#15 0xb7282a0e in clone () from /lib/tls/i686/cmov/libc.so.6

(bt full)
Code: [Select]
#0  0xb7fed430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb71cc8a0 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0xb71ce268 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0x083e9e51 in OnUnhandledException ()
    at ../../../../src/libs/common/MuleDebug.cpp:103
t = (class std::type_info *) 0x86e5a6c
output = (FILE *) 0xb72fb560
#4  0xb73ef655 in __cxxabiv1::__terminate (
    handler=0x83e9ae0 <OnUnhandledException()>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
No locals.
#5  0xb73ef692 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
No locals.
#6  0xb73ef7ca in __cxa_throw (obj=0xb741e8f0, tinfo=0x86e5a6c,
    dest=0xb73efd00 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
header = <value optimized out>
#7  0xb73efe23 in operator new (sz=36)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
---Type <return> to continue, or q <return> to quit---
handler = <value optimized out>
p = <value optimized out>
#8  0x083e3555 in CTimerEvent::Clone (this=0xb46e52ec)
    at ../../src/Timer.cpp:158
No locals.
#9  0xb7551bb5 in wxEvtHandler::AddPendingEvent (this=0xa49e7d0,
    event=@0xb46e52ec) at ../src/common/event.cpp:1130
eventCopy = <value optimized out>
__FUNCTION__ = "AddPendingEvent"
#10 0x08190990 in wxPostEvent (dest=0xa49e7d0, event=@0xb46e52ec)
    at /usr/include/wx-2.8/wx/event.h:2565
__FUNCTION__ = "wxPostEvent"
#11 0x083e3a04 in CTimerThread::Entry (this=0xad20500)
    at ../../src/Timer.cpp:68
now = 1764790596
sinceLast = 9
timeout = 91
evt = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x85c7608,
      static ms_classInfo = {m_className = 0xb75811a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7a7e8cc, m_next = 0xb75d58c4,
        static sm_classTable = 0xa4713e8}, m_refData = 0x0},
    m_eventObject = 0x0, m_eventType = 10244, m_timeStamp = 0, m_id = 6128,
---Type <return> to continue, or q <return> to quit---
    m_callbackUserData = 0x0, m_propagationLevel = 0, m_skipped = false,
    m_isCommandEvent = false, static ms_classInfo = {m_className = 0xb7592708,
      m_objectSize = 36, m_objectConstructor = 0, m_baseInfo1 = 0xb75d5858,
      m_baseInfo2 = 0x0, static sm_first = 0xb7a7e8cc, m_next = 0xb75d6908,
      static sm_classTable = 0xa4713e8}}, <No data fields>}
lastEvent = 1764790687
#12 0xb7550036 in wxThreadInternal::PthreadStart (thread=0xad20500)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0xa50da30
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#13 0xb755013d in wxPthreadStart (ptr=0xad20500)
    at ../src/unix/threadpsx.cpp:718
No locals.
#14 0xb7fad50f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#15 0xb7282a0e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 03, 2009, 07:39:52 AM
(gdb) thread apply all bt full
Code: [Select]

Thread 5 (Thread 0xb46e5b90 (LWP 9188)):
#0  0xb7fed430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb71cc8a0 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0xb71ce268 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0x083e9e51 in OnUnhandledException ()
    at ../../../../src/libs/common/MuleDebug.cpp:103
t = (class std::type_info *) 0x86e5a6c
output = (FILE *) 0xb72fb560
#4  0xb73ef655 in __cxxabiv1::__terminate (
    handler=0x83e9ae0 <OnUnhandledException()>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
No locals.
#5  0xb73ef692 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
No locals.
#6  0xb73ef7ca in __cxa_throw (obj=0xb741e8f0, tinfo=0x86e5a6c,
    dest=0xb73efd00 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
header = <value optimized out>
---Type <return> to continue, or q <return> to quit---
#7  0xb73efe23 in operator new (sz=36)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
handler = <value optimized out>
p = <value optimized out>
#8  0x083e3555 in CTimerEvent::Clone (this=0xb46e52ec)
    at ../../src/Timer.cpp:158
No locals.
#9  0xb7551bb5 in wxEvtHandler::AddPendingEvent (this=0xa49e7d0,
    event=@0xb46e52ec) at ../src/common/event.cpp:1130
eventCopy = <value optimized out>
__FUNCTION__ = "AddPendingEvent"
#10 0x08190990 in wxPostEvent (dest=0xa49e7d0, event=@0xb46e52ec)
    at /usr/include/wx-2.8/wx/event.h:2565
__FUNCTION__ = "wxPostEvent"
#11 0x083e3a04 in CTimerThread::Entry (this=0xad20500)
    at ../../src/Timer.cpp:68
now = 1764790596
sinceLast = 9
timeout = 91
evt = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x85c7608,
      static ms_classInfo = {m_className = 0xb75811a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7a7e8cc, m_next = 0xb75d58c4,
---Type <return> to continue, or q <return> to quit---
        static sm_classTable = 0xa4713e8}, m_refData = 0x0},
    m_eventObject = 0x0, m_eventType = 10244, m_timeStamp = 0, m_id = 6128,
    m_callbackUserData = 0x0, m_propagationLevel = 0, m_skipped = false,
    m_isCommandEvent = false, static ms_classInfo = {m_className = 0xb7592708,
      m_objectSize = 36, m_objectConstructor = 0, m_baseInfo1 = 0xb75d5858,
      m_baseInfo2 = 0x0, static sm_first = 0xb7a7e8cc, m_next = 0xb75d6908,
      static sm_classTable = 0xa4713e8}}, <No data fields>}
lastEvent = 1764790687
#12 0xb7550036 in wxThreadInternal::PthreadStart (thread=0xad20500)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0xa50da30
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#13 0xb755013d in wxPthreadStart (ptr=0xad20500)
    at ../src/unix/threadpsx.cpp:718
No locals.
#14 0xb7fad50f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#15 0xb7282a0e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 3 (Thread 0xb56e7b90 (LWP 9186)):
---Type <return> to continue, or q <return> to quit---
#0  0xb7fed430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7fb4906 in nanosleep () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0xb7557168 in wxMicroSleep (microseconds=0) at ../src/unix/utilsunx.cpp:191
tmReq = {tv_sec = 1, tv_nsec = 0}
#3  0xb7557191 in wxMilliSleep (milliseconds=1000)
    at ../src/unix/utilsunx.cpp:212
No locals.
#4  0xb754d41d in wxThread::Sleep (milliseconds=1000)
    at ../src/unix/threadpsx.cpp:986
No locals.
#5  0x081fd133 in UploadBandwidthThrottler::Entry (this=0xab83400)
    at ../../src/UploadBandwidthThrottler.cpp:324
timeSinceLastLoop = 0
minFragSize = 1300
doubleSendSize = 2600
bytesToSpend = 1448137
sleepTime = 1000
thisLoopTick = 1764795640
TIME_BETWEEN_UPLOAD_LOOPS = 1
lastLoopTick = 1764795640
realBytesToSpend = 18944999
---Type <return> to continue, or q <return> to quit---
allowedDataRate = 5724160
rememberedSlotCounter = 32
extraSleepTime = 1000
sendLock = {m_isOk = false, m_mutex = @0x0}
#6  0xb7550036 in wxThreadInternal::PthreadStart (thread=0xab83400)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0xab7a750
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#7  0xb755013d in wxPthreadStart (ptr=0xab83400)
    at ../src/unix/threadpsx.cpp:718
No locals.
#8  0xb7fad50f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#9  0xb7282a0e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 1 (Thread 0xb6769700 (LWP 9109)):
#0  0xb7212a18 in _int_malloc () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#1  0xb72148c5 in malloc () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#2  0xb6afcc6a in IA__g_realloc (mem=0x0, n_bytes=20)
    at /build/buildd/glib2.0-2.18.2/glib/gmem.c:170
No locals.
#3  0xb6c795a9 in pango_glyph_string_set_size ()
   from /usr/lib/libpango-1.0.so.0
No symbol table info available.
#4  0xb5a8ce3e in ?? () from /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
No symbol table info available.
#5  0xb6c7ffba in ?? () from /usr/lib/libpango-1.0.so.0
No symbol table info available.
#6  0xb6c932fa in pango_shape () from /usr/lib/libpango-1.0.so.0
No symbol table info available.
#7  0xb6c84e82 in ?? () from /usr/lib/libpango-1.0.so.0
No symbol table info available.
#8  0xb6c85891 in ?? () from /usr/lib/libpango-1.0.so.0
No symbol table info available.
#9  0xb6c875fc in ?? () from /usr/lib/libpango-1.0.so.0
No symbol table info available.
#10 0xb6c897f1 in pango_layout_get_lines () from /usr/lib/libpango-1.0.so.0
No symbol table info available.
#11 0xb7757100 in wxWindow::GetCharHeight (this=0xab6f750)
    at ../src/gtk/window.cpp:3152
font = {<wxFontBase> = {<wxGDIObject> = {<wxObject> = {
---Type <return> to continue, or q <return> to quit---
        _vptr.wxObject = 0x86e2b68, static ms_classInfo = {
          m_className = 0xb75811a4, m_objectSize = 8, m_objectConstructor = 0,
          m_baseInfo1 = 0x0, m_baseInfo2 = 0x0, static sm_first = 0xb7a7e8cc,
          m_next = 0xb75d58c4, static sm_classTable = 0xa4713e8},
        m_refData = 0xb30cb6b8}, static ms_classInfo = {
        m_className = 0xb78ff0c8, m_objectSize = 8,
        m_objectConstructor = 0xb7824070 <wxGDIObject::wxCreateObject()>,
        m_baseInfo1 = 0xb75d5858, m_baseInfo2 = 0x0,
        static sm_first = 0xb7a7e8cc, m_next = 0xb79b1318,
        static sm_classTable = 0xa4713e8}},
    static ms_encodingDefault = wxFONTENCODING_UTF8}, static ms_classInfo = {
    m_className = 0xb78d83b8, m_objectSize = 8,
    m_objectConstructor = 0xb7743300 <wxFont::wxCreateObject()>,
    m_baseInfo1 = 0xb79b1120, m_baseInfo2 = 0x0, static sm_first = 0xb7a7e8cc,
    m_next = 0xb79ad9d4, static sm_classTable = 0xa4713e8}}
context = <value optimized out>
desc = (PangoFontDescription *) 0xaf555f8
layout = (PangoLayout *) 0xaf555f8
rect = {x = -1075912016, y = -1075912072, width = -1215915363,
  height = -1214607372}
__FUNCTION__ = "GetCharHeight"
#12 0xb77d8279 in wxStaticBox::GetBordersForSizer (this=0xab6f750,
    borderTop=0xbfdee2e8, borderOther=0xbfdee2e4) at ../src/gtk/statbox.cpp:163
---Type <return> to continue, or q <return> to quit---
No locals.
#13 0xb7868113 in wxStaticBoxSizer::RecalcSizes (this=0xab6ffc8)
    at ../src/common/sizer.cpp:1937
top_border = 17
other_border = 5
#14 0xb7866c44 in wxSizer::Layout (this=0xab6ffc8)
    at ../src/common/sizer.cpp:880
No locals.
#15 0xb7866ca9 in wxSizer::SetDimension (this=0xab6ffc8, x=0, y=28, width=560,
    height=222) at ../src/common/sizer.cpp:976
No locals.
#16 0xb78687f4 in wxSizerItem::SetDimension (this=0xab79908, pos_=@0xbfdee3c0,
    size_=@0xbfdee3b8) at ../src/common/sizer.cpp:388
__FUNCTION__ = "SetDimension"
#17 0xb7868057 in wxBoxSizer::RecalcSizes (this=0xab6cfd8)
    at ../src/common/sizer.cpp:1751
height = 222
child_pos = {x = 0, y = 28}
child_size = {x = 560, y = 222}
size = {x = 416, y = -1280311216}
item = (wxSizerItem *) 0xab79908
delta = 0
stretchable = 0
---Type <return> to continue, or q <return> to quit---
#18 0xb7866c44 in wxSizer::Layout (this=0xab6cfd8)
    at ../src/common/sizer.cpp:880
No locals.
#19 0xb7866ca9 in wxSizer::SetDimension (this=0xab6cfd8, x=0, y=0, width=560,
    height=250) at ../src/common/sizer.cpp:976
No locals.
#20 0xb78687f4 in wxSizerItem::SetDimension (this=0xab79970, pos_=@0xbfdee474,
    size_=@0xbfdee46c) at ../src/common/sizer.cpp:388
__FUNCTION__ = "SetDimension"
#21 0xb7866dfc in wxGridSizer::SetItemBounds (this=0xab6ce00, item=0xab79970,
    x=0, y=0, w=560, h=250) at ../src/common/sizer.cpp:1385
pt = {x = 0, y = 0}
sz = {x = 560, y = 250}
flag = -1280311216
#22 0xb786ce7e in wxFlexGridSizer::RecalcSizes (this=0xab6ce00)
    at ../src/common/sizer.cpp:1439
w = 560
h = <value optimized out>
i = <value optimized out>
r = 0
y = 0
c = 0
nitems = 2
---Type <return> to continue, or q <return> to quit---
nrows = 1
ncols = 2
sz = {x = 767, y = 250}
x = 0
__FUNCTION__ = "RecalcSizes"
#23 0xb7866c44 in wxSizer::Layout (this=0xab6ce00)
    at ../src/common/sizer.cpp:880
No locals.
#24 0xb7866ca9 in wxSizer::SetDimension (this=0xab6ce00, x=0, y=0, width=767,
    height=250) at ../src/common/sizer.cpp:976
No locals.
#25 0xb78687f4 in wxSizerItem::SetDimension (this=0xab84438, pos_=@0xbfdee5a4,
    size_=@0xbfdee59c) at ../src/common/sizer.cpp:388
__FUNCTION__ = "SetDimension"
#26 0xb7866dfc in wxGridSizer::SetItemBounds (this=0xab6c4b8, item=0xab84438,
    x=0, y=0, w=767, h=250) at ../src/common/sizer.cpp:1385
pt = {x = 0, y = 0}
sz = {x = 767, y = 250}
flag = -1280311216
#27 0xb786ce7e in wxFlexGridSizer::RecalcSizes (this=0xab6c4b8)
    at ../src/common/sizer.cpp:1439
w = 767
h = <value optimized out>
---Type <return> to continue, or q <return> to quit---
i = <value optimized out>
r = 0
y = 0
c = 0
nitems = 1
nrows = 1
ncols = 1
sz = {x = 767, y = 250}
x = 0
__FUNCTION__ = "RecalcSizes"
#28 0xb7866c44 in wxSizer::Layout (this=0xab6c4b8)
    at ../src/common/sizer.cpp:880
No locals.
#29 0xb7866ca9 in wxSizer::SetDimension (this=0xab6c4b8, x=0, y=0, width=767,
    height=250) at ../src/common/sizer.cpp:976
No locals.
#30 0xb787d285 in wxWindowBase::Layout (this=0xab6bec0)
    at ../src/common/wincmn.cpp:1923
No locals.
#31 0x082cbe16 in CKadDlg::UpdateGraph (this=0xab6bec0, update=@0xbfdee770)
    at ../../src/KadDlg.cpp:133
v = {<std::__norm::vector<float*, std::allocator<float*> >> = {<std::__norm::_Vector_base<float*, std::allocator<float*> >> = {
---Type <return> to continue, or q <return> to quit---
      _M_impl = {<std::allocator<float*>> = {<__gnu_cxx::new_allocator<float*>> = {<No data fields>}, <No data fields>}, _M_start = 0xb2d54b18,
        _M_finish = 0xb2d54b24,
        _M_end_of_storage = 0xb2d54b24}}, <No data fields>}, <__gnu_debug::_Safe_sequence<std::__debug::vector<float*, std::allocator<float*> > >> = {<__gnu_debug::_Safe_sequence_base> = {_M_iterators = 0x0, _M_const_iterators = 0x0,
      _M_version = 1}, <No data fields>}, _M_guaranteed_capacity = 3}
apfKad = (
    const class std::__debug::vector<float*, std::allocator<float*> >
     &) @0xbfdee6f8: {<std::__norm::vector<float*, std::allocator<float*> >> = {<std::__norm::_Vector_base<float*, std::allocator<float*> >> = {
      _M_impl = {<std::allocator<float*>> = {<__gnu_cxx::new_allocator<float*>> = {<No data fields>}, <No data fields>}, _M_start = 0xb2d54b18,
        _M_finish = 0xb2d54b24,
        _M_end_of_storage = 0xb2d54b24}}, <No data fields>}, <__gnu_debug::_Safe_sequence<std::__debug::vector<float*, std::allocator<float*> > >> = {<__gnu_debug::_Safe_sequence_base> = {_M_iterators = 0x0, _M_const_iterators = 0x0,
      _M_version = 1}, <No data fields>}, _M_guaranteed_capacity = 3}
nodeCount = 720
label = (class wxStaticText *) 0xab6df68
__FUNCTION__ = "UpdateGraph"
#32 0x082b6989 in CamuleDlg::OnGUITimer (this=0xa8cad88)
    at ../../src/amuleDlg.cpp:1053
---Type <return> to continue, or q <return> to quit---
update = {timestamp = 17022.018, downloads = {18.2969017, 9.44359875,
    17.4852524}, uploads = {447.580963, 451.463715, 435.842255},
  connections = {37, 51, 5}, kadnodes = {716.210815, 705.572937, 720}}
msCur = 17670148
msGraphUpdate = 10000
sStatsUpdate = -1219542188
msPrev1 = 17669852
msPrev5 = 17666071
msPrevStats = 5882631
msPrevGraph = 17670148
#33 0xb7494931 in wxAppConsole::HandleEvent (this=0xa49e7d0,
    handler=0xa8cad88, func=0xb3b00050, event=@0xbfdee894)
    at ../src/common/appbase.cpp:322
No locals.
#34 0xb75515fa in wxEvtHandler::ProcessEventIfMatches (entry=@0x88d0e58,
    handler=0xa8cad88, event=@0xbfdee894) at ../src/common/event.cpp:1230
tableId1 = <value optimized out>
tableId2 = <value optimized out>
#35 0xb7552d84 in wxEventHashTable::HandleEvent (this=0x88d0d00,
    event=@0xbfdee894, self=0xa8cad88) at ../src/common/event.cpp:905
n = 0
count = 1
eventType = 10096
---Type <return> to continue, or q <return> to quit---
eTTnode = (wxEventHashTable::EventTypeTable * const) 0xab6b0c8
#36 0xb7552ed6 in wxEvtHandler::ProcessEvent (this=0xa8cad88,
    event=@0xbfdee894) at ../src/common/event.cpp:1292
__FUNCTION__ = "ProcessEvent"
#37 0xb7875b87 in wxTimerBase::Notify (this=0xac4f9e0)
    at ../src/common/timercmn.cpp:57
event = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x86e7748,
      static ms_classInfo = {m_className = 0xb75811a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7a7e8cc, m_next = 0xb75d58c4,
        static sm_classTable = 0xa4713e8}, m_refData = 0x0},
    m_eventObject = 0xac4f9e0, m_eventType = 10096, m_timeStamp = 0,
    m_id = 6129, m_callbackUserData = 0x0, m_propagationLevel = 0,
    m_skipped = false, m_isCommandEvent = false, static ms_classInfo = {
      m_className = 0xb7592708, m_objectSize = 36, m_objectConstructor = 0,
      m_baseInfo1 = 0xb75d5858, m_baseInfo2 = 0x0,
      static sm_first = 0xb7a7e8cc, m_next = 0xb75d6908,
      static sm_classTable = 0xa4713e8}}, m_interval = 100,
  static ms_classInfo = {m_className = 0xb790f4fc, m_objectSize = 40,
    m_objectConstructor = 0xb78759e0 <wxTimerEvent::wxCreateObject()>,
    m_baseInfo1 = 0xb75d6920, m_baseInfo2 = 0x0, static sm_first = 0xb7a7e8cc,
    m_next = 0xb79b1e08, static sm_classTable = 0xa4713e8}}
__FUNCTION__ = "Notify"
---Type <return> to continue, or q <return> to quit---
#38 0xb774d08d in timeout_callback (data=0xac4f9e0) at ../src/gtk/timer.cpp:43
No locals.
#39 0xb6af4e46 in g_timeout_dispatch (source=0xb3d00508, callback=0xae941da8,
    user_data=0xac4f9e0) at /build/buildd/glib2.0-2.18.2/glib/gmain.c:3589
No locals.
#40 0xb6af4718 in IA__g_main_context_dispatch (context=0xa49e918)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#41 0xb6af7dc3 in g_main_context_iterate (context=0xa49e918, block=1,
    dispatch=1, self=0xa49fec0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 0
timeout = 0
some_ready = 1
nfds = 6
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xb2d0dd90
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#42 0xb6af82e2 in IA__g_main_loop_run (loop=0xb3d00588)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0xa49fec0
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#43 0xb6f263a9 in IA__gtk_main ()
---Type <return> to continue, or q <return> to quit---
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0xb3d00568
loop = (GMainLoop *) 0xb3d00588
#44 0xb774310b in wxEventLoop::Run (this=0xb3d00568)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#45 0xb77e73dc in wxAppBase::MainLoop (this=0xa49e7d0)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0xb3d00568}, m_pp = 0xa49e810,
  m_pOld = 0x0}
#46 0xb77e7131 in wxAppBase::OnRun (this=0xb39110e8)
    at ../src/common/appcmn.cpp:367
No locals.
#47 0xb74dc3fa in wxEntry (argc=@0xb75d46cc, argv=0xa48ce38)
    at ../src/common/init.cpp:460
No locals.
#48 0xb74dc4b7 in wxEntry (argc=@0xbfdeeb80, argv=0xbfdeec04)
    at ../src/common/init.cpp:472
No locals.
#49 0x082ac21d in main (argc=-1281661336, argv=0xb3b07da0)
---Type <return> to continue, or q <return> to quit---
    at ../../src/amule-gui.cpp:95
No locals.
#0  0xb7fed430 in __kernel_vsyscall ()
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 03, 2009, 07:40:42 AM
cat /proc/9109/maps

part 1:
Code: [Select]
b3800000-b381f000 rw-p b3800000 00:00 0
b381f000-b3900000 r--p 00000000 08:11 15295282   /usr/lib/locale/en_GB.utf8/LC_COLLATE
b3900000-b39fd000 rw-p b3900000 00:00 0
b39fd000-b3a00000 ---p b39fd000 00:00 0
b3a00000-b3a6e000 rw-p b3a00000 00:00 0
b3a6e000-b3aad000 r--p 00000000 08:11 15295283   /usr/lib/locale/en_GB.utf8/LC_CTYPE
b3aad000-b3aae000 r--p 00000000 08:11 15295286   /usr/lib/locale/en_GB.utf8/LC_MONETARY
b3aae000-b3aaf000 r--p 00000000 08:11 15295292   /usr/lib/locale/en_GB.utf8/LC_MESSAGES/SYS_LC_MESSAGES
b3aaf000-b3ab0000 r--p 00000000 08:11 15295289   /usr/lib/locale/en_GB.utf8/LC_PAPER
b3ab0000-b3ab1000 r--p 00000000 08:11 15295287   /usr/lib/locale/en_GB.utf8/LC_NAME
b3ab1000-b3ab2000 r--p 00000000 08:11 15295281   /usr/lib/locale/en_GB.utf8/LC_ADDRESS
b3ab2000-b3ab3000 r--p 00000000 08:11 15295290   /usr/lib/locale/en_GB.utf8/LC_TELEPHONE
b3ab3000-b3ab4000 r--p 00000000 08:11 15295285   /usr/lib/locale/en_GB.utf8/LC_MEASUREMENT
b3ab4000-b3ab5000 r--p 00000000 08:11 15295284   /usr/lib/locale/en_GB.utf8/LC_IDENTIFICATION
b3ab5000-b3b00000 r--p 00000000 08:11 15392788   /usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif.ttf
b3b00000-b3bfe000 rw-p b3b00000 00:00 0
b3bfe000-b3c00000 ---p b3bfe000 00:00 0
b3c00000-b3d00000 rw-p b3c00000 00:00 0
b3d00000-b3dfe000 rw-p b3d00000 00:00 0
b3dfe000-b3e00000 ---p b3dfe000 00:00 0
b3e00000-b3e5c000 rw-p b3e00000 00:00 0
b3e5c000-b3ee5000 r--p 00000000 08:11 15392785   /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-Bold.ttf
b3ee5000-b3ee6000 ---p b3ee5000 00:00 0
b3ee6000-b46e6000 rw-p b3ee6000 00:00 0
b46e6000-b46e7000 ---p b46e6000 00:00 0
b46e7000-b4ee7000 rw-p b46e7000 00:00 0
b4ee7000-b4ee8000 ---p b4ee7000 00:00 0
b4ee8000-b56e8000 rw-p b4ee8000 00:00 0
b56e8000-b5719000 r-xp 00000000 08:11 15271619   /usr/lib/libcroco-0.6.so.3.0.1
b5719000-b571c000 rw-p 00030000 08:11 15271619   /usr/lib/libcroco-0.6.so.3.0.1
b571c000-b5734000 r-xp 00000000 08:11 25223171   /usr/lib/gio/modules/libgvfsdbus.so
b5734000-b5735000 r--p 00017000 08:11 25223171   /usr/lib/gio/modules/libgvfsdbus.so
b5735000-b5736000 rw-p 00018000 08:11 25223171   /usr/lib/gio/modules/libgvfsdbus.so
b5736000-b5743000 r-xp 00000000 08:11 15270702   /usr/lib/libgvfscommon.so.0.0.0
b5743000-b5744000 r--p 0000d000 08:11 15270702   /usr/lib/libgvfscommon.so.0.0.0
b5744000-b5745000 rw-p 0000e000 08:11 15270702   /usr/lib/libgvfscommon.so.0.0.0
b5745000-b5756000 rw-p b5745000 00:00 0
b5756000-b578c000 r-xp 00000000 08:11 7487615    /lib/libdbus-1.so.3.4.0
b578c000-b578d000 r--p 00035000 08:11 7487615    /lib/libdbus-1.so.3.4.0
b578d000-b578e000 rw-p 00036000 08:11 7487615    /lib/libdbus-1.so.3.4.0
b578e000-b5797000 rw-p b578e000 00:00 0
b5797000-b57c7000 r-xp 00000000 08:11 15271251   /usr/lib/libgsf-1.so.114.0.8
b57c7000-b57c9000 r--p 0002f000 08:11 15271251   /usr/lib/libgsf-1.so.114.0.8
b57c9000-b57ca000 rw-p 00031000 08:11 15271251   /usr/lib/libgsf-1.so.114.0.8
b57ca000-b57cb000 rw-p b57ca000 00:00 0
b57cb000-b57fc000 r-xp 00000000 08:11 15270040   /usr/lib/librsvg-2.so.2.22.3
b57fc000-b57fd000 r--p 00030000 08:11 15270040   /usr/lib/librsvg-2.so.2.22.3
b57fd000-b57fe000 rw-p 00031000 08:11 15270040   /usr/lib/librsvg-2.so.2.22.3
b57fe000-b5800000 r-xp 00000000 08:11 7504267    /lib/tls/i686/cmov/libutil-2.8.90.so
b5800000-b5801000 r--p 00001000 08:11 7504267    /lib/tls/i686/cmov/libutil-2.8.90.so
b5801000-b5802000 rw-p 00002000 08:11 7504267    /lib/tls/i686/cmov/libutil-2.8.90.so
b5802000-b580c000 rw-p b5802000 00:00 0
b580c000-b581b000 r-xp 00000000 08:11 7488081    /lib/libbz2.so.1.0.4
b581b000-b581c000 r--p 0000f000 08:11 7488081    /lib/libbz2.so.1.0.4
b581c000-b581d000 rw-p 00010000 08:11 7488081    /lib/libbz2.so.1.0.4
b581d000-b582b000 rw-p b581d000 00:00 0
b582b000-b582c000 r--p 00000000 08:11 15295288   /usr/lib/locale/en_GB.utf8/LC_NUMERIC
b582c000-b582d000 r--p 00000000 08:11 15295291   /usr/lib/locale/en_GB.utf8/LC_TIME
b582d000-b582e000 rw-p b582d000 00:00 0
b582e000-b582f000 r-xp 00000000 08:11 15294815   /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so
b582f000-b5830000 r--p 00000000 08:11 15294815   /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so
b5830000-b5831000 rw-p 00001000 08:11 15294815   /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so
b5831000-b5848000 r--s 00000000 08:11 15344031   /usr/share/mime/mime.cache
b5848000-b58f3000 r--p 00000000 08:11 15483943   /usr/share/icons/Tangerine/icon-theme.cache
b58f3000-b59f7000 rw-p b58f3000 00:00 0
b59f7000-b5a8c000 r--p 00000000 08:11 15392784   /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf
b5a8c000-b5a8e000 r-xp 00000000 08:11 15327946   /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
b5a8e000-b5a8f000 r--p 00001000 08:11 15327946   /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
b5a8f000-b5a90000 rw-p 00002000 08:11 15327946   /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
b5a90000-b5a96000 r--s 00000000 08:11 19407431   /var/cache/fontconfig/945677eb7aeaf62f1d50efc3fb3ec7d8-x86.cache-2
b5a96000-b5a99000 r--s 00000000 08:11 19408582   /var/cache/fontconfig/e383d7ea5fbe662a33d9b44caf393297-x86.cache-2
b5a99000-b5a9c000 r--s 00000000 08:11 19407381   /var/cache/fontconfig/a755afe4a08bf5b97852ceb7400b47bc-x86.cache-2
b5a9c000-b5a9f000 r--s 00000000 08:11 19408574   /var/cache/fontconfig/6d41288fd70b0be22e8c3a91e032eec0-x86.cache-2
b5a9f000-b5aa2000 r--s 00000000 08:11 19408573   /var/cache/fontconfig/de156ccd2eddbdc19d37a45b8b2aac9c-x86.cache-2
b5aa2000-b5aaa000 r--s 00000000 08:11 19408570   /var/cache/fontconfig/e3de0de479f42330eadf588a55fb5bf4-x86.cache-2
b5aaa000-b5ab5000 r--s 00000000 08:11 19408583   /var/cache/fontconfig/0f34bcd4b6ee430af32735b75db7f02b-x86.cache-2
b5ab5000-b5ab8000 r--s 00000000 08:11 19408580   /var/cache/fontconfig/de9486f0b47a4d768a594cb4198cb1c6-x86.cache-2
b5ab8000-b5abf000 r--s 00000000 08:11 19406916   /var/cache/fontconfig/d52a8644073d54c13679302ca1180695-x86.cache-2
b5abf000-b5b1f000 rw-s 00000000 00:09 14188560   /SYSV00000000 (deleted)
b5b1f000-b5b7f000 rw-s 00000000 00:09 14155791   /SYSV00000000 (deleted)
b5b7f000-b5b9e000 r-xp 00000000 08:11 15294850   /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
b5b9e000-b5b9f000 r--p 0001e000 08:11 15294850   /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
b5b9f000-b5ba0000 rw-p 0001f000 08:11 15294850   /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
b5ba0000-b5bb0000 r-xp 00000000 08:11 7504263    /lib/tls/i686/cmov/libresolv-2.8.90.so
b5bb0000-b5bb1000 r--p 0000f000 08:11 7504263    /lib/tls/i686/cmov/libresolv-2.8.90.so
b5bb1000-b5bb2000 rw-p 00010000 08:11 7504263    /lib/tls/i686/cmov/libresolv-2.8.90.so
b5bb2000-b5bb4000 rw-p b5bb2000 00:00 0
b5bb4000-b5bb6000 r--s 00000000 08:11 19408581   /var/cache/fontconfig/c69f04ab05004e31a6d5e715764f16d8-x86.cache-2
b5bb6000-b5bb7000 r--s 00000000 08:11 19408568   /var/cache/fontconfig/4c73fe0c47614734b17d736dbde7580a-x86.cache-2
b5bb7000-b5bbd000 r--s 00000000 08:11 19406910   /var/cache/fontconfig/089dead882dea3570ffc31a9898cfb69-x86.cache-2
b5bbd000-b5bc3000 r-xp 00000000 08:11 15294543   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-xpm.so
b5bc3000-b5bc4000 r--p 00005000 08:11 15294543   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-xpm.so
b5bc4000-b5bc5000 rw-p 00006000 08:11 15294543   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-xpm.so
b5bc5000-b5bc6000 ---p b5bc5000 00:00 0
b5bc6000-b63c6000 rw-p b5bc6000 00:00 0
b63c6000-b63cc000 r-xp 00000000 08:11 15271479   /usr/lib/libgailutil.so.18.0.1
b63cc000-b63cd000 r--p 00005000 08:11 15271479   /usr/lib/libgailutil.so.18.0.1
b63cd000-b63ce000 rw-p 00006000 08:11 15271479   /usr/lib/libgailutil.so.18.0.1
b63ce000-b63fd000 r-xp 00000000 08:11 15270570   /usr/lib/libgnomecanvas-2.so.0.2001.0
b63fd000-b63fe000 r--p 0002e000 08:11 15270570   /usr/lib/libgnomecanvas-2.so.0.2001.0
b63fe000-b63ff000 rw-p 0002f000 08:11 15270570   /usr/lib/libgnomecanvas-2.so.0.2001.0
b63ff000-b643d000 r-xp 00000000 08:11 15271569   /usr/lib/libgnomeprintui-2-2.so.0.1.0
b643d000-b643e000 r--p 0003d000 08:11 15271569   /usr/lib/libgnomeprintui-2-2.so.0.1.0
b643e000-b643f000 rw-p 0003e000 08:11 15271569   /usr/lib/libgnomeprintui-2-2.so.0.1.0
b643f000-b6574000 r-xp 00000000 08:11 15271020   /usr/lib/libxml2.so.2.6.32
b6574000-b6575000 ---p 00135000 08:11 15271020   /usr/lib/libxml2.so.2.6.32
b6575000-b6579000 r--p 00135000 08:11 15271020   /usr/lib/libxml2.so.2.6.32
b6579000-b657a000 rw-p 00139000 08:11 15271020   /usr/lib/libxml2.so.2.6.32
b657a000-b657b000 rw-p b657a000 00:00 0
b657b000-b6590000 r-xp 00000000 08:11 15271916   /usr/lib/libart_lgpl_2.so.2.3.20
b6590000-b6592000 rw-p 00014000 08:11 15271916   /usr/lib/libart_lgpl_2.so.2.3.20
b6592000-b65f8000 r-xp 00000000 08:11 15272783   /usr/lib/libgnomeprint-2-2.so.0.1.0
b65f8000-b65f9000 ---p 00066000 08:11 15272783   /usr/lib/libgnomeprint-2-2.so.0.1.0
b65f9000-b65fa000 r--p 00066000 08:11 15272783   /usr/lib/libgnomeprint-2-2.so.0.1.0
b65fa000-b65fb000 rw-p 00067000 08:11 15272783   /usr/lib/libgnomeprint-2-2.so.0.1.0
b65fb000-b6605000 r-xp 00000000 08:11 7504222    /lib/tls/i686/cmov/libnss_files-2.8.90.so
b6605000-b6606000 r--p 00009000 08:11 7504222    /lib/tls/i686/cmov/libnss_files-2.8.90.so
b6606000-b6607000 rw-p 0000a000 08:11 7504222    /lib/tls/i686/cmov/libnss_files-2.8.90.so
b6607000-b6610000 r-xp 00000000 08:11 7504259    /lib/tls/i686/cmov/libnss_nis-2.8.90.so
b6610000-b6611000 r--p 00008000 08:11 7504259    /lib/tls/i686/cmov/libnss_nis-2.8.90.so
b6611000-b6612000 rw-p 00009000 08:11 7504259    /lib/tls/i686/cmov/libnss_nis-2.8.90.so
b6612000-b6627000 r-xp 00000000 08:11 7504219    /lib/tls/i686/cmov/libnsl-2.8.90.so
b6627000-b6628000 r--p 00014000 08:11 7504219    /lib/tls/i686/cmov/libnsl-2.8.90.so
b6628000-b6629000 rw-p 00015000 08:11 7504219    /lib/tls/i686/cmov/libnsl-2.8.90.so
b6629000-b662b000 rw-p b6629000 00:00 0
b662b000-b6632000 r-xp 00000000 08:11 7504220    /lib/tls/i686/cmov/libnss_compat-2.8.90.so
b6632000-b6633000 r--p 00006000 08:11 7504220    /lib/tls/i686/cmov/libnss_compat-2.8.90.so
b6633000-b6634000 rw-p 00007000 08:11 7504220    /lib/tls/i686/cmov/libnss_compat-2.8.90.so
b6634000-b6635000 r--s 00000000 08:11 19406911   /var/cache/fontconfig/4794a0821666d79190d59a36cb4f44b5-x86.cache-2
b6635000-b6637000 r--s 00000000 08:11 19407182   /var/cache/fontconfig/e13b20fdb08344e0e664864cc2ede53d-x86.cache-2
b6637000-b663a000 rw-s 00000000 00:09 14221329   /SYSV00000000 (deleted)
b663a000-b663e000 r-xp 00000000 08:11 7504221    /lib/tls/i686/cmov/libnss_dns-2.8.90.so
b663e000-b663f000 r--p 00003000 08:11 7504221    /lib/tls/i686/cmov/libnss_dns-2.8.90.so
b663f000-b6640000 rw-p 00004000 08:11 7504221    /lib/tls/i686/cmov/libnss_dns-2.8.90.so
b6640000-b6642000 r-xp 00000000 08:11 7487583    /lib/libnss_mdns4_minimal.so.2
b6642000-b6643000 rw-p 00001000 08:11 7487583    /lib/libnss_mdns4_minimal.so.2
b6643000-b6645000 rw-p b6643000 00:00 0
b6645000-b6646000 r--p 00000000 08:11 15295427   /usr/lib/locale/nl_NL.utf8/LC_NUMERIC
b6646000-b6647000 r--p 00000000 08:11 15426937   /usr/lib/locale/nl_NL.utf8/LC_TIME
b6647000-b6728000 r--p 00000000 08:11 15295674   /usr/lib/locale/nl_NL.utf8/LC_COLLATE
b6728000-b6729000 r--p 00000000 08:11 15426938   /usr/lib/locale/nl_NL.utf8/LC_MONETARY
b6729000-b672a000 r--p 00000000 08:11 15295227   /usr/lib/locale/nl_NL.utf8/LC_MESSAGES/SYS_LC_MESSAGES
b672a000-b6769000 r--p 00000000 08:11 15295675   /usr/lib/locale/nl_NL.utf8/LC_CTYPE
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 03, 2009, 07:43:43 AM
part 2:
Code: [Select]
TYPE
b6769000-b676d000 rw-p b6769000 00:00 0
b676d000-b6771000 r-xp 00000000 08:11 15270153   /usr/lib/libXdmcp.so.6.0.0
b6771000-b6772000 rw-p 00003000 08:11 15270153   /usr/lib/libXdmcp.so.6.0.0
b6772000-b6774000 r-xp 00000000 08:11 15270151   /usr/lib/libXau.so.6.0.0
b6774000-b6775000 rw-p 00001000 08:11 15270151   /usr/lib/libXau.so.6.0.0
b6775000-b677b000 r-xp 00000000 08:11 15271817   /usr/lib/libxcb-render.so.0.0.0
b677b000-b677c000 r--p 00005000 08:11 15271817   /usr/lib/libxcb-render.so.0.0.0
b677c000-b677d000 rw-p 00006000 08:11 15271817   /usr/lib/libxcb-render.so.0.0.0
b677d000-b6780000 r-xp 00000000 08:11 15271819   /usr/lib/libxcb-render-util.so.0.0.0
b6780000-b6781000 r--p 00002000 08:11 15271819   /usr/lib/libxcb-render-util.so.0.0.0
b6781000-b6782000 rw-p 00003000 08:11 15271819   /usr/lib/libxcb-render-util.so.0.0.0
b6782000-b6783000 rw-p b6782000 00:00 0
b6783000-b67c2000 r-xp 00000000 08:11 15271815   /usr/lib/libpixman-1.so.0.12.0
b67c2000-b67c4000 r--p 0003e000 08:11 15271815   /usr/lib/libpixman-1.so.0.12.0
b67c4000-b67c5000 rw-p 00040000 08:11 15271815   /usr/lib/libpixman-1.so.0.12.0
b67c5000-b67dc000 r-xp 00000000 08:11 15270845   /usr/lib/libxcb.so.1.0.0
b67dc000-b67dd000 r--p 00016000 08:11 15270845   /usr/lib/libxcb.so.1.0.0
b67dd000-b67de000 rw-p 00017000 08:11 15270845   /usr/lib/libxcb.so.1.0.0
b67de000-b67df000 r-xp 00000000 08:11 15270854   /usr/lib/libxcb-xlib.so.0.0.0
b67df000-b67e0000 r--p 00000000 08:11 15270854   /usr/lib/libxcb-xlib.so.0.0.0
b67e0000-b67e1000 rw-p 00001000 08:11 15270854   /usr/lib/libxcb-xlib.so.0.0.0
b67e1000-b67f6000 r-xp 00000000 08:11 15271181   /usr/lib/libICE.so.6.3.0
b67f6000-b67f7000 rw-p 00014000 08:11 15271181   /usr/lib/libICE.so.6.3.0
b67f7000-b67f9000 rw-p b67f7000 00:00 0
b67f9000-b6821000 r-xp 00000000 08:11 7487563    /lib/libpcre.so.3.12.1
b6821000-b6822000 r--p 00027000 08:11 7487563    /lib/libpcre.so.3.12.1
b6822000-b6823000 rw-p 00028000 08:11 7487563    /lib/libpcre.so.3.12.1
b6823000-b6824000 rw-p b6823000 00:00 0
b6824000-b6848000 r-xp 00000000 08:11 15270076   /usr/lib/libexpat.so.1.5.2
b6848000-b684a000 r--p 00023000 08:11 15270076   /usr/lib/libexpat.so.1.5.2
b684a000-b684b000 rw-p 00025000 08:11 15270076   /usr/lib/libexpat.so.1.5.2
b684b000-b6863000 r-xp 00000000 08:11 7487527    /lib/libselinux.so.1
b6863000-b6864000 r--p 00017000 08:11 7487527    /lib/libselinux.so.1
b6864000-b6865000 rw-p 00018000 08:11 7487527    /lib/libselinux.so.1
b6865000-b686d000 r-xp 00000000 08:11 15271224   /usr/lib/libXcursor.so.1.0.2
b686d000-b686e000 rw-p 00007000 08:11 15271224   /usr/lib/libXcursor.so.1.0.2
b686e000-b6873000 r-xp 00000000 08:11 15271241   /usr/lib/libXrandr.so.2.1.0
b6873000-b6874000 r--p 00005000 08:11 15271241   /usr/lib/libXrandr.so.2.1.0
b6874000-b6875000 rw-p 00006000 08:11 15271241   /usr/lib/libXrandr.so.2.1.0
b6875000-b687d000 r-xp 00000000 08:11 15270301   /usr/lib/libXi.so.6.0.0
b687d000-b687e000 r--p 00007000 08:11 15270301   /usr/lib/libXi.so.6.0.0
b687e000-b687f000 rw-p 00008000 08:11 15270301   /usr/lib/libXi.so.6.0.0
b687f000-b6880000 rw-p b687f000 00:00 0
b6880000-b6888000 r-xp 00000000 08:11 15270900   /usr/lib/libXrender.so.1.3.0
b6888000-b6889000 r--p 00007000 08:11 15270900   /usr/lib/libXrender.so.1.3.0
b6889000-b688a000 rw-p 00008000 08:11 15270900   /usr/lib/libXrender.so.1.3.0
b688a000-b6897000 r-xp 00000000 08:11 15270035   /usr/lib/libXext.so.6.4.0
b6897000-b6899000 rw-p 0000c000 08:11 15270035   /usr/lib/libXext.so.6.4.0
b6899000-b6909000 r-xp 00000000 08:11 15271821   /usr/lib/libcairo.so.2.10800.0
b6909000-b690b000 r--p 0006f000 08:11 15271821   /usr/lib/libcairo.so.2.10800.0
b690b000-b690c000 rw-p 00071000 08:11 15271821   /usr/lib/libcairo.so.2.10800.0
b690c000-b6910000 r-xp 00000000 08:11 15271234   /usr/lib/libXfixes.so.3.1.0
b6910000-b6911000 rw-p 00003000 08:11 15271234   /usr/lib/libXfixes.so.3.1.0
b6911000-b6913000 r-xp 00000000 08:11 15271221   /usr/lib/libXdamage.so.1.1.0
b6913000-b6914000 rw-p 00001000 08:11 15271221   /usr/lib/libXdamage.so.1.1.0
b6914000-b6915000 rw-p b6914000 00:00 0
b6915000-b6917000 r-xp 00000000 08:11 15271890   /usr/lib/libXcomposite.so.1.0.0
b6917000-b6918000 r--p 00001000 08:11 15271890   /usr/lib/libXcomposite.so.1.0.0
b6918000-b6919000 rw-p 00002000 08:11 15271890   /usr/lib/libXcomposite.so.1.0.0
b6919000-b6a04000 r-xp 00000000 08:11 15270878   /usr/lib/libX11.so.6.2.0
b6a04000-b6a05000 r--p 000ea000 08:11 15270878   /usr/lib/libX11.so.6.2.0
b6a05000-b6a07000 rw-p 000eb000 08:11 15270878   /usr/lib/libX11.so.6.2.0
b6a07000-b6a08000 rw-p b6a07000 00:00 0
b6a08000-b6a11000 r-xp 00000000 08:11 15271988   /usr/lib/libpangocairo-1.0.so.0.2202.0
b6a11000-b6a12000 r--p 00008000 08:11 15271988   /usr/lib/libpangocairo-1.0.so.0.2202.0
b6a12000-b6a13000 rw-p 00009000 08:11 15271988   /usr/lib/libpangocairo-1.0.so.0.2202.0
b6a13000-b6a65000 r-xp 00000000 08:11 15271453   /usr/lib/libtiff.so.4.2.1
b6a65000-b6a67000 r--p 00052000 08:11 15271453   /usr/lib/libtiff.so.4.2.1
b6a67000-b6a68000 rw-p 00054000 08:11 15271453   /usr/lib/libtiff.so.4.2.1
b6a68000-b6a69000 rw-p b6a68000 00:00 0
b6a69000-b6a88000 r-xp 00000000 08:11 15271751   /usr/lib/libjpeg.so.62.0.0
b6a88000-b6a89000 rw-p 0001e000 08:11 15271751   /usr/lib/libjpeg.so.62.0.0
b6a89000-b6aad000 r-xp 00000000 08:11 15271301   /usr/lib/libpng12.so.0.27.0
b6aad000-b6aae000 r--p 00023000 08:11 15271301   /usr/lib/libpng12.so.0.27.0
b6aae000-b6aaf000 rw-p 00024000 08:11 15271301   /usr/lib/libpng12.so.0.27.0
b6aaf000-b6ab6000 r-xp 00000000 08:11 15270840   /usr/lib/libSM.so.6.0.0
b6ab6000-b6ab7000 r--p 00006000 08:11 15270840   /usr/lib/libSM.so.6.0.0
b6ab7000-b6ab8000 rw-p 00007000 08:11 15270840   /usr/lib/libSM.so.6.0.0
b6ab8000-b6aba000 r-xp 00000000 08:11 15271225   /usr/lib/libXinerama.so.1.0.0
b6aba000-b6abb000 rw-p 00001000 08:11 15271225   /usr/lib/libXinerama.so.1.0.0
b6abb000-b6b70000 r-xp 00000000 08:11 15271534   /usr/lib/libglib-2.0.so.0.1800.2
b6b70000-b6b71000 r--p 000b4000 08:11 15271534   /usr/lib/libglib-2.0.so.0.1800.2
b6b71000-b6b72000 rw-p 000b5000 08:11 15271534   /usr/lib/libglib-2.0.so.0.1800.2
b6b72000-b6b79000 r-xp 00000000 08:11 7504264    /lib/tls/i686/cmov/librt-2.8.90.so
b6b79000-b6b7a000 r--p 00007000 08:11 7504264    /lib/tls/i686/cmov/librt-2.8.90.so
b6b7a000-b6b7b000 rw-p 00008000 08:11 7504264    /lib/tls/i686/cmov/librt-2.8.90.so
b6b7b000-b6b7c000 rw-p b6b7b000 00:00 0
b6b7c000-b6b80000 r-xp 00000000 08:11 15271550   /usr/lib/libgthread-2.0.so.0.1800.2
b6b80000-b6b81000 r--p 00003000 08:11 15271550   /usr/lib/libgthread-2.0.so.0.1800.2
b6b81000-b6b82000 rw-p 00004000 08:11 15271550   /usr/lib/libgthread-2.0.so.0.1800.2
b6b82000-b6b85000 r-xp 00000000 08:11 15271540   /usr/lib/libgmodule-2.0.so.0.1800.2
b6b85000-b6b86000 r--p 00002000 08:11 15271540   /usr/lib/libgmodule-2.0.so.0.1800.2
b6b86000-b6b87000 rw-p 00003000 08:11 15271540   /usr/lib/libgmodule-2.0.so.0.1800.2
b6b87000-b6bc3000 r-xp 00000000 08:11 15271542   /usr/lib/libgobject-2.0.so.0.1800.2
b6bc3000-b6bc4000 r--p 0003b000 08:11 15271542   /usr/lib/libgobject-2.0.so.0.1800.2
b6bc4000-b6bc5000 rw-p 0003c000 08:11 15271542   /usr/lib/libgobject-2.0.so.0.1800.2
b6bc5000-b6bf0000 r-xp 00000000 08:11 15270073   /usr/lib/libfontconfig.so.1.3.0
b6bf0000-b6bf1000 r--p 0002a000 08:11 15270073   /usr/lib/libfontconfig.so.1.3.0
b6bf1000-b6bf2000 rw-p 0002b000 08:11 15270073   /usr/lib/libfontconfig.so.1.3.0
b6bf2000-b6c63000 r-xp 00000000 08:11 15270721   /usr/lib/libfreetype.so.6.3.18
b6c63000-b6c67000 r--p 00070000 08:11 15270721   /usr/lib/libfreetype.so.6.3.18
b6c67000-b6c68000 rw-p 00074000 08:11 15270721   /usr/lib/libfreetype.so.6.3.18
b6c68000-b6ca8000 r-xp 00000000 08:11 15271329   /usr/lib/libpango-1.0.so.0.2202.0
b6ca8000-b6ca9000 ---p 00040000 08:11 15271329   /usr/lib/libpango-1.0.so.0.2202.0
b6ca9000-b6caa000 r--p 00040000 08:11 15271329   /usr/lib/libpango-1.0.so.0.2202.0
b6caa000-b6cab000 rw-p 00041000 08:11 15271329   /usr/lib/libpango-1.0.so.0.2202.0
b6cab000-b6cac000 rw-p b6cab000 00:00 0
b6cac000-b6d11000 r-xp 00000000 08:11 15271504   /usr/lib/libgio-2.0.so.0.1800.2
b6d11000-b6d12000 ---p 00065000 08:11 15271504   /usr/lib/libgio-2.0.so.0.1800.2
b6d12000-b6d13000 r--p 00065000 08:11 15271504   /usr/lib/libgio-2.0.so.0.1800.2
b6d13000-b6d14000 rw-p 00066000 08:11 15271504   /usr/lib/libgio-2.0.so.0.1800.2
b6d14000-b6d2c000 r-xp 00000000 08:11 15271669   /usr/lib/libgdk_pixbuf-2.0.so.0.1400.4
b6d2c000-b6d2d000 r--p 00017000 08:11 15271669   /usr/lib/libgdk_pixbuf-2.0.so.0.1400.4
b6d2d000-b6d2e000 rw-p 00018000 08:11 15271669   /usr/lib/libgdk_pixbuf-2.0.so.0.1400.4
b6d2e000-b6d54000 r-xp 00000000 08:11 15271989   /usr/lib/libpangoft2-1.0.so.0.2202.0
b6d54000-b6d55000 r--p 00025000 08:11 15271989   /usr/lib/libpangoft2-1.0.so.0.2202.0
b6d55000-b6d56000 rw-p 00026000 08:11 15271989   /usr/lib/libpangoft2-1.0.so.0.2202.0
b6d56000-b6d6f000 r-xp 00000000 08:11 15270990   /usr/lib/libatk-1.0.so.0.2409.1
b6d6f000-b6d71000 r--p 00018000 08:11 15270990   /usr/lib/libatk-1.0.so.0.2409.1
b6d71000-b6d72000 rw-p 0001a000 08:11 15270990   /usr/lib/libatk-1.0.so.0.2409.1
b6d72000-b6dfa000 r-xp 00000000 08:11 15271567   /usr/lib/libgdk-x11-2.0.so.0.1400.4
b6dfa000-b6dfb000 ---p 00088000 08:11 15271567   /usr/lib/libgdk-x11-2.0.so.0.1400.4
b6dfb000-b6dfd000 r--p 00088000 08:11 15271567   /usr/lib/libgdk-x11-2.0.so.0.1400.4
b6dfd000-b6dfe000 rw-p 0008a000 08:11 15271567   /usr/lib/libgdk-x11-2.0.so.0.1400.4
b6dfe000-b6dff000 rw-p b6dfe000 00:00 0
b6dff000-b7194000 r-xp 00000000 08:11 15271671   /usr/lib/libgtk-x11-2.0.so.0.1400.4
b7194000-b7195000 ---p 00395000 08:11 15271671   /usr/lib/libgtk-x11-2.0.so.0.1400.4
b7195000-b7199000 r--p 00395000 08:11 15271671   /usr/lib/libgtk-x11-2.0.so.0.1400.4
b7199000-b719b000 rw-p 00399000 08:11 15271671   /usr/lib/libgtk-x11-2.0.so.0.1400.4
b719b000-b719d000 rw-p b719b000 00:00 0
b719d000-b719f000 r-xp 00000000 08:11 7504213    /lib/tls/i686/cmov/libdl-2.8.90.so
b719f000-b71a0000 r--p 00001000 08:11 7504213    /lib/tls/i686/cmov/libdl-2.8.90.so
b71a0000-b71a1000 rw-p 00002000 08:11 7504213    /lib/tls/i686/cmov/libdl-2.8.90.so
b71a1000-b72f9000 r-xp 00000000 08:11 7504210    /lib/tls/i686/cmov/libc-2.8.90.so
b72f9000-b72fb000 r--p 00158000 08:11 7504210    /lib/tls/i686/cmov/libc-2.8.90.so
b72fb000-b72fc000 rw-p 0015a000 08:11 7504210    /lib/tls/i686/cmov/libc-2.8.90.so
b72fc000-b72ff000 rw-p b72fc000 00:00 0
b72ff000-b730c000 r-xp 00000000 08:11 7487509    /lib/libgcc_s.so.1
b730c000-b730d000 r--p 0000c000 08:11 7487509    /lib/libgcc_s.so.1
b730d000-b730e000 rw-p 0000d000 08:11 7487509    /lib/libgcc_s.so.1
b730e000-b7332000 r-xp 00000000 08:11 7504214    /lib/tls/i686/cmov/libm-2.8.90.so
b7332000-b7333000 r--p 00023000 08:11 7504214    /lib/tls/i686/cmov/libm-2.8.90.so
b7333000-b7334000 rw-p 00024000 08:11 7504214    /lib/tls/i686/cmov/libm-2.8.90.so
b7334000-b7335000 rw-p b7334000 00:00 0
b7335000-b7418000 r-xp 00000000 08:11 15271202   /usr/lib/libstdc++.so.6.0.10
b7418000-b741c000 r--p 000e3000 08:11 15271202   /usr/lib/libstdc++.so.6.0.10
b741c000-b741d000 rw-p 000e7000 08:11 15271202   /usr/lib/libstdc++.so.6.0.10
b741d000-b7423000 rw-p b741d000 00:00 0
b7423000-b7449000 r-xp 00000000 08:11 15271167   /usr/lib/libGeoIP.so.1.4.4
b7449000-b744a000 r--p 00025000 08:11 15271167   /usr/lib/libGeoIP.so.1.4.4
b744a000-b744b000 rw-p 00026000 08:11 15271167   /usr/lib/libGeoIP.so.1.4.4
b744b000-b75c9000 r-xp 00000000 08:11 15272509   /usr/lib/libwx_baseud-2.8.so.0.5.0
b75c9000-b75cd000 r--p 0017d000 08:11 15272509   /usr/lib/libwx_baseud-2.8.so.0.5.0
b75cd000-b75cf000 rw-p 00181000 08:11 15272509   /usr/lib/libwx_baseud-2.8.so.0.5.0
b75cf000-b75d7000 rw-p b75cf000 00:00 0
b75d7000-b7604000 r-xp 00000000 08:11 15272510   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b7604000-b7605000 ---p 0002d000 08:11 15272510   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b7605000-b7606000 r--p 0002d000 08:11 15272510   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b7606000-b7607000 rw-p 0002e000 08:11 15272510   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b7607000-b7982000 r-xp 00000000 08:11 15271028   /usr/lib/libwx_gtk2ud_core-2.8.so.0.5.0
b7982000-b79a9000 r--p 0037a000 08:11 15271028   /usr/lib/libwx_gtk2ud_core-2.8.so.0.5.0
b79a9000-b79ae000 rw-p 003a1000 08:11 15271028   /usr/lib/libwx_gtk2ud_core-2.8.so.0.5.0
b79ae000-b79b5000 rw-p b79ae000 00:00 0
b79b5000-b7a76000 r-xp 00000000 08:11 15270699   /usr/lib/libwx_gtk2ud_adv-2.8.so.0.5.0
b7a76000-b7a7e000 r--p 000c1000 08:11 15270699   /usr/lib/libwx_gtk2ud_adv-2.8.so.0.5.0
b7a7e000-b7a7f000 rw-p 000c9000 08:11 15270699   /usr/lib/libwx_gtk2ud_adv-2.8.so.0.5.0
b7a7f000-b7a81000 rw-p b7a7f000 00:00 0
b7a81000-b7a89000 r-xp 00000000 08:11 15269911   /usr/lib/libixml.so.2.0.4
b7a89000-b7a8a000 r--p 00007000 08:11 15269911   /usr/lib/libixml.so.2.0.4
b7a8a000-b7a8b000 rw-p 00008000 08:11 15269911   /usr/lib/libixml.so.2.0.4
b7a8b000-b7a8f000 r-xp 00000000 08:11 15269967   /usr/lib/libthreadutil.so.2.2.3
b7a8f000-b7a90000 r--p 00003000 08:11 15269967   /usr/lib/libthreadutil.so.2.2.3
b7a90000-b7a91000 rw-p 00004000 08:11 15269967   /usr/lib/libthreadutil.so.2.2.3
b7a91000-b7aab000 r-xp 00000000 08:11 15270052   /usr/lib/libupnp.so.3.0.5
b7aab000-b7aac000 r--p 00019000 08:11 15270052   /usr/lib/libupnp.so.3.0.5
b7aac000-b7aad000 rw-p 0001a000 08:11 15270052   /usr/lib/libupnp.so.3.0.5
b7aad000-b7aae000 rw-p b7aad000 00:00 0
b7aae000-b7e69000 r-xp 00000000 08:11 15271308   /usr/lib/libcrypto++.so.7.0.0
b7e69000-b7e9e000 r--p 003bb000 08:11 15271308   /usr/lib/libcrypto++.so.7.0.0
b7e9e000-b7ea1000 rw-p 003f0000 08:11 15271308   /usr/lib/libcrypto++.so.7.0.0
b7ea1000-b7ea4000 rw-p b7ea1000 00:00 0
b7ea4000-b7eb8000 r-xp 00000000 08:11 15270039   /usr/lib/libz.so.1.2.3.3
b7eb8000-b7eba000 rw-p 00013000 08:11 15270039   /usr/lib/libz.so.1.2.3.3
b7eba000-b7ebb000 rw-p b7eba000 00:00 0
b7ebb000-b7f97000 r-xp 00000000 08:11 15272892   /usr/lib/libbfd-2.18.93.20081009.so
b7f97000-b7fa1000 r--p 000dc000 08:11 15272892   /usr/lib/libbfd-2.18.93.20081009.so
b7fa1000-b7fa3000 rw-p 000e6000 08:11 15272892   /usr/lib/libbfd-2.18.93.20081009.so
b7fa3000-b7fa7000 rw-p b7fa3000 00:00 0
b7fa7000-b7fbc000 r-xp 00000000 08:11 7504262    /lib/tls/i686/cmov/libpthread-2.8.90.so
b7fbc000-b7fbd000 r--p 00014000 08:11 7504262    /lib/tls/i686/cmov/libpthread-2.8.90.so
b7fbd000-b7fbe000 rw-p 00015000 08:11 7504262    /lib/tls/i686/cmov/libpthread-2.8.90.so
b7fbe000-b7fc0000 rw-p b7fbe000 00:00 0
b7fc0000-b7fc1000 r--p 00000000 08:11 15295681   /usr/lib/locale/nl_NL.utf8/LC_PAPER
b7fc1000-b7fc2000 r--p 00000000 08:11 15295426   /usr/lib/locale/nl_NL.utf8/LC_NAME
b7fc2000-b7fc3000 r--p 00000000 08:11 15426939   /usr/lib/locale/nl_NL.utf8/LC_ADDRESS
b7fc3000-b7fc4000 r--p 00000000 08:11 15426940   /usr/lib/locale/nl_NL.utf8/LC_TELEPHONE
b7fc4000-b7fc5000 r--p 00000000 08:11 15295677   /usr/lib/locale/nl_NL.utf8/LC_MEASUREMENT
b7fc5000-b7fc6000 r--p 00000000 08:11 15426941   /usr/lib/locale/nl_NL.utf8/LC_IDENTIFICATION
b7fc6000-b7fc8000 r-xp 00000000 08:11 15278949   /usr/lib/gconv/UTF-32.so
b7fc8000-b7fc9000 r--p 00001000 08:11 15278949   /usr/lib/gconv/UTF-32.so
b7fc9000-b7fca000 rw-p 00002000 08:11 15278949   /usr/lib/gconv/UTF-32.so
b7fca000-b7fd1000 r--s 00000000 08:11 15278953   /usr/lib/gconv/gconv-modules.cache
b7fd1000-b7fd3000 rw-p b7fd1000 00:00 0
b7fd3000-b7fed000 r-xp 00000000 08:11 7487687    /lib/ld-2.8.90.so
b7fed000-b7fee000 r-xp b7fed000 00:00 0          [vdso]
b7fee000-b7fef000 r--p 0001a000 08:11 7487687    /lib/ld-2.8.90.so
b7fef000-b7ff0000 rw-p 0001b000 08:11 7487687    /lib/ld-2.8.90.so
b8000000-bfd00000 rw-p b8000000 00:00 0
bfdd5000-bfdf0000 rw-p bffe5000 00:00 0          [stack]
bfe00000-c0000000 rw-p bfe00000 00:00 0
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on April 03, 2009, 06:05:36 PM
Fantastic job RRM.

For the moment we don't need more backtraces, unless it is one with ?? symbol at the 2nd entry.

Thanks, Bill
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 03, 2009, 07:39:15 PM
OK, i got that.
Thank you!
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 04, 2009, 07:57:11 PM
Ok, after a number of 'normal' (non-??) crashes, i finally got one,
but then again, not completely!!!  ???

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb67a9700 (LWP 29935)]
0xb34d17cb in ?? ()

(gdb) bt
Code: [Select]
#0  0xb34d17cb in ?? ()
#1  0xb6dcd4af in gdk_io_invoke (source=0xa60b91c,
    condition=<value optimized out>, data=0x2)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
#2  0xbfc2cfa8 in ?? ()
Backtrace stopped: previous frame inner to this frame (corrupt stack?)

(gdb) bt full
Code: [Select]
#0  0xb34d17cb in ?? ()
No symbol table info available.
#1  0xb6dcd4af in gdk_io_invoke (source=0xa60b91c,
    condition=<value optimized out>, data=0x2)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = 3008174088
#2  0xbfc2cfa8 in ?? ()
No symbol table info available.
Backtrace stopped: previous frame inner to this frame (corrupt stack?)

(gdb) thread apply all bt full
Code: [Select]
Thread 5 (Thread 0xb4620b90 (LWP 30011)):
#0  0xb802d430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7ff13a2 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
   from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0xb758d6e1 in wxConditionInternal::WaitTimeout (this=0xa67b3c0,
    milliseconds=100) at ../src/unix/threadpsx.cpp:405
tspec = {tv_sec = 1238867129, tv_nsec = 112000000}
err = <value optimized out>
#3  0xb758d76a in wxCondition::WaitTimeout (this=0xa67b3ac, milliseconds=100)
    at ../include/wx/thrimpl.cpp:256
__FUNCTION__ = "WaitTimeout"
#4  0xb758f524 in wxSemaphoreInternal::WaitTimeout (this=0xa67b3a8,
    milliseconds=100) at ../src/unix/threadpsx.cpp:552
remainingTime = -516
locker = {m_isOk = true, m_mutex = @0xa67b3a8}
#5  0xb758f5aa in wxSemaphore::WaitTimeout (this=0xae9d370, milliseconds=100)
    at ../include/wx/thrimpl.cpp:320
__FUNCTION__ = "WaitTimeout"
#6  0x083e39d4 in CTimerThread::Entry (this=0xae9d350)
    at ../../src/Timer.cpp:64
---Type <return> to continue, or q <return> to quit---
now = 1916547764
sinceLast = 0
timeout = 100
evt = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x85c7608,
      static ms_classInfo = {m_className = 0xb75c11a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7abe8cc, m_next = 0xb76158c4,
        static sm_classTable = 0xa5de3e8}, m_refData = 0x0},
    m_eventObject = 0x0, m_eventType = 10244, m_timeStamp = 0, m_id = 6128,
    m_callbackUserData = 0x0, m_propagationLevel = 0, m_skipped = false,
    m_isCommandEvent = false, static ms_classInfo = {m_className = 0xb75d2708,
      m_objectSize = 36, m_objectConstructor = 0, m_baseInfo1 = 0xb7615858,
      m_baseInfo2 = 0x0, static sm_first = 0xb7abe8cc, m_next = 0xb7616908,
      static sm_classTable = 0xa5de3e8}}, <No data fields>}
lastEvent = 1916547764
#7  0xb7590036 in wxThreadInternal::PthreadStart (thread=0xae9d350)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0xa67aa50
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#8  0xb759013d in wxPthreadStart (ptr=0xae9d350)
    at ../src/unix/threadpsx.cpp:718
---Type <return> to continue, or q <return> to quit---
No locals.
#9  0xb7fed50f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#10 0xb72c2a0e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 3 (Thread 0xb5622b90 (LWP 30006)):
#0  0xb7250cef in malloc_consolidate () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#1  0xb7252a8d in _int_malloc () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0xb72548c5 in malloc () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0xb742fdc7 in operator new (sz=512)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:57
p = <value optimized out>
#4  0x08207384 in __gnu_cxx::new_allocator<ThrottledControlSocket*>::allocate (
    this=0xacee718, __n=128) at /usr/include/c++/4.3/ext/new_allocator.h:92
No locals.
#5  0x082073b1 in std::__norm::_Deque_base<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::_M_allocate_node (this=0xacee718)
    at /usr/include/c++/4.3/bits/stl_deque.h:448
No locals.
---Type <return> to continue, or q <return> to quit---
#6  0x0820744f in std::__norm::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::_M_new_elements_at_front (this=0xacee718,
    __new_elems=6) at /usr/include/c++/4.3/bits/deque.tcc:728
__new_nodes = 1
__i = 1
#7  0x08207517 in std::__norm::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::_M_reserve_elements_at_front (this=0xacee718, __n=6)
    at /usr/include/c++/4.3/bits/stl_deque.h:1635
__vacancies = 0
#8  0x08208463 in std::__norm::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::_M_range_insert_aux<__gnu_debug::_Safe_iterator<std::__norm::_Deque_iterator<ThrottledControlSocket*, ThrottledControlSocket*&, ThrottledControlSocket**>, std::__debug::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> > > > (this=0xacee718, __pos=
      {_M_cur = 0xb5621bcc, _M_first = 0xb5621bac, _M_last = 0xb5621b8c, _M_node = 0xb7ff0000}, __first=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb5621bac, _M_version = 3043105676, _M_prior = 0xb7ff0000, _M_next = 0x60}, _M_current = {_M_cur = 0x7536, _M_first = 0x0, _M_last = 0x1, _M_node = 0xb04dd7e8}}, __last=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb5621b8c, _M_version = 3086942208, _M_prior = 0x60, _M_next = 0x7536}, _M_current = {_M_cur = 0x0, _M_first = 0x1, _M_last = 0xb04dd7e8, _M_node = 0xb04dd8e8}})
    at /usr/include/c++/4.3/bits/deque.tcc:440
---Type <return> to continue, or q <return> to quit---
__new_start = {_M_cur = 0xb745cc8c, _M_first = 0x7fffffff,
  _M_last = 0xfb9087ff, _M_node = 0xb5621b48}
__n = 6
#9  0x08208942 in std::__norm::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::_M_insert_dispatch<__gnu_debug::_Safe_iterator<std::__norm::_Deque_iterator<ThrottledControlSocket*, ThrottledControlSocket*&, ThrottledControlSocket**>, std::__debug::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> > > > (this=0xacee718, __pos=
      {_M_cur = 0xb5621c50, _M_first = 0xb5621c30, _M_last = 0xb5621c10, _M_node = 0xad40608}, __first=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb5621c30, _M_version = 3043105808, _M_prior = 0xad40608, _M_next = 0xb5621c50}, _M_current = {_M_cur = 0xb5621c28, _M_first = 0x820137a, _M_last = 0xacee7a8, _M_node = 0xe9fbb}}, __last=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb5621c10, _M_version = 181667336, _M_prior = 0xb5621c50, _M_next = 0xb5621c28}, _M_current = {_M_cur = 0x820137a, _M_first = 0xacee7a8, _M_last = 0xe9fbb, _M_node = 0xb5621c30}}) at /usr/include/c++/4.3/bits/stl_deque.h:1544
No locals.
#10 0x08208a0e in std::__norm::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::insert<__gnu_debug::_Safe_iterator<std::__norm::_Deque_iterator<ThrottledControlSocket*, ThrottledControlSocket*&, ThrottledControlSocket**>, std::__debug::deque<ThrottledControlSocket*, std::allocator<ThrottledCont---Type <return> to continue, or q <return> to quit---
rolSocket*> > > > (this=0xacee718, __position=
      {_M_cur = 0xb5622090, _M_first = 0xb5622070, _M_last = 0xb5622050, _M_node = 0xb5621f9c}, __first=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb5622070, _M_version = 3043106896, _M_prior = 0xb5621f9c, _M_next = 0xb7252951}, _M_current = {_M_cur = 0x0, _M_first = 0xb73c59c7, _M_last = 0xb745cc8c, _M_node = 0xaa4ae00}}, __last=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb5622050, _M_version = 3043106716, _M_prior = 0xb7252951, _M_next = 0x0}, _M_current = {_M_cur = 0xb73c59c7, _M_first = 0xb745cc8c, _M_last = 0xaa4ae00, _M_node = 0xb5621e08}})
    at /usr/include/c++/4.3/bits/stl_deque.h:1301
No locals.
#11 0x08208c6f in std::__debug::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::insert<__gnu_debug::_Safe_iterator<std::__norm::_Deque_iterator<ThrottledControlSocket*, ThrottledControlSocket*&, ThrottledControlSocket**>, std::__debug::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> > > > (this=0xacee718, __position=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb56221bc, _M_version = 3043107228, _M_prior = 0xb562217c, _M_next = 0x0}, _M_current = {_M_cur = 0x0, _M_first = 0xffffff45, _M_last = 0xffffffff, _M_node = 0x0}}, __first=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb562219c, _M_version = 3043107196, _M_prior = 0x0, _M_next = 0x0}, _M_current = {_M_cur = 0xffffff45, _M_first = 0xffffffff, _M_last = 0x0, _M_node = 0xba}}, __last=
---Type <return> to continue, or q <return> to quit---
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb562217c, _M_version = 0, _M_prior = 0x0, _M_next = 0xffffff45}, _M_current = {_M_cur = 0xffffffff, _M_first = 0x0, _M_last = 0xba, _M_node = 0x7b933e7}})
    at /usr/include/c++/4.3/debug/deque:329
No locals.
#12 0x081fd6a3 in UploadBandwidthThrottler::Entry (this=0xacee700)
    at ../../src/UploadBandwidthThrottler.cpp:376
queueLock = {m_isOk = true, m_mutex = @0xacee714}
spentBytes = 0
spentOverhead = 0
sendLock = {m_isOk = true, m_mutex = @0xacee710}
maxSlot = 186
timeSinceLastLoop = 13
minFragSize = 1300
doubleSendSize = 2600
bytesToSpend = 169647
sleepTime = 1
thisLoopTick = 1916547817
TIME_BETWEEN_UPLOAD_LOOPS = 1
lastLoopTick = 1916547817
realBytesToSpend = 169647079
allowedDataRate = 5724160
rememberedSlotCounter = 5
---Type <return> to continue, or q <return> to quit---
extraSleepTime = 1
sendLock = {m_isOk = false, m_mutex = @0x0}
#13 0xb7590036 in wxThreadInternal::PthreadStart (thread=0xacee700)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0xad40758
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#14 0xb759013d in wxPthreadStart (ptr=0xacee700)
    at ../src/unix/threadpsx.cpp:718
No locals.
#15 0xb7fed50f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#16 0xb72c2a0e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 1 (Thread 0xb67a9700 (LWP 29935)):
#0  0xb34d17cb in ?? ()
No symbol table info available.
#1  0xb6dcd4af in gdk_io_invoke (source=0xa60b91c,
    condition=<value optimized out>, data=0x2)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = 3008174088
---Type <return> to continue, or q <return> to quit---
#2  0xbfc2cfa8 in ?? ()
No symbol table info available.
Backtrace stopped: previous frame inner to this frame (corrupt stack?)
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 04, 2009, 07:59:12 PM
$ ps axl | grep amule
Code: [Select]
0  1000 29897 29838  20   0 195344 189440 poll  S+   pts/0      0:02 gdb amule
0  1000 29935 29897  20   0 189828 106756 ptrace Tl  pts/0     87:54 /usr/bin/amule
0  1000 32185 32113  20   0   2064   520 -      R+   pts/1      0:00 grep amule

$ free
Code: [Select]

             total       used       free     shared    buffers     cached
Mem:       3111840    2935704     176136          0       8088     847924
-/+ buffers/cache:    2079692    1032148
Swap:      9100780    2269352    6831428

cat /proc/29935/maps
part 1:
Code: [Select]
ts/UnDotum.ttf
b1500000-b15f8000 rw-p b1500000 00:00 0
b15f8000-b1600000 ---p b15f8000 00:00 0
b16eb000-b2b00000 r--p 00000000 08:11 15392808   /usr/share/fonts/truetype/arphic/uming.ttc
b2b00000-b2bfd000 rw-p b2b00000 00:00 0
b2bfd000-b2c00000 ---p b2bfd000 00:00 0
b2d00000-b2dfd000 rw-p b2d00000 00:00 0
b2dfd000-b2e00000 ---p b2dfd000 00:00 0
b2e00000-b2ef5000 rw-p b2e00000 00:00 0
b2ef5000-b2f00000 ---p b2ef5000 00:00 0
b2f00000-b2ffd000 rw-p b2f00000 00:00 0
b2ffd000-b3000000 ---p b2ffd000 00:00 0
b3100000-b31ff000 rw-p b3100000 00:00 0
b31ff000-b3200000 ---p b31ff000 00:00 0
b3300000-b33fc000 rw-p b3300000 00:00 0
b33fc000-b3400000 ---p b33fc000 00:00 0
b3400000-b34fd000 rw-p b3400000 00:00 0
b34fd000-b3500000 ---p b34fd000 00:00 0
b3500000-b35fc000 rw-p b3500000 00:00 0
b35fc000-b3600000 ---p b35fc000 00:00 0
b3700000-b37f7000 rw-p b3700000 00:00 0
b37f7000-b3800000 ---p b37f7000 00:00 0
b3900000-b39ff000 rw-p b3900000 00:00 0
b39ff000-b3a00000 ---p b39ff000 00:00 0
b3b00000-b3bfe000 rw-p b3b00000 00:00 0
b3bfe000-b3c00000 ---p b3bfe000 00:00 0
b3c93000-b3d97000 rw-p b3c93000 00:00 0
b3d97000-b3e20000 r--p 00000000 08:11 15392785   /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-Bold.ttf
b3e20000-b3e21000 ---p b3e20000 00:00 0
b3e21000-b4621000 rw-p b3e21000 00:00 0
b4621000-b4622000 ---p b4621000 00:00 0
b4622000-b4e22000 rw-p b4622000 00:00 0
b4e22000-b4e23000 ---p b4e22000 00:00 0
b4e23000-b5623000 rw-p b4e23000 00:00 0
b5623000-b5654000 r-xp 00000000 08:11 15271619   /usr/lib/libcroco-0.6.so.3.0.1
b5654000-b5657000 rw-p 00030000 08:11 15271619   /usr/lib/libcroco-0.6.so.3.0.1
b5657000-b566f000 r-xp 00000000 08:11 25223171   /usr/lib/gio/modules/libgvfsdbus.so
b566f000-b5670000 r--p 00017000 08:11 25223171   /usr/lib/gio/modules/libgvfsdbus.so
b5670000-b5671000 rw-p 00018000 08:11 25223171   /usr/lib/gio/modules/libgvfsdbus.so
b5671000-b567e000 r-xp 00000000 08:11 15270702   /usr/lib/libgvfscommon.so.0.0.0
b567e000-b567f000 r--p 0000d000 08:11 15270702   /usr/lib/libgvfscommon.so.0.0.0
b567f000-b5680000 rw-p 0000e000 08:11 15270702   /usr/lib/libgvfscommon.so.0.0.0
b5680000-b568f000 r-xp 00000000 08:11 7488081    /lib/libbz2.so.1.0.4
b568f000-b5690000 r--p 0000f000 08:11 7488081    /lib/libbz2.so.1.0.4
b5690000-b5691000 rw-p 00010000 08:11 7488081    /lib/libbz2.so.1.0.4
b5691000-b56c7000 r-xp 00000000 08:11 7487615    /lib/libdbus-1.so.3.4.0
b56c7000-b56c8000 r--p 00035000 08:11 7487615    /lib/libdbus-1.so.3.4.0
b56c8000-b56c9000 rw-p 00036000 08:11 7487615    /lib/libdbus-1.so.3.4.0
b56d9000-b5709000 r-xp 00000000 08:11 15271251   /usr/lib/libgsf-1.so.114.0.8
b5709000-b570b000 r--p 0002f000 08:11 15271251   /usr/lib/libgsf-1.so.114.0.8
b570b000-b570c000 rw-p 00031000 08:11 15271251   /usr/lib/libgsf-1.so.114.0.8
b570c000-b570d000 rw-p b570c000 00:00 0
b570d000-b573e000 r-xp 00000000 08:11 15270040   /usr/lib/librsvg-2.so.2.22.3
b573e000-b573f000 r--p 00030000 08:11 15270040   /usr/lib/librsvg-2.so.2.22.3
b573f000-b5740000 rw-p 00031000 08:11 15270040   /usr/lib/librsvg-2.so.2.22.3
b5751000-b57fc000 r--p 00000000 08:11 15483943   /usr/share/icons/Tangerine/icon-theme.cache
b57fc000-b5900000 rw-p b57fc000 00:00 0
b5900000-b59ff000 rw-p b5900000 00:00 0
b59ff000-b5a00000 ---p b59ff000 00:00 0
b5a0b000-b5a22000 r--s 00000000 08:11 15344031   /usr/share/mime/mime.cache
b5a22000-b5a24000 r-xp 00000000 08:11 7504267    /lib/tls/i686/cmov/libutil-2.8.90.so
b5a24000-b5a25000 r--p 00001000 08:11 7504267    /lib/tls/i686/cmov/libutil-2.8.90.so
b5a25000-b5a26000 rw-p 00002000 08:11 7504267    /lib/tls/i686/cmov/libutil-2.8.90.so
b5a29000-b5a2d000 r-xp 00000000 08:11 15294529   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-png.so
b5a2d000-b5a2e000 r--p 00003000 08:11 15294529   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-png.so
b5a2e000-b5a2f000 rw-p 00004000 08:11 15294529   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-png.so
b5a2f000-b5a31000 r-xp 00000000 08:11 15327948   /usr/lib/pango/1.6.0/modules/pango-hangul-fc.so
b5a31000-b5a32000 r--p 00001000 08:11 15327948   /usr/lib/pango/1.6.0/modules/pango-hangul-fc.so
b5a32000-b5a33000 rw-p 00002000 08:11 15327948   /usr/lib/pango/1.6.0/modules/pango-hangul-fc.so
b5a33000-b5a34000 rw-p b5a33000 00:00 0
b5a34000-b5a35000 r-xp 00000000 08:11 15294815   /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so
b5a35000-b5a36000 r--p 00000000 08:11 15294815   /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so
b5a36000-b5a37000 rw-p 00001000 08:11 15294815   /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so
b5a37000-b5acc000 r--p 00000000 08:11 15392784   /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf
b5acc000-b5ace000 r-xp 00000000 08:11 15327946   /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
b5ace000-b5acf000 r--p 00001000 08:11 15327946   /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
b5acf000-b5ad0000 rw-p 00002000 08:11 15327946   /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
b5ad0000-b5ad6000 r--s 00000000 08:11 19407431   /var/cache/fontconfig/945677eb7aeaf62f1d50efc3fb3ec7d8-x86.cache-2
b5ad6000-b5ad9000 r--s 00000000 08:11 19408582   /var/cache/fontconfig/e383d7ea5fbe662a33d9b44caf393297-x86.cache-2
b5ad9000-b5adc000 r--s 00000000 08:11 19407381   /var/cache/fontconfig/a755afe4a08bf5b97852ceb7400b47bc-x86.cache-2
b5adc000-b5adf000 r--s 00000000 08:11 19408574   /var/cache/fontconfig/6d41288fd70b0be22e8c3a91e032eec0-x86.cache-2
b5adf000-b5ae2000 r--s 00000000 08:11 19408573   /var/cache/fontconfig/de156ccd2eddbdc19d37a45b8b2aac9c-x86.cache-2
b5ae2000-b5aea000 r--s 00000000 08:11 19408570   /var/cache/fontconfig/e3de0de479f42330eadf588a55fb5bf4-x86.cache-2
b5aea000-b5af5000 r--s 00000000 08:11 19408583   /var/cache/fontconfig/0f34bcd4b6ee430af32735b75db7f02b-x86.cache-2
b5af5000-b5af8000 r--s 00000000 08:11 19408580   /var/cache/fontconfig/de9486f0b47a4d768a594cb4198cb1c6-x86.cache-2
b5af8000-b5aff000 r--s 00000000 08:11 19406916   /var/cache/fontconfig/d52a8644073d54c13679302ca1180695-x86.cache-2
b5aff000-b5b5f000 rw-s 00000000 00:09 16056336   /SYSV00000000 (deleted)
b5b5f000-b5bbf000 rw-s 00000000 00:09 16023567   /SYSV00000000 (deleted)
b5bbf000-b5bde000 r-xp 00000000 08:11 15294850   /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
b5bde000-b5bdf000 r--p 0001e000 08:11 15294850   /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
b5bdf000-b5be0000 rw-p 0001f000 08:11 15294850   /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
b5be0000-b5bf0000 r-xp 00000000 08:11 7504263    /lib/tls/i686/cmov/libresolv-2.8.90.so
b5bf0000-b5bf1000 r--p 0000f000 08:11 7504263    /lib/tls/i686/cmov/libresolv-2.8.90.so
b5bf1000-b5bf2000 rw-p 00010000 08:11 7504263    /lib/tls/i686/cmov/libresolv-2.8.90.so
b5bf2000-b5bf4000 rw-p b5bf2000 00:00 0
b5bf4000-b5bf6000 r--s 00000000 08:11 19408581   /var/cache/fontconfig/c69f04ab05004e31a6d5e715764f16d8-x86.cache-2
b5bf6000-b5bf7000 r--s 00000000 08:11 19408568   /var/cache/fontconfig/4c73fe0c47614734b17d736dbde7580a-x86.cache-2
b5bf7000-b5bfd000 r--s 00000000 08:11 19406910   /var/cache/fontconfig/089dead882dea3570ffc31a9898cfb69-x86.cache-2
b5bfd000-b5c03000 r-xp 00000000 08:11 15294543   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-xpm.so
b5c03000-b5c04000 r--p 00005000 08:11 15294543   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-xpm.so
b5c04000-b5c05000 rw-p 00006000 08:11 15294543   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-xpm.so
b5c05000-b5c06000 ---p b5c05000 00:00 0
b5c06000-b6406000 rw-p b5c06000 00:00 0
b6406000-b640c000 r-xp 00000000 08:11 15271479   /usr/lib/libgailutil.so.18.0.1
b640c000-b640d000 r--p 00005000 08:11 15271479   /usr/lib/libgailutil.so.18.0.1
b640d000-b640e000 rw-p 00006000 08:11 15271479   /usr/lib/libgailutil.so.18.0.1
b640e000-b643d000 r-xp 00000000 08:11 15270570   /usr/lib/libgnomecanvas-2.so.0.2001.0
b643d000-b643e000 r--p 0002e000 08:11 15270570   /usr/lib/libgnomecanvas-2.so.0.2001.0
b643e000-b643f000 rw-p 0002f000 08:11 15270570   /usr/lib/libgnomecanvas-2.so.0.2001.0
b643f000-b647d000 r-xp 00000000 08:11 15271569   /usr/lib/libgnomeprintui-2-2.so.0.1.0
b647d000-b647e000 r--p 0003d000 08:11 15271569   /usr/lib/libgnomeprintui-2-2.so.0.1.0
b647e000-b647f000 rw-p 0003e000 08:11 15271569   /usr/lib/libgnomeprintui-2-2.so.0.1.0
b647f000-b65b4000 r-xp 00000000 08:11 15271020   /usr/lib/libxml2.so.2.6.32
b65b4000-b65b5000 ---p 00135000 08:11 15271020   /usr/lib/libxml2.so.2.6.32
b65b5000-b65b9000 r--p 00135000 08:11 15271020   /usr/lib/libxml2.so.2.6.32
b65b9000-b65ba000 rw-p 00139000 08:11 15271020   /usr/lib/libxml2.so.2.6.32
b65ba000-b65bb000 rw-p b65ba000 00:00 0
b65bb000-b65d0000 r-xp 00000000 08:11 15271916   /usr/lib/libart_lgpl_2.so.2.3.20
b65d0000-b65d2000 rw-p 00014000 08:11 15271916   /usr/lib/libart_lgpl_2.so.2.3.20
b65d2000-b6638000 r-xp 00000000 08:11 15272783   /usr/lib/libgnomeprint-2-2.so.0.1.0
b6638000-b6639000 ---p 00066000 08:11 15272783   /usr/lib/libgnomeprint-2-2.so.0.1.0
b6639000-b663a000 r--p 00066000 08:11 15272783   /usr/lib/libgnomeprint-2-2.so.0.1.0
b663a000-b663b000 rw-p 00067000 08:11 15272783   /usr/lib/libgnomeprint-2-2.so.0.1.0
b663b000-b6645000 r-xp 00000000 08:11 7504222    /lib/tls/i686/cmov/libnss_files-2.8.90.so
b6645000-b6646000 r--p 00009000 08:11 7504222    /lib/tls/i686/cmov/libnss_files-2.8.90.so
b6646000-b6647000 rw-p 0000a000 08:11 7504222    /lib/tls/i686/cmov/libnss_files-2.8.90.so
b6647000-b6650000 r-xp 00000000 08:11 7504259    /lib/tls/i686/cmov/libnss_nis-2.8.90.so
b6650000-b6651000 r--p 00008000 08:11 7504259    /lib/tls/i686/cmov/libnss_nis-2.8.90.so
b6651000-b6652000 rw-p 00009000 08:11 7504259    /lib/tls/i686/cmov/libnss_nis-2.8.90.so
b6652000-b6667000 r-xp 00000000 08:11 7504219    /lib/tls/i686/cmov/libnsl-2.8.90.so
b6667000-b6668000 r--p 00014000 08:11 7504219    /lib/tls/i686/cmov/libnsl-2.8.90.so
b6668000-b6669000 rw-p 00015000 08:11 7504219    /lib/tls/i686/cmov/libnsl-2.8.90.so
b6669000-b666b000 rw-p b6669000 00:00 0
b666b000-b6672000 r-xp 00000000 08:11 7504220    /lib/tls/i686/cmov/libnss_compat-2.8.90.so
b6672000-b6673000 r--p 00006000 08:11 7504220    /lib/tls/i686/cmov/libnss_compat-2.8.90.so
b6673000-b6674000 rw-p 00007000 08:11 7504220    /lib/tls/i686/cmov/libnss_compat-2.8.90.so
b6674000-b6675000 r--s 00000000 08:11 19406911   /var/cache/fontconfig/4794a0821666d79190d59a36cb4f44b5-x86.cache-2
b6675000-b6677000 r--s 00000000 08:11 19407182   /var/cache/fontconfig/e13b20fdb08344e0e664864cc2ede53d-x86.cache-2
b6677000-b667a000 rw-s 00000000 00:09 16089105   /SYSV00000000 (deleted)
b667a000-b667e000 r-xp 00000000 08:11 7504221    /lib/tls/i686/cmov/libnss_dns-2.8.90.so
b667e000-b667f000 r--p 00003000 08:11 7504221    /lib/tls/i686/cmov/libnss_dns-2.8.90.so
b667f000-b6680000 rw-p 00004000 08:11 7504221    /lib/tls/i686/cmov/libnss_dns-2.8.90.so
b6680000-b6682000 r-xp 00000000 08:11 7487583    /lib/libnss_mdns4_minimal.so.2
b6682000-b6683000 rw-p 00001000 08:11 7487583    /lib/libnss_mdns4_minimal.so.2
b6683000-b6685000 rw-p b6683000 00:00 0
b6685000-b6686000 r--p 00000000 08:11 15295427   /usr/lib/locale/nl_NL.utf8/LC_NUMERIC
b6686000-b6687000 r--p 00000000 08:11 15426937   /usr/lib/locale/nl_NL.utf8/LC_TIME
b6687000-b6768000 r--p 00000000 08:11 15295674   /usr/lib/locale/nl_NL.utf8/LC_COLLATE
b6768000-b6769000 r--p 00000000 08:11 15426938   /usr/lib/locale/nl_NL.utf8/LC_MONETARY
b6769000-b676a000 r--p 00000000 08:11 15295227   /usr/lib/locale/nl_NL.utf8/LC_MESSAGES/SYS_LC_MESSAGES
b676a000-b67a9000 r--p 00000000 08:11 15295675   /usr/lib/locale/nl_NL.utf8/LC_C
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 04, 2009, 08:02:42 PM
part 2:
Code: [Select]
TYPE
b67a9000-b67ad000 rw-p b67a9000 00:00 0
b67ad000-b67b1000 r-xp 00000000 08:11 15270153   /usr/lib/libXdmcp.so.6.0.0
b67b1000-b67b2000 rw-p 00003000 08:11 15270153   /usr/lib/libXdmcp.so.6.0.0
b67b2000-b67b4000 r-xp 00000000 08:11 15270151   /usr/lib/libXau.so.6.0.0
b67b4000-b67b5000 rw-p 00001000 08:11 15270151   /usr/lib/libXau.so.6.0.0
b67b5000-b67bb000 r-xp 00000000 08:11 15271817   /usr/lib/libxcb-render.so.0.0.0
b67bb000-b67bc000 r--p 00005000 08:11 15271817   /usr/lib/libxcb-render.so.0.0.0
b67bc000-b67bd000 rw-p 00006000 08:11 15271817   /usr/lib/libxcb-render.so.0.0.0
b67bd000-b67c0000 r-xp 00000000 08:11 15271819   /usr/lib/libxcb-render-util.so.0.0.0
b67c0000-b67c1000 r--p 00002000 08:11 15271819   /usr/lib/libxcb-render-util.so.0.0.0
b67c1000-b67c2000 rw-p 00003000 08:11 15271819   /usr/lib/libxcb-render-util.so.0.0.0
b67c2000-b67c3000 rw-p b67c2000 00:00 0
b67c3000-b6802000 r-xp 00000000 08:11 15271815   /usr/lib/libpixman-1.so.0.12.0
b6802000-b6804000 r--p 0003e000 08:11 15271815   /usr/lib/libpixman-1.so.0.12.0
b6804000-b6805000 rw-p 00040000 08:11 15271815   /usr/lib/libpixman-1.so.0.12.0
b6805000-b681c000 r-xp 00000000 08:11 15270845   /usr/lib/libxcb.so.1.0.0
b681c000-b681d000 r--p 00016000 08:11 15270845   /usr/lib/libxcb.so.1.0.0
b681d000-b681e000 rw-p 00017000 08:11 15270845   /usr/lib/libxcb.so.1.0.0
b681e000-b681f000 r-xp 00000000 08:11 15270854   /usr/lib/libxcb-xlib.so.0.0.0
b681f000-b6820000 r--p 00000000 08:11 15270854   /usr/lib/libxcb-xlib.so.0.0.0
b6820000-b6821000 rw-p 00001000 08:11 15270854   /usr/lib/libxcb-xlib.so.0.0.0
b6821000-b6836000 r-xp 00000000 08:11 15271181   /usr/lib/libICE.so.6.3.0
b6836000-b6837000 rw-p 00014000 08:11 15271181   /usr/lib/libICE.so.6.3.0
b6837000-b6839000 rw-p b6837000 00:00 0
b6839000-b6861000 r-xp 00000000 08:11 7487563    /lib/libpcre.so.3.12.1
b6861000-b6862000 r--p 00027000 08:11 7487563    /lib/libpcre.so.3.12.1
b6862000-b6863000 rw-p 00028000 08:11 7487563    /lib/libpcre.so.3.12.1
b6863000-b6864000 rw-p b6863000 00:00 0
b6864000-b6888000 r-xp 00000000 08:11 15270076   /usr/lib/libexpat.so.1.5.2
b6888000-b688a000 r--p 00023000 08:11 15270076   /usr/lib/libexpat.so.1.5.2
b688a000-b688b000 rw-p 00025000 08:11 15270076   /usr/lib/libexpat.so.1.5.2
b688b000-b68a3000 r-xp 00000000 08:11 7487527    /lib/libselinux.so.1
b68a3000-b68a4000 r--p 00017000 08:11 7487527    /lib/libselinux.so.1
b68a4000-b68a5000 rw-p 00018000 08:11 7487527    /lib/libselinux.so.1
b68a5000-b68ad000 r-xp 00000000 08:11 15271224   /usr/lib/libXcursor.so.1.0.2
b68ad000-b68ae000 rw-p 00007000 08:11 15271224   /usr/lib/libXcursor.so.1.0.2
b68ae000-b68b3000 r-xp 00000000 08:11 15271241   /usr/lib/libXrandr.so.2.1.0
b68b3000-b68b4000 r--p 00005000 08:11 15271241   /usr/lib/libXrandr.so.2.1.0
b68b4000-b68b5000 rw-p 00006000 08:11 15271241   /usr/lib/libXrandr.so.2.1.0
b68b5000-b68bd000 r-xp 00000000 08:11 15270301   /usr/lib/libXi.so.6.0.0
b68bd000-b68be000 r--p 00007000 08:11 15270301   /usr/lib/libXi.so.6.0.0
b68be000-b68bf000 rw-p 00008000 08:11 15270301   /usr/lib/libXi.so.6.0.0
b68bf000-b68c0000 rw-p b68bf000 00:00 0
b68c0000-b68c8000 r-xp 00000000 08:11 15270900   /usr/lib/libXrender.so.1.3.0
b68c8000-b68c9000 r--p 00007000 08:11 15270900   /usr/lib/libXrender.so.1.3.0
b68c9000-b68ca000 rw-p 00008000 08:11 15270900   /usr/lib/libXrender.so.1.3.0
b68ca000-b68d7000 r-xp 00000000 08:11 15270035   /usr/lib/libXext.so.6.4.0
b68d7000-b68d9000 rw-p 0000c000 08:11 15270035   /usr/lib/libXext.so.6.4.0
b68d9000-b6949000 r-xp 00000000 08:11 15271821   /usr/lib/libcairo.so.2.10800.0
b6949000-b694b000 r--p 0006f000 08:11 15271821   /usr/lib/libcairo.so.2.10800.0
b694b000-b694c000 rw-p 00071000 08:11 15271821   /usr/lib/libcairo.so.2.10800.0
b694c000-b6950000 r-xp 00000000 08:11 15271234   /usr/lib/libXfixes.so.3.1.0
b6950000-b6951000 rw-p 00003000 08:11 15271234   /usr/lib/libXfixes.so.3.1.0
b6951000-b6953000 r-xp 00000000 08:11 15271221   /usr/lib/libXdamage.so.1.1.0
b6953000-b6954000 rw-p 00001000 08:11 15271221   /usr/lib/libXdamage.so.1.1.0
b6954000-b6955000 rw-p b6954000 00:00 0
b6955000-b6957000 r-xp 00000000 08:11 15271890   /usr/lib/libXcomposite.so.1.0.0
b6957000-b6958000 r--p 00001000 08:11 15271890   /usr/lib/libXcomposite.so.1.0.0
b6958000-b6959000 rw-p 00002000 08:11 15271890   /usr/lib/libXcomposite.so.1.0.0
b6959000-b6a44000 r-xp 00000000 08:11 15270878   /usr/lib/libX11.so.6.2.0
b6a44000-b6a45000 r--p 000ea000 08:11 15270878   /usr/lib/libX11.so.6.2.0
b6a45000-b6a47000 rw-p 000eb000 08:11 15270878   /usr/lib/libX11.so.6.2.0
b6a47000-b6a48000 rw-p b6a47000 00:00 0
b6a48000-b6a51000 r-xp 00000000 08:11 15271988   /usr/lib/libpangocairo-1.0.so.0.2202.0
b6a51000-b6a52000 r--p 00008000 08:11 15271988   /usr/lib/libpangocairo-1.0.so.0.2202.0
b6a52000-b6a53000 rw-p 00009000 08:11 15271988   /usr/lib/libpangocairo-1.0.so.0.2202.0
b6a53000-b6aa5000 r-xp 00000000 08:11 15271453   /usr/lib/libtiff.so.4.2.1
b6aa5000-b6aa7000 r--p 00052000 08:11 15271453   /usr/lib/libtiff.so.4.2.1
b6aa7000-b6aa8000 rw-p 00054000 08:11 15271453   /usr/lib/libtiff.so.4.2.1
b6aa8000-b6aa9000 rw-p b6aa8000 00:00 0
b6aa9000-b6ac8000 r-xp 00000000 08:11 15271751   /usr/lib/libjpeg.so.62.0.0
b6ac8000-b6ac9000 rw-p 0001e000 08:11 15271751   /usr/lib/libjpeg.so.62.0.0
b6ac9000-b6aed000 r-xp 00000000 08:11 15271301   /usr/lib/libpng12.so.0.27.0
b6aed000-b6aee000 r--p 00023000 08:11 15271301   /usr/lib/libpng12.so.0.27.0
b6aee000-b6aef000 rw-p 00024000 08:11 15271301   /usr/lib/libpng12.so.0.27.0
b6aef000-b6af6000 r-xp 00000000 08:11 15270840   /usr/lib/libSM.so.6.0.0
b6af6000-b6af7000 r--p 00006000 08:11 15270840   /usr/lib/libSM.so.6.0.0
b6af7000-b6af8000 rw-p 00007000 08:11 15270840   /usr/lib/libSM.so.6.0.0
b6af8000-b6afa000 r-xp 00000000 08:11 15271225   /usr/lib/libXinerama.so.1.0.0
b6afa000-b6afb000 rw-p 00001000 08:11 15271225   /usr/lib/libXinerama.so.1.0.0
b6afb000-b6bb0000 r-xp 00000000 08:11 15271534   /usr/lib/libglib-2.0.so.0.1800.2
b6bb0000-b6bb1000 r--p 000b4000 08:11 15271534   /usr/lib/libglib-2.0.so.0.1800.2
b6bb1000-b6bb2000 rw-p 000b5000 08:11 15271534   /usr/lib/libglib-2.0.so.0.1800.2
b6bb2000-b6bb9000 r-xp 00000000 08:11 7504264    /lib/tls/i686/cmov/librt-2.8.90.so
b6bb9000-b6bba000 r--p 00007000 08:11 7504264    /lib/tls/i686/cmov/librt-2.8.90.so
b6bba000-b6bbb000 rw-p 00008000 08:11 7504264    /lib/tls/i686/cmov/librt-2.8.90.so
b6bbb000-b6bbc000 rw-p b6bbb000 00:00 0
b6bbc000-b6bc0000 r-xp 00000000 08:11 15271550   /usr/lib/libgthread-2.0.so.0.1800.2
b6bc0000-b6bc1000 r--p 00003000 08:11 15271550   /usr/lib/libgthread-2.0.so.0.1800.2
b6bc1000-b6bc2000 rw-p 00004000 08:11 15271550   /usr/lib/libgthread-2.0.so.0.1800.2
b6bc2000-b6bc5000 r-xp 00000000 08:11 15271540   /usr/lib/libgmodule-2.0.so.0.1800.2
b6bc5000-b6bc6000 r--p 00002000 08:11 15271540   /usr/lib/libgmodule-2.0.so.0.1800.2
b6bc6000-b6bc7000 rw-p 00003000 08:11 15271540   /usr/lib/libgmodule-2.0.so.0.1800.2
b6bc7000-b6c03000 r-xp 00000000 08:11 15271542   /usr/lib/libgobject-2.0.so.0.1800.2
b6c03000-b6c04000 r--p 0003b000 08:11 15271542   /usr/lib/libgobject-2.0.so.0.1800.2
b6c04000-b6c05000 rw-p 0003c000 08:11 15271542   /usr/lib/libgobject-2.0.so.0.1800.2
b6c05000-b6c30000 r-xp 00000000 08:11 15270073   /usr/lib/libfontconfig.so.1.3.0
b6c30000-b6c31000 r--p 0002a000 08:11 15270073   /usr/lib/libfontconfig.so.1.3.0
b6c31000-b6c32000 rw-p 0002b000 08:11 15270073   /usr/lib/libfontconfig.so.1.3.0
b6c32000-b6ca3000 r-xp 00000000 08:11 15270721   /usr/lib/libfreetype.so.6.3.18
b6ca3000-b6ca7000 r--p 00070000 08:11 15270721   /usr/lib/libfreetype.so.6.3.18
b6ca7000-b6ca8000 rw-p 00074000 08:11 15270721   /usr/lib/libfreetype.so.6.3.18
b6ca8000-b6ce8000 r-xp 00000000 08:11 15271329   /usr/lib/libpango-1.0.so.0.2202.0
b6ce8000-b6ce9000 ---p 00040000 08:11 15271329   /usr/lib/libpango-1.0.so.0.2202.0
b6ce9000-b6cea000 r--p 00040000 08:11 15271329   /usr/lib/libpango-1.0.so.0.2202.0
b6cea000-b6ceb000 rw-p 00041000 08:11 15271329   /usr/lib/libpango-1.0.so.0.2202.0
b6ceb000-b6cec000 rw-p b6ceb000 00:00 0
b6cec000-b6d51000 r-xp 00000000 08:11 15271504   /usr/lib/libgio-2.0.so.0.1800.2
b6d51000-b6d52000 ---p 00065000 08:11 15271504   /usr/lib/libgio-2.0.so.0.1800.2
b6d52000-b6d53000 r--p 00065000 08:11 15271504   /usr/lib/libgio-2.0.so.0.1800.2
b6d53000-b6d54000 rw-p 00066000 08:11 15271504   /usr/lib/libgio-2.0.so.0.1800.2
b6d54000-b6d6c000 r-xp 00000000 08:11 15271669   /usr/lib/libgdk_pixbuf-2.0.so.0.1400.4
b6d6c000-b6d6d000 r--p 00017000 08:11 15271669   /usr/lib/libgdk_pixbuf-2.0.so.0.1400.4
b6d6d000-b6d6e000 rw-p 00018000 08:11 15271669   /usr/lib/libgdk_pixbuf-2.0.so.0.1400.4
b6d6e000-b6d94000 r-xp 00000000 08:11 15271989   /usr/lib/libpangoft2-1.0.so.0.2202.0
b6d94000-b6d95000 r--p 00025000 08:11 15271989   /usr/lib/libpangoft2-1.0.so.0.2202.0
b6d95000-b6d96000 rw-p 00026000 08:11 15271989   /usr/lib/libpangoft2-1.0.so.0.2202.0
b6d96000-b6daf000 r-xp 00000000 08:11 15270990   /usr/lib/libatk-1.0.so.0.2409.1
b6daf000-b6db1000 r--p 00018000 08:11 15270990   /usr/lib/libatk-1.0.so.0.2409.1
b6db1000-b6db2000 rw-p 0001a000 08:11 15270990   /usr/lib/libatk-1.0.so.0.2409.1
b6db2000-b6e3a000 r-xp 00000000 08:11 15271567   /usr/lib/libgdk-x11-2.0.so.0.1400.4
b6e3a000-b6e3b000 ---p 00088000 08:11 15271567   /usr/lib/libgdk-x11-2.0.so.0.1400.4
b6e3b000-b6e3d000 r--p 00088000 08:11 15271567   /usr/lib/libgdk-x11-2.0.so.0.1400.4
b6e3d000-b6e3e000 rw-p 0008a000 08:11 15271567   /usr/lib/libgdk-x11-2.0.so.0.1400.4
b6e3e000-b6e3f000 rw-p b6e3e000 00:00 0
b6e3f000-b71d4000 r-xp 00000000 08:11 15271671   /usr/lib/libgtk-x11-2.0.so.0.1400.4
b71d4000-b71d5000 ---p 00395000 08:11 15271671   /usr/lib/libgtk-x11-2.0.so.0.1400.4
b71d5000-b71d9000 r--p 00395000 08:11 15271671   /usr/lib/libgtk-x11-2.0.so.0.1400.4
b71d9000-b71db000 rw-p 00399000 08:11 15271671   /usr/lib/libgtk-x11-2.0.so.0.1400.4
b71db000-b71dd000 rw-p b71db000 00:00 0
b71dd000-b71df000 r-xp 00000000 08:11 7504213    /lib/tls/i686/cmov/libdl-2.8.90.so
b71df000-b71e0000 r--p 00001000 08:11 7504213    /lib/tls/i686/cmov/libdl-2.8.90.so
b71e0000-b71e1000 rw-p 00002000 08:11 7504213    /lib/tls/i686/cmov/libdl-2.8.90.so
b71e1000-b7339000 r-xp 00000000 08:11 7504210    /lib/tls/i686/cmov/libc-2.8.90.so
b7339000-b733b000 r--p 00158000 08:11 7504210    /lib/tls/i686/cmov/libc-2.8.90.so
b733b000-b733c000 rw-p 0015a000 08:11 7504210    /lib/tls/i686/cmov/libc-2.8.90.so
b733c000-b733f000 rw-p b733c000 00:00 0
b733f000-b734c000 r-xp 00000000 08:11 7487509    /lib/libgcc_s.so.1
b734c000-b734d000 r--p 0000c000 08:11 7487509    /lib/libgcc_s.so.1
b734d000-b734e000 rw-p 0000d000 08:11 7487509    /lib/libgcc_s.so.1
b734e000-b7372000 r-xp 00000000 08:11 7504214    /lib/tls/i686/cmov/libm-2.8.90.so
b7372000-b7373000 r--p 00023000 08:11 7504214    /lib/tls/i686/cmov/libm-2.8.90.so
b7373000-b7374000 rw-p 00024000 08:11 7504214    /lib/tls/i686/cmov/libm-2.8.90.so
b7374000-b7375000 rw-p b7374000 00:00 0
b7375000-b7458000 r-xp 00000000 08:11 15271202   /usr/lib/libstdc++.so.6.0.10
b7458000-b745c000 r--p 000e3000 08:11 15271202   /usr/lib/libstdc++.so.6.0.10
b745c000-b745d000 rw-p 000e7000 08:11 15271202   /usr/lib/libstdc++.so.6.0.10
b745d000-b7463000 rw-p b745d000 00:00 0
b7463000-b7489000 r-xp 00000000 08:11 15271167   /usr/lib/libGeoIP.so.1.4.4
b7489000-b748a000 r--p 00025000 08:11 15271167   /usr/lib/libGeoIP.so.1.4.4
b748a000-b748b000 rw-p 00026000 08:11 15271167   /usr/lib/libGeoIP.so.1.4.4
b748b000-b7609000 r-xp 00000000 08:11 15272509   /usr/lib/libwx_baseud-2.8.so.0.5.0
b7609000-b760d000 r--p 0017d000 08:11 15272509   /usr/lib/libwx_baseud-2.8.so.0.5.0
b760d000-b760f000 rw-p 00181000 08:11 15272509   /usr/lib/libwx_baseud-2.8.so.0.5.0
b760f000-b7617000 rw-p b760f000 00:00 0
b7617000-b7644000 r-xp 00000000 08:11 15272510   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b7644000-b7645000 ---p 0002d000 08:11 15272510   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b7645000-b7646000 r--p 0002d000 08:11 15272510   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b7646000-b7647000 rw-p 0002e000 08:11 15272510   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b7647000-b79c2000 r-xp 00000000 08:11 15271028   /usr/lib/libwx_gtk2ud_core-2.8.so.0.5.0
b79c2000-b79e9000 r--p 0037a000 08:11 15271028   /usr/lib/libwx_gtk2ud_core-2.8.so.0.5.0
b79e9000-b79ee000 rw-p 003a1000 08:11 15271028   /usr/lib/libwx_gtk2ud_core-2.8.so.0.5.0
b79ee000-b79f5000 rw-p b79ee000 00:00 0
b79f5000-b7ab6000 r-xp 00000000 08:11 15270699   /usr/lib/libwx_gtk2ud_adv-2.8.so.0.5.0
b7ab6000-b7abe000 r--p 000c1000 08:11 15270699   /usr/lib/libwx_gtk2ud_adv-2.8.so.0.5.0
b7abe000-b7abf000 rw-p 000c9000 08:11 15270699   /usr/lib/libwx_gtk2ud_adv-2.8.so.0.5.0
b7abf000-b7ac1000 rw-p b7abf000 00:00 0
b7ac1000-b7ac9000 r-xp 00000000 08:11 15269911   /usr/lib/libixml.so.2.0.4
b7ac9000-b7aca000 r--p 00007000 08:11 15269911   /usr/lib/libixml.so.2.0.4
b7aca000-b7acb000 rw-p 00008000 08:11 15269911   /usr/lib/libixml.so.2.0.4
b7acb000-b7acf000 r-xp 00000000 08:11 15269967   /usr/lib/libthreadutil.so.2.2.3
b7acf000-b7ad0000 r--p 00003000 08:11 15269967   /usr/lib/libthreadutil.so.2.2.3
b7ad0000-b7ad1000 rw-p 00004000 08:11 15269967   /usr/lib/libthreadutil.so.2.2.3
b7ad1000-b7aeb000 r-xp 00000000 08:11 15270052   /usr/lib/libupnp.so.3.0.5
b7aeb000-b7aec000 r--p 00019000 08:11 15270052   /usr/lib/libupnp.so.3.0.5
b7aec000-b7aed000 rw-p 0001a000 08:11 15270052   /usr/lib/libupnp.so.3.0.5
b7aed000-b7aee000 rw-p b7aed000 00:00 0
b7aee000-b7ea9000 r-xp 00000000 08:11 15271308   /usr/lib/libcrypto++.so.7.0.0
b7ea9000-b7ede000 r--p 003bb000 08:11 15271308   /usr/lib/libcrypto++.so.7.0.0
b7ede000-b7ee1000 rw-p 003f0000 08:11 15271308   /usr/lib/libcrypto++.so.7.0.0
b7ee1000-b7ee4000 rw-p b7ee1000 00:00 0
b7ee4000-b7ef8000 r-xp 00000000 08:11 15270039   /usr/lib/libz.so.1.2.3.3
b7ef8000-b7efa000 rw-p 00013000 08:11 15270039   /usr/lib/libz.so.1.2.3.3
b7efa000-b7efb000 rw-p b7efa000 00:00 0
b7efb000-b7fd7000 r-xp 00000000 08:11 15272892   /usr/lib/libbfd-2.18.93.20081009.so
b7fd7000-b7fe1000 r--p 000dc000 08:11 15272892   /usr/lib/libbfd-2.18.93.20081009.so
b7fe1000-b7fe3000 rw-p 000e6000 08:11 15272892   /usr/lib/libbfd-2.18.93.20081009.so
b7fe3000-b7fe7000 rw-p b7fe3000 00:00 0
b7fe7000-b7ffc000 r-xp 00000000 08:11 7504262    /lib/tls/i686/cmov/libpthread-2.8.90.so
b7ffc000-b7ffd000 r--p 00014000 08:11 7504262    /lib/tls/i686/cmov/libpthread-2.8.90.so
b7ffd000-b7ffe000 rw-p 00015000 08:11 7504262    /lib/tls/i686/cmov/libpthread-2.8.90.so
b7ffe000-b8000000 rw-p b7ffe000 00:00 0
b8000000-b8001000 r--p 00000000 08:11 15295681   /usr/lib/locale/nl_NL.utf8/LC_PAPER
b8001000-b8002000 r--p 00000000 08:11 15295426   /usr/lib/locale/nl_NL.utf8/LC_NAME
b8002000-b8003000 r--p 00000000 08:11 15426939   /usr/lib/locale/nl_NL.utf8/LC_ADDRESS
b8003000-b8004000 r--p 00000000 08:11 15426940   /usr/lib/locale/nl_NL.utf8/LC_TELEPHONE
b8004000-b8005000 r--p 00000000 08:11 15295677   /usr/lib/locale/nl_NL.utf8/LC_MEASUREMENT
b8005000-b8006000 r--p 00000000 08:11 15426941   /usr/lib/locale/nl_NL.utf8/LC_IDENTIFICATION
b8006000-b8008000 r-xp 00000000 08:11 15278949   /usr/lib/gconv/UTF-32.so
b8008000-b8009000 r--p 00001000 08:11 15278949   /usr/lib/gconv/UTF-32.so
b8009000-b800a000 rw-p 00002000 08:11 15278949   /usr/lib/gconv/UTF-32.so
b800a000-b8011000 r--s 00000000 08:11 15278953   /usr/lib/gconv/gconv-modules.cache
b8011000-b8013000 rw-p b8011000 00:00 0
b8013000-b802d000 r-xp 00000000 08:11 7487687    /lib/ld-2.8.90.so
b802d000-b802e000 r-xp b802d000 00:00 0          [vdso]
b802e000-b802f000 r--p 0001a000 08:11 7487687    /lib/ld-2.8.90.so
b802f000-b8030000 rw-p 0001b000 08:11 7487687    /lib/ld-2.8.90.so
bfc12000-bfc2f000 rw-p bffe3000 00:00 0          [stack]

Since the backtraces are incomplete, i will try again...
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 06, 2009, 08:20:07 PM
Ha haaaa  8)
I had to make amule crash a lot (sorry about that, dear mulie),
but it paid off:

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb667c700 (LWP 1828)]
0x00000624 in ?? ()

(gdb) bt
Code: [Select]

#0  0x00000624 in ?? ()
#1  0xb6ca04af in gdk_io_invoke (source=0xb382bf98,
    condition=<value optimized out>, data=0x3)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
#2  0xb6a3e71d in g_io_unix_dispatch (source=0xb1deb4b0,
    callback=0xb6ca0450 <gdk_io_invoke>, user_data=0xb384f6f8)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
#3  0xb6a07718 in IA__g_main_context_dispatch (context=0x89f5918)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
#4  0xb6a0adc3 in g_main_context_iterate (context=0x89f5918, block=1,
    dispatch=1, self=0x89f6ec0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
#5  0xb6a0b2e2 in IA__g_main_loop_run (loop=0x929bbf0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
#6  0xb6e393a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
#7  0xb765610b in wxEventLoop::Run (this=0x9271f50)
    at ../src/gtk/evtloop.cpp:76
#8  0xb76fa3dc in wxAppBase::MainLoop (this=0x89f57d0)
    at ../src/common/appcmn.cpp:312
#9  0xb76fa131 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
#10 0xb73ef3fa in wxEntry (argc=@0xb74e76cc, argv=0x89e3e38)
    at ../src/common/init.cpp:460
---Type <return> to continue, or q <return> to quit---
#11 0xb73ef4b7 in wxEntry (argc=@0xbf9ff790, argv=0xbf9ff814)
    at ../src/common/init.cpp:472
#12 0x082ac21d in main (argc=1, argv=0xb6a84460) at ../../src/amule-gui.cpp:95
(gdb) bt full
Code: [Select]

#0  0x00000624 in ?? ()
No symbol table info available.
#1  0xb6ca04af in gdk_io_invoke (source=0xb382bf98,
    condition=<value optimized out>, data=0x3)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = 167684264
#2  0xb6a3e71d in g_io_unix_dispatch (source=0xb1deb4b0,
    callback=0xb6ca0450 <gdk_io_invoke>, user_data=0xb384f6f8)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 0
#3  0xb6a07718 in IA__g_main_context_dispatch (context=0x89f5918)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#4  0xb6a0adc3 in g_main_context_iterate (context=0x89f5918, block=1,
    dispatch=1, self=0x89f6ec0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 0
timeout = 0
some_ready = 1
nfds = 351
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xb8ed930
__PRETTY_FUNCTION__ = "g_main_context_iterate"
---Type <return> to continue, or q <return> to quit---
#5  0xb6a0b2e2 in IA__g_main_loop_run (loop=0x929bbf0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0x89f6ec0
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#6  0xb6e393a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0x9271f50
loop = (GMainLoop *) 0x929bbf0
#7  0xb765610b in wxEventLoop::Run (this=0x9271f50)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#8  0xb76fa3dc in wxAppBase::MainLoop (this=0x89f57d0)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0x9271f50}, m_pp = 0x89f5810,
  m_pOld = 0x0}
#9  0xb76fa131 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
No locals.
#10 0xb73ef3fa in wxEntry (argc=@0xb74e76cc, argv=0x89e3e38)
    at ../src/common/init.cpp:460
No locals.
---Type <return> to continue, or q <return> to quit---
#11 0xb73ef4b7 in wxEntry (argc=@0xbf9ff790, argv=0xbf9ff814)
    at ../src/common/init.cpp:472
No locals.
#12 0x082ac21d in main (argc=1, argv=0xb6a84460) at ../../src/amule-gui.cpp:95
No locals.

Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 06, 2009, 08:21:27 PM
(gdb) thread apply all bt full
Code: [Select]
Thread 5 (Thread 0xb44f5b90 (LWP 1890)):
#0  0xb7f00430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7ec43a2 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
   from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0xb74606e1 in wxConditionInternal::WaitTimeout (this=0x8a55ef0,
    milliseconds=100) at ../src/unix/threadpsx.cpp:405
tspec = {tv_sec = 1239041558, tv_nsec = 885000000}
err = <value optimized out>
#3  0xb746076a in wxCondition::WaitTimeout (this=0x8a64a7c, milliseconds=100)
    at ../include/wx/thrimpl.cpp:256
__FUNCTION__ = "WaitTimeout"
#4  0xb7462524 in wxSemaphoreInternal::WaitTimeout (this=0x8a64a78,
    milliseconds=100) at ../src/unix/threadpsx.cpp:552
remainingTime = -516
locker = {m_isOk = true, m_mutex = @0x8a64a78}
#5  0xb74625aa in wxSemaphore::WaitTimeout (this=0x9292bb0, milliseconds=100)
    at ../include/wx/thrimpl.cpp:320
__FUNCTION__ = "WaitTimeout"
#6  0x083e39d4 in CTimerThread::Entry (this=0x9292b90)
    at ../../src/Timer.cpp:64
---Type <return> to continue, or q <return> to quit---
now = 2090977537
sinceLast = 0
timeout = 100
evt = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x85c7608,
      static ms_classInfo = {m_className = 0xb74941a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb79918cc, m_next = 0xb74e88c4,
        static sm_classTable = 0x89c83e8}, m_refData = 0x0},
    m_eventObject = 0x0, m_eventType = 10244, m_timeStamp = 0, m_id = 6128,
    m_callbackUserData = 0x0, m_propagationLevel = 0, m_skipped = false,
    m_isCommandEvent = false, static ms_classInfo = {m_className = 0xb74a5708,
      m_objectSize = 36, m_objectConstructor = 0, m_baseInfo1 = 0xb74e8858,
      m_baseInfo2 = 0x0, static sm_first = 0xb79918cc, m_next = 0xb74e9908,
      static sm_classTable = 0x89c83e8}}, <No data fields>}
lastEvent = 2090977537
#7  0xb7463036 in wxThreadInternal::PthreadStart (thread=0x9292b90)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0x8a64a30
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#8  0xb746313d in wxPthreadStart (ptr=0x9292b90)
    at ../src/unix/threadpsx.cpp:718
---Type <return> to continue, or q <return> to quit---
No locals.
#9  0xb7ec050f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#10 0xb7195a0e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 3 (Thread 0xb54f7b90 (LWP 1876)):
#0  0xb7f00430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7ec7906 in nanosleep () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0xb746a168 in wxMicroSleep (microseconds=0) at ../src/unix/utilsunx.cpp:191
tmReq = {tv_sec = 0, tv_nsec = 19000000}
#3  0xb746a191 in wxMilliSleep (milliseconds=19)
    at ../src/unix/utilsunx.cpp:212
No locals.
#4  0xb746041d in wxThread::Sleep (milliseconds=19)
    at ../src/unix/threadpsx.cpp:986
No locals.
#5  0x081fd133 in UploadBandwidthThrottler::Entry (this=0x90c9c30)
    at ../../src/UploadBandwidthThrottler.cpp:324
timeSinceLastLoop = 6
minFragSize = 1300
---Type <return> to continue, or q <return> to quit---
doubleSendSize = 2600
bytesToSpend = 97792
sleepTime = 25
thisLoopTick = 2090977579
TIME_BETWEEN_UPLOAD_LOOPS = 1
lastLoopTick = 2090977579
realBytesToSpend = 77824999
allowedDataRate = 3993600
rememberedSlotCounter = 32
extraSleepTime = 25
sendLock = {m_isOk = false, m_mutex = @0xb7ecfff4}
#6  0xb7463036 in wxThreadInternal::PthreadStart (thread=0x90c9c30)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0x91f6fd8
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#7  0xb746313d in wxPthreadStart (ptr=0x90c9c30)
    at ../src/unix/threadpsx.cpp:718
No locals.
#8  0xb7ec050f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#9  0xb7195a0e in clone () from /lib/tls/i686/cmov/libc.so.6
---Type <return> to continue, or q <return> to quit---
No symbol table info available.

Thread 1 (Thread 0xb667c700 (LWP 1828)):
#0  0x00000624 in ?? ()
No symbol table info available.
#1  0xb6ca04af in gdk_io_invoke (source=0xb382bf98,
    condition=<value optimized out>, data=0x3)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = 167684264
#2  0xb6a3e71d in g_io_unix_dispatch (source=0xb1deb4b0,
    callback=0xb6ca0450 <gdk_io_invoke>, user_data=0xb384f6f8)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 0
#3  0xb6a07718 in IA__g_main_context_dispatch (context=0x89f5918)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#4  0xb6a0adc3 in g_main_context_iterate (context=0x89f5918, block=1,
    dispatch=1, self=0x89f6ec0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 0
timeout = 0
some_ready = 1
nfds = 351
---Type <return> to continue, or q <return> to quit---
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xb8ed930
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#5  0xb6a0b2e2 in IA__g_main_loop_run (loop=0x929bbf0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0x89f6ec0
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#6  0xb6e393a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0x9271f50
loop = (GMainLoop *) 0x929bbf0
#7  0xb765610b in wxEventLoop::Run (this=0x9271f50)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#8  0xb76fa3dc in wxAppBase::MainLoop (this=0x89f57d0)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0x9271f50}, m_pp = 0x89f5810,
  m_pOld = 0x0}
#9  0xb76fa131 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
No locals.
---Type <return> to continue, or q <return> to quit---
#10 0xb73ef3fa in wxEntry (argc=@0xb74e76cc, argv=0x89e3e38)
    at ../src/common/init.cpp:460
No locals.
#11 0xb73ef4b7 in wxEntry (argc=@0xbf9ff790, argv=0xbf9ff814)
    at ../src/common/init.cpp:472
No locals.
#12 0x082ac21d in main (argc=1, argv=0xb6a84460) at ../../src/amule-gui.cpp:95
No locals.

$ free
Code: [Select]
             total       used       free     shared    buffers     cached
Mem:       3111840    3000392     111448          0     160036     561512
-/+ buffers/cache:    2278844     832996
Swap:      9100780    3116564    5984216

$ ps axl | grep amule
Code: [Select]
0  1000   919   614  20   0   3236   788 pipe_w S+   pts/1      0:00 grep amule
0  1000  1801  1728  20   0 202404 197448 poll  S+   pts/0      0:03 gdb amule
0  1000  1828  1801  20   0 210008 153404 ptrace Tl  pts/0    740:21 /usr/bin/amule
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 06, 2009, 08:26:50 PM
$ cat /proc/1828/maps

Part 1:

Code: [Select]
b3200000-b32ff000 rw-p b3200000 00:00 0
b32ff000-b3300000 ---p b32ff000 00:00 0
b3300000-b33f7000 rw-p b3300000 00:00 0
b33f7000-b3400000 ---p b33f7000 00:00 0
b341f000-b3500000 r--p 00000000 08:11 15295282   /usr/lib/locale/en_GB.utf8/LC_COLLATE
b3500000-b35fb000 rw-p b3500000 00:00 0
b35fb000-b3600000 ---p b35fb000 00:00 0
b3600000-b37ff000 rw-p b3600000 00:00 0
b37ff000-b3800000 ---p b37ff000 00:00 0
b3800000-b38f4000 rw-p b3800000 00:00 0
b38f4000-b3900000 ---p b38f4000 00:00 0
b39ad000-b39ae000 r--p 00000000 08:11 15295286   /usr/lib/locale/en_GB.utf8/LC_MONETARY
b39ae000-b39af000 r--p 00000000 08:11 15295292   /usr/lib/locale/en_GB.utf8/LC_MESSAGES/SYS_LC_MESSAGES
b39af000-b39b0000 r--p 00000000 08:11 15295289   /usr/lib/locale/en_GB.utf8/LC_PAPER
b39b0000-b39b1000 r--p 00000000 08:11 15295287   /usr/lib/locale/en_GB.utf8/LC_NAME
b39b1000-b39b2000 r--p 00000000 08:11 15295281   /usr/lib/locale/en_GB.utf8/LC_ADDRESS
b39b2000-b39b3000 r--p 00000000 08:11 15295290   /usr/lib/locale/en_GB.utf8/LC_TELEPHONE
b39b3000-b39b4000 r--p 00000000 08:11 15295285   /usr/lib/locale/en_GB.utf8/LC_MEASUREMENT
b39b4000-b39b5000 r--p 00000000 08:11 15295284   /usr/lib/locale/en_GB.utf8/LC_IDENTIFICATION
b39b5000-b3a00000 r--p 00000000 08:11 15392788   /usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif.ttf
b3a00000-b3af9000 rw-p b3a00000 00:00 0
b3af9000-b3b00000 ---p b3af9000 00:00 0
b3b29000-b3b68000 r--p 00000000 08:11 15295283   /usr/lib/locale/en_GB.utf8/LC_CTYPE
b3b68000-b3c6c000 rw-p b3b68000 00:00 0
b3c6c000-b3cf5000 r--p 00000000 08:11 15392785   /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-Bold.ttf
b3cf5000-b3cf6000 ---p b3cf5000 00:00 0
b3cf6000-b44f6000 rw-p b3cf6000 00:00 0
b44f6000-b44f7000 ---p b44f6000 00:00 0
b44f7000-b4cf7000 rw-p b44f7000 00:00 0
b4cf7000-b4cf8000 ---p b4cf7000 00:00 0
b4cf8000-b54f8000 rw-p b4cf8000 00:00 0
b54f8000-b5529000 r-xp 00000000 08:11 15271619   /usr/lib/libcroco-0.6.so.3.0.1
b5529000-b552c000 rw-p 00030000 08:11 15271619   /usr/lib/libcroco-0.6.so.3.0.1
b552c000-b5544000 r-xp 00000000 08:11 25223171   /usr/lib/gio/modules/libgvfsdbus.so
b5544000-b5545000 r--p 00017000 08:11 25223171   /usr/lib/gio/modules/libgvfsdbus.so
b5545000-b5546000 rw-p 00018000 08:11 25223171   /usr/lib/gio/modules/libgvfsdbus.so
b5546000-b5553000 r-xp 00000000 08:11 15270702   /usr/lib/libgvfscommon.so.0.0.0
b5553000-b5554000 r--p 0000d000 08:11 15270702   /usr/lib/libgvfscommon.so.0.0.0
b5554000-b5555000 rw-p 0000e000 08:11 15270702   /usr/lib/libgvfscommon.so.0.0.0
b5566000-b559c000 r-xp 00000000 08:11 7487615    /lib/libdbus-1.so.3.4.0
b559c000-b559d000 r--p 00035000 08:11 7487615    /lib/libdbus-1.so.3.4.0
b559d000-b559e000 rw-p 00036000 08:11 7487615    /lib/libdbus-1.so.3.4.0
b55a7000-b55d7000 r-xp 00000000 08:11 15271251   /usr/lib/libgsf-1.so.114.0.8
b55d7000-b55d9000 r--p 0002f000 08:11 15271251   /usr/lib/libgsf-1.so.114.0.8
b55d9000-b55da000 rw-p 00031000 08:11 15271251   /usr/lib/libgsf-1.so.114.0.8
b55da000-b55db000 rw-p b55da000 00:00 0
b55db000-b560c000 r-xp 00000000 08:11 15270040   /usr/lib/librsvg-2.so.2.22.3
b560c000-b560d000 r--p 00030000 08:11 15270040   /usr/lib/librsvg-2.so.2.22.3
b560d000-b560e000 rw-p 00031000 08:11 15270040   /usr/lib/librsvg-2.so.2.22.3
b560e000-b5610000 r-xp 00000000 08:11 7504267    /lib/tls/i686/cmov/libutil-2.8.90.so
b5610000-b5611000 r--p 00001000 08:11 7504267    /lib/tls/i686/cmov/libutil-2.8.90.so
b5611000-b5612000 rw-p 00002000 08:11 7504267    /lib/tls/i686/cmov/libutil-2.8.90.so
b561c000-b562b000 r-xp 00000000 08:11 7488081    /lib/libbz2.so.1.0.4
b562b000-b562c000 r--p 0000f000 08:11 7488081    /lib/libbz2.so.1.0.4
b562c000-b562d000 rw-p 00010000 08:11 7488081    /lib/libbz2.so.1.0.4
b563b000-b563c000 r--p 00000000 08:11 15295288   /usr/lib/locale/en_GB.utf8/LC_NUMERIC
b563c000-b563d000 r--p 00000000 08:11 15295291   /usr/lib/locale/en_GB.utf8/LC_TIME
b563d000-b563e000 rw-p b563d000 00:00 0
b563e000-b5655000 r--s 00000000 08:11 15344031   /usr/share/mime/mime.cache
b5655000-b5700000 r--p 00000000 08:11 15483943   /usr/share/icons/Tangerine/icon-theme.cache
b5700000-b5800000 rw-p b5700000 00:00 0
b5800000-b5801000 r-xp 00000000 08:11 15294815   /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so
b5801000-b5802000 r--p 00000000 08:11 15294815   /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so
b5802000-b5803000 rw-p 00001000 08:11 15294815   /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so
b5803000-b5907000 rw-p b5803000 00:00 0
b5907000-b599c000 r--p 00000000 08:11 15392784   /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf
b599c000-b599e000 r-xp 00000000 08:11 15327946   /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
b599e000-b599f000 r--p 00001000 08:11 15327946   /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
b599f000-b59a0000 rw-p 00002000 08:11 15327946   /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
b59a0000-b59a6000 r--s 00000000 08:11 19407431   /var/cache/fontconfig/945677eb7aeaf62f1d50efc3fb3ec7d8-x86.cache-2
b59a6000-b59a9000 r--s 00000000 08:11 19408582   /var/cache/fontconfig/e383d7ea5fbe662a33d9b44caf393297-x86.cache-2
b59a9000-b59ac000 r--s 00000000 08:11 19407400   /var/cache/fontconfig/6eb3985aa4124903f6ff08ba781cd364-x86.cache-2
b59ac000-b59af000 r--s 00000000 08:11 19407381   /var/cache/fontconfig/a755afe4a08bf5b97852ceb7400b47bc-x86.cache-2
b59af000-b59b2000 r--s 00000000 08:11 19408574   /var/cache/fontconfig/6d41288fd70b0be22e8c3a91e032eec0-x86.cache-2
b59b2000-b59b5000 r--s 00000000 08:11 19408573   /var/cache/fontconfig/de156ccd2eddbdc19d37a45b8b2aac9c-x86.cache-2
b59b5000-b59bd000 r--s 00000000 08:11 19408570   /var/cache/fontconfig/e3de0de479f42330eadf588a55fb5bf4-x86.cache-2
b59bd000-b59c8000 r--s 00000000 08:11 19408583   /var/cache/fontconfig/0f34bcd4b6ee430af32735b75db7f02b-x86.cache-2
b59c8000-b59cb000 r--s 00000000 08:11 19408580   /var/cache/fontconfig/de9486f0b47a4d768a594cb4198cb1c6-x86.cache-2
b59cb000-b59d2000 r--s 00000000 08:11 19406916   /var/cache/fontconfig/d52a8644073d54c13679302ca1180695-x86.cache-2
b59d2000-b5a32000 rw-s 00000000 00:09 19628048   /SYSV00000000 (deleted)
b5a32000-b5a92000 rw-s 00000000 00:09 19595279   /SYSV00000000 (deleted)
b5a92000-b5ab1000 r-xp 00000000 08:11 15294850   /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
b5ab1000-b5ab2000 r--p 0001e000 08:11 15294850   /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
b5ab2000-b5ab3000 rw-p 0001f000 08:11 15294850   /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
b5ab3000-b5ac3000 r-xp 00000000 08:11 7504263    /lib/tls/i686/cmov/libresolv-2.8.90.so
b5ac3000-b5ac4000 r--p 0000f000 08:11 7504263    /lib/tls/i686/cmov/libresolv-2.8.90.so
b5ac4000-b5ac5000 rw-p 00010000 08:11 7504263    /lib/tls/i686/cmov/libresolv-2.8.90.so
b5ac5000-b5ac7000 rw-p b5ac5000 00:00 0
b5ac7000-b5ac9000 r--s 00000000 08:11 19408581   /var/cache/fontconfig/c69f04ab05004e31a6d5e715764f16d8-x86.cache-2
b5ac9000-b5aca000 r--s 00000000 08:11 19408568   /var/cache/fontconfig/4c73fe0c47614734b17d736dbde7580a-x86.cache-2
b5aca000-b5ad0000 r--s 00000000 08:11 19406910   /var/cache/fontconfig/089dead882dea3570ffc31a9898cfb69-x86.cache-2
b5ad0000-b5ad6000 r-xp 00000000 08:11 15294543   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-xpm.so
b5ad6000-b5ad7000 r--p 00005000 08:11 15294543   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-xpm.so
b5ad7000-b5ad8000 rw-p 00006000 08:11 15294543   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-xpm.so
b5ad8000-b5ad9000 ---p b5ad8000 00:00 0
b5ad9000-b62d9000 rw-p b5ad9000 00:00 0
b62d9000-b62df000 r-xp 00000000 08:11 15271479   /usr/lib/libgailutil.so.18.0.1
b62df000-b62e0000 r--p 00005000 08:11 15271479   /usr/lib/libgailutil.so.18.0.1
b62e0000-b62e1000 rw-p 00006000 08:11 15271479   /usr/lib/libgailutil.so.18.0.1
b62e1000-b6310000 r-xp 00000000 08:11 15270570   /usr/lib/libgnomecanvas-2.so.0.2001.0
b6310000-b6311000 r--p 0002e000 08:11 15270570   /usr/lib/libgnomecanvas-2.so.0.2001.0
b6311000-b6312000 rw-p 0002f000 08:11 15270570   /usr/lib/libgnomecanvas-2.so.0.2001.0
b6312000-b6350000 r-xp 00000000 08:11 15271569   /usr/lib/libgnomeprintui-2-2.so.0.1.0
b6350000-b6351000 r--p 0003d000 08:11 15271569   /usr/lib/libgnomeprintui-2-2.so.0.1.0
b6351000-b6352000 rw-p 0003e000 08:11 15271569   /usr/lib/libgnomeprintui-2-2.so.0.1.0
b6352000-b6487000 r-xp 00000000 08:11 15271020   /usr/lib/libxml2.so.2.6.32
b6487000-b6488000 ---p 00135000 08:11 15271020   /usr/lib/libxml2.so.2.6.32
b6488000-b648c000 r--p 00135000 08:11 15271020   /usr/lib/libxml2.so.2.6.32
b648c000-b648d000 rw-p 00139000 08:11 15271020   /usr/lib/libxml2.so.2.6.32
b648d000-b648e000 rw-p b648d000 00:00 0
b648e000-b64a3000 r-xp 00000000 08:11 15271916   /usr/lib/libart_lgpl_2.so.2.3.20
b64a3000-b64a5000 rw-p 00014000 08:11 15271916   /usr/lib/libart_lgpl_2.so.2.3.20
b64a5000-b650b000 r-xp 00000000 08:11 15272783   /usr/lib/libgnomeprint-2-2.so.0.1.0
b650b000-b650c000 ---p 00066000 08:11 15272783   /usr/lib/libgnomeprint-2-2.so.0.1.0
b650c000-b650d000 r--p 00066000 08:11 15272783   /usr/lib/libgnomeprint-2-2.so.0.1.0
b650d000-b650e000 rw-p 00067000 08:11 15272783   /usr/lib/libgnomeprint-2-2.so.0.1.0
b650e000-b6518000 r-xp 00000000 08:11 7504222    /lib/tls/i686/cmov/libnss_files-2.8.90.so
b6518000-b6519000 r--p 00009000 08:11 7504222    /lib/tls/i686/cmov/libnss_files-2.8.90.so
b6519000-b651a000 rw-p 0000a000 08:11 7504222    /lib/tls/i686/cmov/libnss_files-2.8.90.so
b651a000-b6523000 r-xp 00000000 08:11 7504259    /lib/tls/i686/cmov/libnss_nis-2.8.90.so
b6523000-b6524000 r--p 00008000 08:11 7504259    /lib/tls/i686/cmov/libnss_nis-2.8.90.so
b6524000-b6525000 rw-p 00009000 08:11 7504259    /lib/tls/i686/cmov/libnss_nis-2.8.90.so
b6525000-b653a000 r-xp 00000000 08:11 7504219    /lib/tls/i686/cmov/libnsl-2.8.90.so
b653a000-b653b000 r--p 00014000 08:11 7504219    /lib/tls/i686/cmov/libnsl-2.8.90.so
b653b000-b653c000 rw-p 00015000 08:11 7504219    /lib/tls/i686/cmov/libnsl-2.8.90.so
b653c000-b653e000 rw-p b653c000 00:00 0
b653e000-b6545000 r-xp 00000000 08:11 7504220    /lib/tls/i686/cmov/libnss_compat-2.8.90.so
b6545000-b6546000 r--p 00006000 08:11 7504220    /lib/tls/i686/cmov/libnss_compat-2.8.90.so
b6546000-b6547000 rw-p 00007000 08:11 7504220    /lib/tls/i686/cmov/libnss_compat-2.8.90.so
b6547000-b6549000 r--s 00000000 08:11 19407182   /var/cache/fontconfig/e13b20fdb08344e0e664864cc2ede53d-x86.cache-2
b6549000-b654c000 rw-s 00000000 00:09 19660817   /SYSV00000000 (deleted)
b654c000-b6550000 r-xp 00000000 08:11 7504221    /lib/tls/i686/cmov/libnss_dns-2.8.90.so
b6550000-b6551000 r--p 00003000 08:11 7504221    /lib/tls/i686/cmov/libnss_dns-2.8.90.so
b6551000-b6552000 rw-p 00004000 08:11 7504221    /lib/tls/i686/cmov/libnss_dns-2.8.90.so
b6552000-b6553000 r--s 00000000 08:11 19406911   /var/cache/fontconfig/4794a0821666d79190d59a36cb4f44b5-x86.cache-2
b6553000-b6555000 r-xp 00000000 08:11 7487583    /lib/libnss_mdns4_minimal.so.2
b6555000-b6556000 rw-p 00001000 08:11 7487583    /lib/libnss_mdns4_minimal.so.2
b6556000-b6558000 rw-p b6556000 00:00 0
b6558000-b6559000 r--p 00000000 08:11 15295427   /usr/lib/locale/nl_NL.utf8/LC_NUMERIC
b6559000-b655a000 r--p 00000000 08:11 15426937   /usr/lib/locale/nl_NL.utf8/LC_TIME
b655a000-b663b000 r--p 00000000 08:11 15295674   /usr/lib/locale/nl_NL.utf8/LC_COLLATE
b663b000-b663c000 r--p 00000000 08:11 15426938   /usr/lib/locale/nl_NL.utf8/LC_MONETARY
b663c000-b663d000 r--p 00000000 08:11 15295227   /usr/lib/locale/nl_NL.utf8/LC_MESSAGES/SYS_LC_MESSAGES
b663d000-b667c000 r--p 00000000 08:11 15295675   /usr/lib/locale/nl_NL.utf8/LC_CTYPE
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 06, 2009, 08:27:58 PM
Part 2:

Code: [Select]
TYPE
b667c000-b6680000 rw-p b667c000 00:00 0
b6680000-b6684000 r-xp 00000000 08:11 15270153   /usr/lib/libXdmcp.so.6.0.0
b6684000-b6685000 rw-p 00003000 08:11 15270153   /usr/lib/libXdmcp.so.6.0.0
b6685000-b6687000 r-xp 00000000 08:11 15270151   /usr/lib/libXau.so.6.0.0
b6687000-b6688000 rw-p 00001000 08:11 15270151   /usr/lib/libXau.so.6.0.0
b6688000-b668e000 r-xp 00000000 08:11 15271817   /usr/lib/libxcb-render.so.0.0.0
b668e000-b668f000 r--p 00005000 08:11 15271817   /usr/lib/libxcb-render.so.0.0.0
b668f000-b6690000 rw-p 00006000 08:11 15271817   /usr/lib/libxcb-render.so.0.0.0
b6690000-b6693000 r-xp 00000000 08:11 15271819   /usr/lib/libxcb-render-util.so.0.0.0
b6693000-b6694000 r--p 00002000 08:11 15271819   /usr/lib/libxcb-render-util.so.0.0.0
b6694000-b6695000 rw-p 00003000 08:11 15271819   /usr/lib/libxcb-render-util.so.0.0.0
b6695000-b6696000 rw-p b6695000 00:00 0
b6696000-b66d5000 r-xp 00000000 08:11 15271815   /usr/lib/libpixman-1.so.0.12.0
b66d5000-b66d7000 r--p 0003e000 08:11 15271815   /usr/lib/libpixman-1.so.0.12.0
b66d7000-b66d8000 rw-p 00040000 08:11 15271815   /usr/lib/libpixman-1.so.0.12.0
b66d8000-b66ef000 r-xp 00000000 08:11 15270845   /usr/lib/libxcb.so.1.0.0
b66ef000-b66f0000 r--p 00016000 08:11 15270845   /usr/lib/libxcb.so.1.0.0
b66f0000-b66f1000 rw-p 00017000 08:11 15270845   /usr/lib/libxcb.so.1.0.0
b66f1000-b66f2000 r-xp 00000000 08:11 15270854   /usr/lib/libxcb-xlib.so.0.0.0
b66f2000-b66f3000 r--p 00000000 08:11 15270854   /usr/lib/libxcb-xlib.so.0.0.0
b66f3000-b66f4000 rw-p 00001000 08:11 15270854   /usr/lib/libxcb-xlib.so.0.0.0
b66f4000-b6709000 r-xp 00000000 08:11 15271181   /usr/lib/libICE.so.6.3.0
b6709000-b670a000 rw-p 00014000 08:11 15271181   /usr/lib/libICE.so.6.3.0
b670a000-b670c000 rw-p b670a000 00:00 0
b670c000-b6734000 r-xp 00000000 08:11 7487563    /lib/libpcre.so.3.12.1
b6734000-b6735000 r--p 00027000 08:11 7487563    /lib/libpcre.so.3.12.1
b6735000-b6736000 rw-p 00028000 08:11 7487563    /lib/libpcre.so.3.12.1
b6736000-b6737000 rw-p b6736000 00:00 0
b6737000-b675b000 r-xp 00000000 08:11 15270076   /usr/lib/libexpat.so.1.5.2
b675b000-b675d000 r--p 00023000 08:11 15270076   /usr/lib/libexpat.so.1.5.2
b675d000-b675e000 rw-p 00025000 08:11 15270076   /usr/lib/libexpat.so.1.5.2
b675e000-b6776000 r-xp 00000000 08:11 7487527    /lib/libselinux.so.1
b6776000-b6777000 r--p 00017000 08:11 7487527    /lib/libselinux.so.1
b6777000-b6778000 rw-p 00018000 08:11 7487527    /lib/libselinux.so.1
b6778000-b6780000 r-xp 00000000 08:11 15271224   /usr/lib/libXcursor.so.1.0.2
b6780000-b6781000 rw-p 00007000 08:11 15271224   /usr/lib/libXcursor.so.1.0.2
b6781000-b6786000 r-xp 00000000 08:11 15271241   /usr/lib/libXrandr.so.2.1.0
b6786000-b6787000 r--p 00005000 08:11 15271241   /usr/lib/libXrandr.so.2.1.0
b6787000-b6788000 rw-p 00006000 08:11 15271241   /usr/lib/libXrandr.so.2.1.0
b6788000-b6790000 r-xp 00000000 08:11 15270301   /usr/lib/libXi.so.6.0.0
b6790000-b6791000 r--p 00007000 08:11 15270301   /usr/lib/libXi.so.6.0.0
b6791000-b6792000 rw-p 00008000 08:11 15270301   /usr/lib/libXi.so.6.0.0
b6792000-b6793000 rw-p b6792000 00:00 0
b6793000-b679b000 r-xp 00000000 08:11 15270900   /usr/lib/libXrender.so.1.3.0
b679b000-b679c000 r--p 00007000 08:11 15270900   /usr/lib/libXrender.so.1.3.0
b679c000-b679d000 rw-p 00008000 08:11 15270900   /usr/lib/libXrender.so.1.3.0
b679d000-b67aa000 r-xp 00000000 08:11 15270035   /usr/lib/libXext.so.6.4.0
b67aa000-b67ac000 rw-p 0000c000 08:11 15270035   /usr/lib/libXext.so.6.4.0
b67ac000-b681c000 r-xp 00000000 08:11 15271821   /usr/lib/libcairo.so.2.10800.0
b681c000-b681e000 r--p 0006f000 08:11 15271821   /usr/lib/libcairo.so.2.10800.0
b681e000-b681f000 rw-p 00071000 08:11 15271821   /usr/lib/libcairo.so.2.10800.0
b681f000-b6823000 r-xp 00000000 08:11 15271234   /usr/lib/libXfixes.so.3.1.0
b6823000-b6824000 rw-p 00003000 08:11 15271234   /usr/lib/libXfixes.so.3.1.0
b6824000-b6826000 r-xp 00000000 08:11 15271221   /usr/lib/libXdamage.so.1.1.0
b6826000-b6827000 rw-p 00001000 08:11 15271221   /usr/lib/libXdamage.so.1.1.0
b6827000-b6828000 rw-p b6827000 00:00 0
b6828000-b682a000 r-xp 00000000 08:11 15271890   /usr/lib/libXcomposite.so.1.0.0
b682a000-b682b000 r--p 00001000 08:11 15271890   /usr/lib/libXcomposite.so.1.0.0
b682b000-b682c000 rw-p 00002000 08:11 15271890   /usr/lib/libXcomposite.so.1.0.0
b682c000-b6917000 r-xp 00000000 08:11 15270878   /usr/lib/libX11.so.6.2.0
b6917000-b6918000 r--p 000ea000 08:11 15270878   /usr/lib/libX11.so.6.2.0
b6918000-b691a000 rw-p 000eb000 08:11 15270878   /usr/lib/libX11.so.6.2.0
b691a000-b691b000 rw-p b691a000 00:00 0
b691b000-b6924000 r-xp 00000000 08:11 15271988   /usr/lib/libpangocairo-1.0.so.0.2202.0
b6924000-b6925000 r--p 00008000 08:11 15271988   /usr/lib/libpangocairo-1.0.so.0.2202.0
b6925000-b6926000 rw-p 00009000 08:11 15271988   /usr/lib/libpangocairo-1.0.so.0.2202.0
b6926000-b6978000 r-xp 00000000 08:11 15271453   /usr/lib/libtiff.so.4.2.1
b6978000-b697a000 r--p 00052000 08:11 15271453   /usr/lib/libtiff.so.4.2.1
b697a000-b697b000 rw-p 00054000 08:11 15271453   /usr/lib/libtiff.so.4.2.1
b697b000-b697c000 rw-p b697b000 00:00 0
b697c000-b699b000 r-xp 00000000 08:11 15271751   /usr/lib/libjpeg.so.62.0.0
b699b000-b699c000 rw-p 0001e000 08:11 15271751   /usr/lib/libjpeg.so.62.0.0
b699c000-b69c0000 r-xp 00000000 08:11 15271301   /usr/lib/libpng12.so.0.27.0
b69c0000-b69c1000 r--p 00023000 08:11 15271301   /usr/lib/libpng12.so.0.27.0
b69c1000-b69c2000 rw-p 00024000 08:11 15271301   /usr/lib/libpng12.so.0.27.0
b69c2000-b69c9000 r-xp 00000000 08:11 15270840   /usr/lib/libSM.so.6.0.0
b69c9000-b69ca000 r--p 00006000 08:11 15270840   /usr/lib/libSM.so.6.0.0
b69ca000-b69cb000 rw-p 00007000 08:11 15270840   /usr/lib/libSM.so.6.0.0
b69cb000-b69cd000 r-xp 00000000 08:11 15271225   /usr/lib/libXinerama.so.1.0.0
b69cd000-b69ce000 rw-p 00001000 08:11 15271225   /usr/lib/libXinerama.so.1.0.0
b69ce000-b6a83000 r-xp 00000000 08:11 15271534   /usr/lib/libglib-2.0.so.0.1800.2
b6a83000-b6a84000 r--p 000b4000 08:11 15271534   /usr/lib/libglib-2.0.so.0.1800.2
b6a84000-b6a85000 rw-p 000b5000 08:11 15271534   /usr/lib/libglib-2.0.so.0.1800.2
b6a85000-b6a8c000 r-xp 00000000 08:11 7504264    /lib/tls/i686/cmov/librt-2.8.90.so
b6a8c000-b6a8d000 r--p 00007000 08:11 7504264    /lib/tls/i686/cmov/librt-2.8.90.so
b6a8d000-b6a8e000 rw-p 00008000 08:11 7504264    /lib/tls/i686/cmov/librt-2.8.90.so
b6a8e000-b6a8f000 rw-p b6a8e000 00:00 0
b6a8f000-b6a93000 r-xp 00000000 08:11 15271550   /usr/lib/libgthread-2.0.so.0.1800.2
b6a93000-b6a94000 r--p 00003000 08:11 15271550   /usr/lib/libgthread-2.0.so.0.1800.2
b6a94000-b6a95000 rw-p 00004000 08:11 15271550   /usr/lib/libgthread-2.0.so.0.1800.2
b6a95000-b6a98000 r-xp 00000000 08:11 15271540   /usr/lib/libgmodule-2.0.so.0.1800.2
b6a98000-b6a99000 r--p 00002000 08:11 15271540   /usr/lib/libgmodule-2.0.so.0.1800.2
b6a99000-b6a9a000 rw-p 00003000 08:11 15271540   /usr/lib/libgmodule-2.0.so.0.1800.2
b6a9a000-b6ad6000 r-xp 00000000 08:11 15271542   /usr/lib/libgobject-2.0.so.0.1800.2
b6ad6000-b6ad7000 r--p 0003b000 08:11 15271542   /usr/lib/libgobject-2.0.so.0.1800.2
b6ad7000-b6ad8000 rw-p 0003c000 08:11 15271542   /usr/lib/libgobject-2.0.so.0.1800.2
b6ad8000-b6b03000 r-xp 00000000 08:11 15270073   /usr/lib/libfontconfig.so.1.3.0
b6b03000-b6b04000 r--p 0002a000 08:11 15270073   /usr/lib/libfontconfig.so.1.3.0
b6b04000-b6b05000 rw-p 0002b000 08:11 15270073   /usr/lib/libfontconfig.so.1.3.0
b6b05000-b6b76000 r-xp 00000000 08:11 15270721   /usr/lib/libfreetype.so.6.3.18
b6b76000-b6b7a000 r--p 00070000 08:11 15270721   /usr/lib/libfreetype.so.6.3.18
b6b7a000-b6b7b000 rw-p 00074000 08:11 15270721   /usr/lib/libfreetype.so.6.3.18
b6b7b000-b6bbb000 r-xp 00000000 08:11 15271329   /usr/lib/libpango-1.0.so.0.2202.0
b6bbb000-b6bbc000 ---p 00040000 08:11 15271329   /usr/lib/libpango-1.0.so.0.2202.0
b6bbc000-b6bbd000 r--p 00040000 08:11 15271329   /usr/lib/libpango-1.0.so.0.2202.0
b6bbd000-b6bbe000 rw-p 00041000 08:11 15271329   /usr/lib/libpango-1.0.so.0.2202.0
b6bbe000-b6bbf000 rw-p b6bbe000 00:00 0
b6bbf000-b6c24000 r-xp 00000000 08:11 15271504   /usr/lib/libgio-2.0.so.0.1800.2
b6c24000-b6c25000 ---p 00065000 08:11 15271504   /usr/lib/libgio-2.0.so.0.1800.2
b6c25000-b6c26000 r--p 00065000 08:11 15271504   /usr/lib/libgio-2.0.so.0.1800.2
b6c26000-b6c27000 rw-p 00066000 08:11 15271504   /usr/lib/libgio-2.0.so.0.1800.2
b6c27000-b6c3f000 r-xp 00000000 08:11 15271669   /usr/lib/libgdk_pixbuf-2.0.so.0.1400.4
b6c3f000-b6c40000 r--p 00017000 08:11 15271669   /usr/lib/libgdk_pixbuf-2.0.so.0.1400.4
b6c40000-b6c41000 rw-p 00018000 08:11 15271669   /usr/lib/libgdk_pixbuf-2.0.so.0.1400.4
b6c41000-b6c67000 r-xp 00000000 08:11 15271989   /usr/lib/libpangoft2-1.0.so.0.2202.0
b6c67000-b6c68000 r--p 00025000 08:11 15271989   /usr/lib/libpangoft2-1.0.so.0.2202.0
b6c68000-b6c69000 rw-p 00026000 08:11 15271989   /usr/lib/libpangoft2-1.0.so.0.2202.0
b6c69000-b6c82000 r-xp 00000000 08:11 15270990   /usr/lib/libatk-1.0.so.0.2409.1
b6c82000-b6c84000 r--p 00018000 08:11 15270990   /usr/lib/libatk-1.0.so.0.2409.1
b6c84000-b6c85000 rw-p 0001a000 08:11 15270990   /usr/lib/libatk-1.0.so.0.2409.1
b6c85000-b6d0d000 r-xp 00000000 08:11 15271567   /usr/lib/libgdk-x11-2.0.so.0.1400.4
b6d0d000-b6d0e000 ---p 00088000 08:11 15271567   /usr/lib/libgdk-x11-2.0.so.0.1400.4
b6d0e000-b6d10000 r--p 00088000 08:11 15271567   /usr/lib/libgdk-x11-2.0.so.0.1400.4
b6d10000-b6d11000 rw-p 0008a000 08:11 15271567   /usr/lib/libgdk-x11-2.0.so.0.1400.4
b6d11000-b6d12000 rw-p b6d11000 00:00 0
b6d12000-b70a7000 r-xp 00000000 08:11 15271671   /usr/lib/libgtk-x11-2.0.so.0.1400.4
b70a7000-b70a8000 ---p 00395000 08:11 15271671   /usr/lib/libgtk-x11-2.0.so.0.1400.4
b70a8000-b70ac000 r--p 00395000 08:11 15271671   /usr/lib/libgtk-x11-2.0.so.0.1400.4
b70ac000-b70ae000 rw-p 00399000 08:11 15271671   /usr/lib/libgtk-x11-2.0.so.0.1400.4
b70ae000-b70b0000 rw-p b70ae000 00:00 0
b70b0000-b70b2000 r-xp 00000000 08:11 7504213    /lib/tls/i686/cmov/libdl-2.8.90.so
b70b2000-b70b3000 r--p 00001000 08:11 7504213    /lib/tls/i686/cmov/libdl-2.8.90.so
b70b3000-b70b4000 rw-p 00002000 08:11 7504213    /lib/tls/i686/cmov/libdl-2.8.90.so
b70b4000-b720c000 r-xp 00000000 08:11 7504210    /lib/tls/i686/cmov/libc-2.8.90.so
b720c000-b720e000 r--p 00158000 08:11 7504210    /lib/tls/i686/cmov/libc-2.8.90.so
b720e000-b720f000 rw-p 0015a000 08:11 7504210    /lib/tls/i686/cmov/libc-2.8.90.so
b720f000-b7212000 rw-p b720f000 00:00 0
b7212000-b721f000 r-xp 00000000 08:11 7487509    /lib/libgcc_s.so.1
b721f000-b7220000 r--p 0000c000 08:11 7487509    /lib/libgcc_s.so.1
b7220000-b7221000 rw-p 0000d000 08:11 7487509    /lib/libgcc_s.so.1
b7221000-b7245000 r-xp 00000000 08:11 7504214    /lib/tls/i686/cmov/libm-2.8.90.so
b7245000-b7246000 r--p 00023000 08:11 7504214    /lib/tls/i686/cmov/libm-2.8.90.so
b7246000-b7247000 rw-p 00024000 08:11 7504214    /lib/tls/i686/cmov/libm-2.8.90.so
b7247000-b7248000 rw-p b7247000 00:00 0
b7248000-b732b000 r-xp 00000000 08:11 15271202   /usr/lib/libstdc++.so.6.0.10
b732b000-b732f000 r--p 000e3000 08:11 15271202   /usr/lib/libstdc++.so.6.0.10
b732f000-b7330000 rw-p 000e7000 08:11 15271202   /usr/lib/libstdc++.so.6.0.10
b7330000-b7336000 rw-p b7330000 00:00 0
b7336000-b735c000 r-xp 00000000 08:11 15271167   /usr/lib/libGeoIP.so.1.4.4
b735c000-b735d000 r--p 00025000 08:11 15271167   /usr/lib/libGeoIP.so.1.4.4
b735d000-b735e000 rw-p 00026000 08:11 15271167   /usr/lib/libGeoIP.so.1.4.4
b735e000-b74dc000 r-xp 00000000 08:11 15272509   /usr/lib/libwx_baseud-2.8.so.0.5.0
b74dc000-b74e0000 r--p 0017d000 08:11 15272509   /usr/lib/libwx_baseud-2.8.so.0.5.0
b74e0000-b74e2000 rw-p 00181000 08:11 15272509   /usr/lib/libwx_baseud-2.8.so.0.5.0
b74e2000-b74ea000 rw-p b74e2000 00:00 0
b74ea000-b7517000 r-xp 00000000 08:11 15272510   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b7517000-b7518000 ---p 0002d000 08:11 15272510   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b7518000-b7519000 r--p 0002d000 08:11 15272510   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b7519000-b751a000 rw-p 0002e000 08:11 15272510   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b751a000-b7895000 r-xp 00000000 08:11 15271028   /usr/lib/libwx_gtk2ud_core-2.8.so.0.5.0
b7895000-b78bc000 r--p 0037a000 08:11 15271028   /usr/lib/libwx_gtk2ud_core-2.8.so.0.5.0
b78bc000-b78c1000 rw-p 003a1000 08:11 15271028   /usr/lib/libwx_gtk2ud_core-2.8.so.0.5.0
b78c1000-b78c8000 rw-p b78c1000 00:00 0
b78c8000-b7989000 r-xp 00000000 08:11 15270699   /usr/lib/libwx_gtk2ud_adv-2.8.so.0.5.0
b7989000-b7991000 r--p 000c1000 08:11 15270699   /usr/lib/libwx_gtk2ud_adv-2.8.so.0.5.0
b7991000-b7992000 rw-p 000c9000 08:11 15270699   /usr/lib/libwx_gtk2ud_adv-2.8.so.0.5.0
b7992000-b7994000 rw-p b7992000 00:00 0
b7994000-b799c000 r-xp 00000000 08:11 15269911   /usr/lib/libixml.so.2.0.4
b799c000-b799d000 r--p 00007000 08:11 15269911   /usr/lib/libixml.so.2.0.4
b799d000-b799e000 rw-p 00008000 08:11 15269911   /usr/lib/libixml.so.2.0.4
b799e000-b79a2000 r-xp 00000000 08:11 15269967   /usr/lib/libthreadutil.so.2.2.3
b79a2000-b79a3000 r--p 00003000 08:11 15269967   /usr/lib/libthreadutil.so.2.2.3
b79a3000-b79a4000 rw-p 00004000 08:11 15269967   /usr/lib/libthreadutil.so.2.2.3
b79a4000-b79be000 r-xp 00000000 08:11 15270052   /usr/lib/libupnp.so.3.0.5
b79be000-b79bf000 r--p 00019000 08:11 15270052   /usr/lib/libupnp.so.3.0.5
b79bf000-b79c0000 rw-p 0001a000 08:11 15270052   /usr/lib/libupnp.so.3.0.5
b79c0000-b79c1000 rw-p b79c0000 00:00 0
b79c1000-b7d7c000 r-xp 00000000 08:11 15271308   /usr/lib/libcrypto++.so.7.0.0
b7d7c000-b7db1000 r--p 003bb000 08:11 15271308   /usr/lib/libcrypto++.so.7.0.0
b7db1000-b7db4000 rw-p 003f0000 08:11 15271308   /usr/lib/libcrypto++.so.7.0.0
b7db4000-b7db7000 rw-p b7db4000 00:00 0
b7db7000-b7dcb000 r-xp 00000000 08:11 15270039   /usr/lib/libz.so.1.2.3.3
b7dcb000-b7dcd000 rw-p 00013000 08:11 15270039   /usr/lib/libz.so.1.2.3.3
b7dcd000-b7dce000 rw-p b7dcd000 00:00 0
b7dce000-b7eaa000 r-xp 00000000 08:11 15272892   /usr/lib/libbfd-2.18.93.20081009.so
b7eaa000-b7eb4000 r--p 000dc000 08:11 15272892   /usr/lib/libbfd-2.18.93.20081009.so
b7eb4000-b7eb6000 rw-p 000e6000 08:11 15272892   /usr/lib/libbfd-2.18.93.20081009.so
b7eb6000-b7eba000 rw-p b7eb6000 00:00 0
b7eba000-b7ecf000 r-xp 00000000 08:11 7504262    /lib/tls/i686/cmov/libpthread-2.8.90.so
b7ecf000-b7ed0000 r--p 00014000 08:11 7504262    /lib/tls/i686/cmov/libpthread-2.8.90.so
b7ed0000-b7ed1000 rw-p 00015000 08:11 7504262    /lib/tls/i686/cmov/libpthread-2.8.90.so
b7ed1000-b7ed3000 rw-p b7ed1000 00:00 0
b7ed3000-b7ed4000 r--p 00000000 08:11 15295681   /usr/lib/locale/nl_NL.utf8/LC_PAPER
b7ed4000-b7ed5000 r--p 00000000 08:11 15295426   /usr/lib/locale/nl_NL.utf8/LC_NAME
b7ed5000-b7ed6000 r--p 00000000 08:11 15426939   /usr/lib/locale/nl_NL.utf8/LC_ADDRESS
b7ed6000-b7ed7000 r--p 00000000 08:11 15426940   /usr/lib/locale/nl_NL.utf8/LC_TELEPHONE
b7ed7000-b7ed8000 r--p 00000000 08:11 15295677   /usr/lib/locale/nl_NL.utf8/LC_MEASUREMENT
b7ed8000-b7ed9000 r--p 00000000 08:11 15426941   /usr/lib/locale/nl_NL.utf8/LC_IDENTIFICATION
b7ed9000-b7edb000 r-xp 00000000 08:11 15278949   /usr/lib/gconv/UTF-32.so
b7edb000-b7edc000 r--p 00001000 08:11 15278949   /usr/lib/gconv/UTF-32.so
b7edc000-b7edd000 rw-p 00002000 08:11 15278949   /usr/lib/gconv/UTF-32.so
b7edd000-b7ee4000 r--s 00000000 08:11 15278953   /usr/lib/gconv/gconv-modules.cache
b7ee4000-b7ee6000 rw-p b7ee4000 00:00 0
b7ee6000-b7f00000 r-xp 00000000 08:11 7487687    /lib/ld-2.8.90.so
b7f00000-b7f01000 r-xp b7f00000 00:00 0          [vdso]
b7f01000-b7f02000 r--p 0001a000 08:11 7487687    /lib/ld-2.8.90.so
b7f02000-b7f03000 rw-p 0001b000 08:11 7487687    /lib/ld-2.8.90.so
bf9e5000-bfa02000 rw-p bffe3000 00:00 0          [stack]
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 07, 2009, 01:41:07 PM
Hey, i upgraded amule, and i got more extensive backtraces now! :)
nice! (or is it a coincidence?)
I thought i would check out the VSZ build up of 2.2.4,
so, I stepped on the gas and when amule started freezing,
this is what i recorded (within 3 minutes!):

$ ps axl | grep amule
Code: [Select]
0  1000  6576  6556  20   0 1516768 1454528 -   Rl+  pts/0    217:28 /usr/bin/amule
0  1000  6576  6556  20   0 1852180 1790016 -   Rl+  pts/0    218:02 /usr/bin/amule
0  1000  6576  6556  20   0 1953028 1890828 -   Rl+  pts/0    218:12 /usr/bin/amule
0  1000  6576  6556  20   0 2005828 1943644 -   Rl+  pts/0    218:17 /usr/bin/amule
0  1000  6576  6556  20   0 2074600 2012388 -   Sl+  pts/0    218:24 /usr/bin/amule
0  1000  6576  6556  20   0 2181124 2118920 -   Rl+  pts/0    218:35 /usr/bin/amule
0  1000  6576  6556  20   0 2237224 2175068 -   Rl+  pts/0    218:41 /usr/bin/amule
0  1000  6576  6556  20   0 2291872 2229732 -   Rl+  pts/0    218:46 /usr/bin/amule
0  1000  6576  6556  20   0 2362096 2295424 -   Rl+  pts/0    218:53 /usr/bin/amule
0  1000  6576  6556  20   0 2471392 2341024 -   Sl+  pts/0    219:04 /usr/bin/amule
0  1000  6576  6556  20   0 2540692 2356620 -   Rl+  pts/0    219:11 /usr/bin/amule
0  1000  6576  6556  20   0 2663716 2416916 -   Rl+  pts/0    219:22 /usr/bin/amule
0  1000  6576  6556  20   0 2781196 2420808 -   Rl+  pts/0    219:33 /usr/bin/amule
0  1000  6576  6556  20   0 2859140 2444392 -   Rl+  pts/0    219:41 /usr/bin/amule
0  1000  6576  6556  20   0 2917508 2468548 -   Rl+  pts/0    219:46 /usr/bin/amule
0  1000  6576  6556  20   0 2965636 2448640 -   Rl+  pts/0    219:51 /usr/bin/amule
0  1000  6576  6556  20   0 3007620 2431868 -   Rl+  pts/0    219:55 /usr/bin/amule
0  1000  6576  6556  20   0 3052676 2477072 -   Rl+  pts/0    219:59 /usr/bin/amule
0  1000  6576  6556  20   0 3108996 2475080 -   Rl+  pts/0    220:05 /usr/bin/amule
0  1000  6576  6556  20   0 3145724 2501608 sync_p Dl+ pts/0  220:08 /usr/bin/amule
0  1000  6576  6556  20   0 3145724 2499884 ptrace Tl pts/0   220:08 /usr/bin/amule

and yes, then it crashed:

$ free
Code: [Select]
             total       used       free     shared    buffers     cached
Mem:       3111840    3024880      86960          0      13068     581024
-/+ buffers/cache:    2430788     681052
Swap:      9100780    1390252    7710528

(gdb) bt

Code: [Select]
#0  0xb807a430 in __kernel_vsyscall ()
#1  0xb72598a0 in raise () from /lib/tls/i686/cmov/libc.so.6
#2  0xb725b268 in abort () from /lib/tls/i686/cmov/libc.so.6
#3  0x083e9e51 in OnUnhandledException ()
    at ../../../../src/libs/common/MuleDebug.cpp:103
#4  0xb747c655 in __cxxabiv1::__terminate (
    handler=0x83e9ae0 <OnUnhandledException()>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
#5  0xb747c692 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
#6  0xb747c74b in __cxa_rethrow ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:109
#7  0x082074af in std::__norm::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::_M_new_elements_at_front (this=0xa84daa0,
    __new_elems=1) at /usr/include/c++/4.3/bits/deque.tcc:734
#8  0x08207517 in std::__norm::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::_M_reserve_elements_at_front (this=0xa84daa0, __n=1)
    at /usr/include/c++/4.3/bits/stl_deque.h:1635
#9  0x08208463 in std::__norm::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::_M_range_insert_aux<__gnu_debug::_Safe_iterator<std::__norm::_Deque_iterator<ThrottledControlSocket*, ThrottledControlSocket*&, ThrottledControlSocket**>, std::__debug::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> > > > (this=0xa84daa0, __pos=
---Type <return> to continue, or q <return> to quit---
      {_M_cur = 0xb5776bcc, _M_first = 0xb5776bac, _M_last = 0xb5776b8c, _M_node = 0xb803d000}, __first=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb5776bac, _M_version = 3044502412, _M_prior = 0xb803d000, _M_next = 0x65}, _M_current = {_M_cur = 0x1a51, _M_first = 0x0, _M_last = 0x1, _M_node = 0xb2d30a38}}, __last=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb5776b8c, _M_version = 3087257600, _M_prior = 0x65, _M_next = 0x1a51}, _M_current = {_M_cur = 0x0, _M_first = 0x1, _M_last = 0xb2d30a38, _M_node = 0xb2f684b0}})
    at /usr/include/c++/4.3/bits/deque.tcc:440
#10 0x08208942 in std::__norm::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::_M_insert_dispatch<__gnu_debug::_Safe_iterator<std::__norm::_Deque_iterator<ThrottledControlSocket*, ThrottledControlSocket*&, ThrottledControlSocket**>, std::__debug::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> > > > (this=0xa84daa0, __pos=
      {_M_cur = 0xb5776c50, _M_first = 0xb5776c30, _M_last = 0xb5776c10, _M_node = 0xa848a08}, __first=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb5776c30, _M_version = 3044502544, _M_prior = 0xa848a08, _M_next = 0xb5776c50}, _M_current = {_M_cur = 0xb5776c28, _M_first = 0x820137a, _M_last = 0xa84db30, _M_node = 0x41a438}}, __last=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb5776c10, _M_version = 176458248, _M_prior = 0xb5776c50, _M_next = 0xb5776c28}, _M_current = {_M_cur = 0x820137a, _M_first = 0xa84db30, _M_last = 0x41a438, _M_node = 0xb5776c30}---Type <return> to continue, or q <return> to quit---
}) at /usr/include/c++/4.3/bits/stl_deque.h:1544
#11 0x08208a0e in std::__norm::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::insert<__gnu_debug::_Safe_iterator<std::__norm::_Deque_iterator<ThrottledControlSocket*, ThrottledControlSocket*&, ThrottledControlSocket**>, std::__debug::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> > > > (this=0xa84daa0, __position=
      {_M_cur = 0xb5777090, _M_first = 0xb5777070, _M_last = 0xb5777050, _M_node = 0xb5776f9c}, __first=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb5777070, _M_version = 3044503632, _M_prior = 0xb5776f9c, _M_next = 0xb729f951}, _M_current = {_M_cur = 0x0, _M_first = 0xb74129c7, _M_last = 0xb74a9c8c, _M_node = 0xb803c100}}, __last=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb5777050, _M_version = 3044503452, _M_prior = 0xb729f951, _M_next = 0x0}, _M_current = {_M_cur = 0xb74129c7, _M_first = 0xb74a9c8c, _M_last = 0xb803c100, _M_node = 0xb5776e08}})
    at /usr/include/c++/4.3/bits/stl_deque.h:1301
#12 0x08208c6f in std::__debug::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::insert<__gnu_debug::_Safe_iterator<std::__norm::_Deque_iterator<ThrottledControlSocket*, ThrottledControlSocket*&, ThrottledControlSocket**>, std::__debug::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> > > > (this=0xa84daa0, __position=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb57771bc, _M_version = 3044503964, _M_prior = 0xb577717c, _M_next = 0x0}, _M_current = {_M_cur = ---Type <return> to continue, or q <return> to quit---
0x0, _M_first = 0xffffff4f, _M_last = 0xffffffff, _M_node = 0x0}}, __first=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb577719c, _M_version = 3044503932, _M_prior = 0x0, _M_next = 0x0}, _M_current = {_M_cur = 0xffffff4f, _M_first = 0xffffffff, _M_last = 0x0, _M_node = 0xb0}}, __last=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb577717c, _M_version = 0, _M_prior = 0x0, _M_next = 0xffffff4f}, _M_current = {_M_cur = 0xffffffff, _M_first = 0x0, _M_last = 0xb0, _M_node = 0xf36883e7}})
    at /usr/include/c++/4.3/debug/deque:329
#13 0x081fd6a3 in UploadBandwidthThrottler::Entry (this=0xa84da88)
    at ../../src/UploadBandwidthThrottler.cpp:376
#14 0xb75dd036 in wxThreadInternal::PthreadStart (thread=0xa84da88)
    at ../src/unix/threadpsx.cpp:766
#15 0xb75dd13d in wxPthreadStart (ptr=0xa84da88)
    at ../src/unix/threadpsx.cpp:718
#16 0xb803a50f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
#17 0xb730fa0e in clone () from /lib/tls/i686/cmov/libc.so.6

(gdb) bt full

Code: [Select]
#0  0xb807a430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb72598a0 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0xb725b268 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0x083e9e51 in OnUnhandledException ()
    at ../../../../src/libs/common/MuleDebug.cpp:103
t = (class std::type_info *) 0x86e5a6c
output = (FILE *) 0xb7388560
#4  0xb747c655 in __cxxabiv1::__terminate (
    handler=0x83e9ae0 <OnUnhandledException()>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
No locals.
#5  0xb747c692 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
No locals.
#6  0xb747c74b in __cxa_rethrow ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:109
globals = (__cxxabiv1::__cxa_eh_globals *) 0x0
header = (__cxxabiv1::__cxa_exception *) 0xb74abad0
#7  0x082074af in std::__norm::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::_M_new_elements_at_front (this=0xa84daa0,
---Type <return> to continue, or q <return> to quit---
    __new_elems=1) at /usr/include/c++/4.3/bits/deque.tcc:734
__new_nodes = 1
__i = 1
#8  0x08207517 in std::__norm::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::_M_reserve_elements_at_front (this=0xa84daa0, __n=1)
    at /usr/include/c++/4.3/bits/stl_deque.h:1635
__vacancies = 0
#9  0x08208463 in std::__norm::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::_M_range_insert_aux<__gnu_debug::_Safe_iterator<std::__norm::_Deque_iterator<ThrottledControlSocket*, ThrottledControlSocket*&, ThrottledControlSocket**>, std::__debug::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> > > > (this=0xa84daa0, __pos=
      {_M_cur = 0xb5776bcc, _M_first = 0xb5776bac, _M_last = 0xb5776b8c, _M_node = 0xb803d000}, __first=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb5776bac, _M_version = 3044502412, _M_prior = 0xb803d000, _M_next = 0x65}, _M_current = {_M_cur = 0x1a51, _M_first = 0x0, _M_last = 0x1, _M_node = 0xb2d30a38}}, __last=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb5776b8c, _M_version = 3087257600, _M_prior = 0x65, _M_next = 0x1a51}, _M_current = {_M_cur = 0x0, _M_first = 0x1, _M_last = 0xb2d30a38, _M_node = 0xb2f684b0}})
    at /usr/include/c++/4.3/bits/deque.tcc:440
__new_start = {_M_cur = 0xb74a9c8c, _M_first = 0x7fffffff,
  _M_last = 0x11f67fff, _M_node = 0xb5776b48}
---Type <return> to continue, or q <return> to quit---
__n = 1
#10 0x08208942 in std::__norm::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::_M_insert_dispatch<__gnu_debug::_Safe_iterator<std::__norm::_Deque_iterator<ThrottledControlSocket*, ThrottledControlSocket*&, ThrottledControlSocket**>, std::__debug::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> > > > (this=0xa84daa0, __pos=
      {_M_cur = 0xb5776c50, _M_first = 0xb5776c30, _M_last = 0xb5776c10, _M_node = 0xa848a08}, __first=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb5776c30, _M_version = 3044502544, _M_prior = 0xa848a08, _M_next = 0xb5776c50}, _M_current = {_M_cur = 0xb5776c28, _M_first = 0x820137a, _M_last = 0xa84db30, _M_node = 0x41a438}}, __last=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb5776c10, _M_version = 176458248, _M_prior = 0xb5776c50, _M_next = 0xb5776c28}, _M_current = {_M_cur = 0x820137a, _M_first = 0xa84db30, _M_last = 0x41a438, _M_node = 0xb5776c30}}) at /usr/include/c++/4.3/bits/stl_deque.h:1544
No locals.
#11 0x08208a0e in std::__norm::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::insert<__gnu_debug::_Safe_iterator<std::__norm::_Deque_iterator<ThrottledControlSocket*, ThrottledControlSocket*&, ThrottledControlSocket**>, std::__debug::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> > > > (this=0xa84daa0, __position=
      {_M_cur = 0xb5777090, _M_first = 0xb5777070, _M_last = 0xb5777050, _M_node---Type <return> to continue, or q <return> to quit---
 = 0xb5776f9c}, __first=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb5777070, _M_version = 3044503632, _M_prior = 0xb5776f9c, _M_next = 0xb729f951}, _M_current = {_M_cur = 0x0, _M_first = 0xb74129c7, _M_last = 0xb74a9c8c, _M_node = 0xb803c100}}, __last=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb5777050, _M_version = 3044503452, _M_prior = 0xb729f951, _M_next = 0x0}, _M_current = {_M_cur = 0xb74129c7, _M_first = 0xb74a9c8c, _M_last = 0xb803c100, _M_node = 0xb5776e08}})
    at /usr/include/c++/4.3/bits/stl_deque.h:1301
No locals.
#12 0x08208c6f in std::__debug::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::insert<__gnu_debug::_Safe_iterator<std::__norm::_Deque_iterator<ThrottledControlSocket*, ThrottledControlSocket*&, ThrottledControlSocket**>, std::__debug::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> > > > (this=0xa84daa0, __position=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb57771bc, _M_version = 3044503964, _M_prior = 0xb577717c, _M_next = 0x0}, _M_current = {_M_cur = 0x0, _M_first = 0xffffff4f, _M_last = 0xffffffff, _M_node = 0x0}}, __first=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb577719c, _M_version = 3044503932, _M_prior = 0x0, _M_next = 0x0}, _M_current = {_M_cur = 0xffffff4f, _M_first = 0xffffffff, _M_last = 0x0, _M_node = 0xb0}}, __last=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb577717c, _M_version = 0, _M_prior = 0x0, _M_next = 0xffffff4f}, _M_current = {_M_cur = 0xfffffff---Type <return> to continue, or q <return> to quit---
f, _M_first = 0x0, _M_last = 0xb0, _M_node = 0xf36883e7}})
    at /usr/include/c++/4.3/debug/deque:329
No locals.
#13 0x081fd6a3 in UploadBandwidthThrottler::Entry (this=0xa84da88)
    at ../../src/UploadBandwidthThrottler.cpp:376
queueLock = {m_isOk = true, m_mutex = @0xa84da9c}
spentBytes = 0
spentOverhead = 0
sendLock = {m_isOk = true, m_mutex = @0xa84da98}
maxSlot = 176
timeSinceLastLoop = 1000
minFragSize = 1300
doubleSendSize = 2600
bytesToSpend = 4083712
sleepTime = 1000
thisLoopTick = 2151869390
TIME_BETWEEN_UPLOAD_LOOPS = 1
lastLoopTick = 2151869390
realBytesToSpend = 4083712999
allowedDataRate = 3993600
rememberedSlotCounter = 17
extraSleepTime = 1000
sendLock = {m_isOk = false, m_mutex = @0xb8049ff4}
---Type <return> to continue, or q <return> to quit---
#14 0xb75dd036 in wxThreadInternal::PthreadStart (thread=0xa84da88)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0xa8c7758
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#15 0xb75dd13d in wxPthreadStart (ptr=0xa84da88)
    at ../src/unix/threadpsx.cpp:718
No locals.
#16 0xb803a50f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#17 0xb730fa0e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 07, 2009, 01:44:35 PM
(gdb) thread apply all bt full

Code: [Select]
Thread 5 (Thread 0xb4775b90 (LWP 6751)):
#0  0xb807a430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb803e3a2 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
   from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0xb75da6e1 in wxConditionInternal::WaitTimeout (this=0xce174f8,
    milliseconds=100) at ../src/unix/threadpsx.cpp:405
tspec = {tv_sec = 1239102453, tv_nsec = 52000000}
err = <value optimized out>
#3  0xb75da76a in wxCondition::WaitTimeout (this=0xcdd029c, milliseconds=100)
    at ../include/wx/thrimpl.cpp:256
__FUNCTION__ = "WaitTimeout"
#4  0xb75dc524 in wxSemaphoreInternal::WaitTimeout (this=0xcdd0298,
    milliseconds=100) at ../src/unix/threadpsx.cpp:552
remainingTime = -516
locker = {m_isOk = true, m_mutex = @0xcdd0298}
#5  0xb75dc5aa in wxSemaphore::WaitTimeout (this=0xa9e5498, milliseconds=100)
    at ../include/wx/thrimpl.cpp:320
__FUNCTION__ = "WaitTimeout"
#6  0x083e39d4 in CTimerThread::Entry (this=0xa9e5478)
    at ../../src/Timer.cpp:64
---Type <return> to continue, or q <return> to quit---
now = 2151871704
sinceLast = 0
timeout = 100
evt = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x85c7608,
      static ms_classInfo = {m_className = 0xb760e1a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7b0b8cc, m_next = 0xb76628c4,
        static sm_classTable = 0xa10a3e8}, m_refData = 0x0},
    m_eventObject = 0x0, m_eventType = 10244, m_timeStamp = 0, m_id = 6128,
    m_callbackUserData = 0x0, m_propagationLevel = 0, m_skipped = false,
    m_isCommandEvent = false, static ms_classInfo = {m_className = 0xb761f708,
      m_objectSize = 36, m_objectConstructor = 0, m_baseInfo1 = 0xb7662858,
      m_baseInfo2 = 0x0, static sm_first = 0xb7b0b8cc, m_next = 0xb7663908,
      static sm_classTable = 0xa10a3e8}}, <No data fields>}
lastEvent = 2151871704
#7  0xb75dd036 in wxThreadInternal::PthreadStart (thread=0xa9e5478)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0xce0e5d8
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#8  0xb75dd13d in wxPthreadStart (ptr=0xa9e5478)
    at ../src/unix/threadpsx.cpp:718
---Type <return> to continue, or q <return> to quit---
No locals.
#9  0xb803a50f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#10 0xb730fa0e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 3 (Thread 0xb5777b90 (LWP 6737)):
#0  0xb807a430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb72598a0 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0xb725b268 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0x083e9e51 in OnUnhandledException ()
    at ../../../../src/libs/common/MuleDebug.cpp:103
t = (class std::type_info *) 0x86e5a6c
output = (FILE *) 0xb7388560
#4  0xb747c655 in __cxxabiv1::__terminate (
    handler=0x83e9ae0 <OnUnhandledException()>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
No locals.
#5  0xb747c692 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
---Type <return> to continue, or q <return> to quit---
No locals.
#6  0xb747c74b in __cxa_rethrow ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:109
globals = (__cxxabiv1::__cxa_eh_globals *) 0x0
header = (__cxxabiv1::__cxa_exception *) 0xb74abad0
#7  0x082074af in std::__norm::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::_M_new_elements_at_front (this=0xa84daa0,
    __new_elems=1) at /usr/include/c++/4.3/bits/deque.tcc:734
__new_nodes = 1
__i = 1
#8  0x08207517 in std::__norm::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::_M_reserve_elements_at_front (this=0xa84daa0, __n=1)
    at /usr/include/c++/4.3/bits/stl_deque.h:1635
__vacancies = 0
#9  0x08208463 in std::__norm::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::_M_range_insert_aux<__gnu_debug::_Safe_iterator<std::__norm::_Deque_iterator<ThrottledControlSocket*, ThrottledControlSocket*&, ThrottledControlSocket**>, std::__debug::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> > > > (this=0xa84daa0, __pos=
      {_M_cur = 0xb5776bcc, _M_first = 0xb5776bac, _M_last = 0xb5776b8c, _M_node = 0xb803d000}, __first=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb5776bac, _M_version = 3044502412, _M_prior = 0xb803d000, _M_next = 0x65}, _M_current = {_M_cur =---Type <return> to continue, or q <return> to quit---
 0x1a51, _M_first = 0x0, _M_last = 0x1, _M_node = 0xb2d30a38}}, __last=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb5776b8c, _M_version = 3087257600, _M_prior = 0x65, _M_next = 0x1a51}, _M_current = {_M_cur = 0x0, _M_first = 0x1, _M_last = 0xb2d30a38, _M_node = 0xb2f684b0}})
    at /usr/include/c++/4.3/bits/deque.tcc:440
__new_start = {_M_cur = 0xb74a9c8c, _M_first = 0x7fffffff,
  _M_last = 0x11f67fff, _M_node = 0xb5776b48}
__n = 1
#10 0x08208942 in std::__norm::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::_M_insert_dispatch<__gnu_debug::_Safe_iterator<std::__norm::_Deque_iterator<ThrottledControlSocket*, ThrottledControlSocket*&, ThrottledControlSocket**>, std::__debug::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> > > > (this=0xa84daa0, __pos=
      {_M_cur = 0xb5776c50, _M_first = 0xb5776c30, _M_last = 0xb5776c10, _M_node = 0xa848a08}, __first=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb5776c30, _M_version = 3044502544, _M_prior = 0xa848a08, _M_next = 0xb5776c50}, _M_current = {_M_cur = 0xb5776c28, _M_first = 0x820137a, _M_last = 0xa84db30, _M_node = 0x41a438}}, __last=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb5776c10, _M_version = 176458248, _M_prior = 0xb5776c50, _M_next = 0xb5776c28}, _M_current = {_M_cur = 0x820137a, _M_first = 0xa84db30, _M_last = 0x41a438, _M_node = 0xb5776c30}}) at /usr/include/c++/4.3/bits/stl_deque.h:1544
---Type <return> to continue, or q <return> to quit---
No locals.
#11 0x08208a0e in std::__norm::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::insert<__gnu_debug::_Safe_iterator<std::__norm::_Deque_iterator<ThrottledControlSocket*, ThrottledControlSocket*&, ThrottledControlSocket**>, std::__debug::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> > > > (this=0xa84daa0, __position=
      {_M_cur = 0xb5777090, _M_first = 0xb5777070, _M_last = 0xb5777050, _M_node = 0xb5776f9c}, __first=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb5777070, _M_version = 3044503632, _M_prior = 0xb5776f9c, _M_next = 0xb729f951}, _M_current = {_M_cur = 0x0, _M_first = 0xb74129c7, _M_last = 0xb74a9c8c, _M_node = 0xb803c100}}, __last=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb5777050, _M_version = 3044503452, _M_prior = 0xb729f951, _M_next = 0x0}, _M_current = {_M_cur = 0xb74129c7, _M_first = 0xb74a9c8c, _M_last = 0xb803c100, _M_node = 0xb5776e08}})
    at /usr/include/c++/4.3/bits/stl_deque.h:1301
No locals.
#12 0x08208c6f in std::__debug::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::insert<__gnu_debug::_Safe_iterator<std::__norm::_Deque_iterator<ThrottledControlSocket*, ThrottledControlSocket*&, ThrottledControlSocket**>, std::__debug::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> > > > (this=0xa84daa0, __position=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb57771bc, _M_vers---Type <return> to continue, or q <return> to quit---
ion = 3044503964, _M_prior = 0xb577717c, _M_next = 0x0}, _M_current = {_M_cur = 0x0, _M_first = 0xffffff4f, _M_last = 0xffffffff, _M_node = 0x0}}, __first=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb577719c, _M_version = 3044503932, _M_prior = 0x0, _M_next = 0x0}, _M_current = {_M_cur = 0xffffff4f, _M_first = 0xffffffff, _M_last = 0x0, _M_node = 0xb0}}, __last=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb577717c, _M_version = 0, _M_prior = 0x0, _M_next = 0xffffff4f}, _M_current = {_M_cur = 0xffffffff, _M_first = 0x0, _M_last = 0xb0, _M_node = 0xf36883e7}})
    at /usr/include/c++/4.3/debug/deque:329
No locals.
#13 0x081fd6a3 in UploadBandwidthThrottler::Entry (this=0xa84da88)
    at ../../src/UploadBandwidthThrottler.cpp:376
queueLock = {m_isOk = true, m_mutex = @0xa84da9c}
spentBytes = 0
spentOverhead = 0
sendLock = {m_isOk = true, m_mutex = @0xa84da98}
maxSlot = 176
timeSinceLastLoop = 1000
minFragSize = 1300
doubleSendSize = 2600
bytesToSpend = 4083712
sleepTime = 1000
thisLoopTick = 2151869390
---Type <return> to continue, or q <return> to quit---
TIME_BETWEEN_UPLOAD_LOOPS = 1
lastLoopTick = 2151869390
realBytesToSpend = 4083712999
allowedDataRate = 3993600
rememberedSlotCounter = 17
extraSleepTime = 1000
sendLock = {m_isOk = false, m_mutex = @0xb8049ff4}
#14 0xb75dd036 in wxThreadInternal::PthreadStart (thread=0xa84da88)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0xa8c7758
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#15 0xb75dd13d in wxPthreadStart (ptr=0xa84da88)
    at ../src/unix/threadpsx.cpp:718
No locals.
#16 0xb803a50f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#17 0xb730fa0e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 1 (Thread 0xb67f6700 (LWP 6576)):
#0  0xb807a430 in __kernel_vsyscall ()
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#1  0xb72598a0 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0xb725b268 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0x083e9e51 in OnUnhandledException ()
    at ../../../../src/libs/common/MuleDebug.cpp:103
t = (class std::type_info *) 0x86e5a6c
output = (FILE *) 0xb7388560
#4  0xb747c655 in __cxxabiv1::__terminate (
    handler=0x83e9ae0 <OnUnhandledException()>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
No locals.
#5  0xb747c692 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
No locals.
#6  0xb747c7ca in __cxa_throw (obj=0xb74ab8f0, tinfo=0x86e5a6c,
    dest=0xb747cd00 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
header = <value optimized out>
#7  0xb747ce23 in operator new (sz=44)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
handler = <value optimized out>
---Type <return> to continue, or q <return> to quit---
p = <value optimized out>
#8  0xb76830e9 in wxSocketEvent::Clone (this=0xbfb795a0)
    at ../include/wx/socket.h:314
No locals.
#9  0xb75debb5 in wxEvtHandler::AddPendingEvent (this=0x86e80c0,
    event=@0xbfb795a0) at ../src/common/event.cpp:1130
eventCopy = <value optimized out>
__FUNCTION__ = "AddPendingEvent"
#10 0xb7682d58 in wxSocketBase::OnRequest (this=0xceb4f48,
    notification=wxSOCKET_OUTPUT) at ../src/common/socket.cpp:1006
event = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x86e1488,
      static ms_classInfo = {m_className = 0xb760e1a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7b0b8cc, m_next = 0xb76628c4,
        static sm_classTable = 0xa10a3e8}, m_refData = 0x0},
    m_eventObject = 0xceb4f48, m_eventType = 10002, m_timeStamp = 0,
    m_id = 6123, m_callbackUserData = 0x0, m_propagationLevel = 0,
    m_skipped = false, m_isCommandEvent = false, static ms_classInfo = {
      m_className = 0xb761f708, m_objectSize = 36, m_objectConstructor = 0,
      m_baseInfo1 = 0xb7662858, m_baseInfo2 = 0x0,
      static sm_first = 0xb7b0b8cc, m_next = 0xb7663908,
      static sm_classTable = 0xa10a3e8}}, m_event = wxSOCKET_OUTPUT,
  m_clientData = 0x0, static ms_classInfo = {m_className = 0xb768a008,
---Type <return> to continue, or q <return> to quit---
    m_objectSize = 44,
    m_objectConstructor = 0xb7680e00 <wxSocketEvent::wxCreateObject()>,
    m_baseInfo1 = 0xb7663920, m_baseInfo2 = 0x0, static sm_first = 0xb7b0b8cc,
    m_next = 0xb769354c, static sm_classTable = 0xa10a3e8}}
flag = <value optimized out>
#11 0xb7682e54 in wx_socket_callback (notification=GSOCK_OUTPUT,
    cdata=0xceb4f48 "\b-M\b") at ../src/common/socket.cpp:942
No locals.
#12 0xb76876bb in GSocket::Detected_Write (this=0xda9e9a0)
    at ../src/unix/gsocket.cpp:1836
No locals.
#13 0xb77d1be7 in _GSocket_GDK_Input (data=0xda9e9a0, source=158,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
No locals.
#14 0xb6e1a4af in gdk_io_invoke (source=0xb31619f0,
    condition=<value optimized out>, data=0xb2745b78)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = GDK_INPUT_WRITE
#15 0xb6bb871d in g_io_unix_dispatch (source=0xb23a2660,
    callback=0xb6e1a450 <gdk_io_invoke>, user_data=0xb2745b78)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 6
#16 0xb6b81718 in IA__g_main_context_dispatch (context=0xa137918)
---Type <return> to continue, or q <return> to quit---
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#17 0xb6b84dc3 in g_main_context_iterate (context=0xa137918, block=1,
    dispatch=1, self=0xa138ec0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 110
timeout = 0
some_ready = 1
nfds = 11
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xb0b9fa40
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#18 0xb6b852e2 in IA__g_main_loop_run (loop=0xcd631a0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0xa138ec0
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#19 0xb6fb33a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0xa9e2b80
loop = (GMainLoop *) 0xcd631a0
#20 0xb77d010b in wxEventLoop::Run (this=0xa9e2b80)
---Type <return> to continue, or q <return> to quit---
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#21 0xb78743dc in wxAppBase::MainLoop (this=0xa1377d0)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0xa9e2b80}, m_pp = 0xa137810,
  m_pOld = 0x0}
#22 0xb7874131 in wxAppBase::OnRun (this=0x6) at ../src/common/appcmn.cpp:367
No locals.
#23 0xb75693fa in wxEntry (argc=@0xb76616cc, argv=0xa125e38)
    at ../src/common/init.cpp:460
No locals.
#24 0xb75694b7 in wxEntry (argc=@0xbfb79910, argv=0xbfb79994)
    at ../src/common/init.cpp:472
No locals.
#25 0x082ac21d in main (argc=0, argv=0x0) at ../../src/amule-gui.cpp:95
No locals.
#0  0xb807a430 in __kernel_vsyscall ()
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Festor on April 07, 2009, 04:18:44 PM
RRM, please see: http://www.amule.org/amule/index.php?topic=16648.msg89143#msg89143
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 07, 2009, 04:20:31 PM
When i click on that link it says:
Quote
The topic or board you are looking for appears to be either missing or off limits to you.

Let me see if i can find that thread by checking all forums...
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Festor on April 07, 2009, 04:21:40 PM
Opss, sorry. Copy and pasted:

Quote
I deleted all packages of these repositories (aMule rc repositories) because there is a final release of 2.2.4:

http://www.amule.org/amule/index.php?topic=16647.0

I will continue to build packages with debug information for svn releases of next aMule version, (the 2.3.0 ? )

You can find them here: http://www.amule.org/amule/index.php?topic=16693.0

When 2.3.0  has any  release candidate, then the deb packages will be here.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 07, 2009, 05:04:36 PM
Ah, ok...
I thought that i would upgrade amule by symply using the update manager,
as amule was included in the list of programs that were updated.
So, for every new version one has to add a line to the repositories...

Thank you!!
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 07, 2009, 05:11:25 PM
Thank you Festor, i now (really) installed 2.2.4, but....
maybe the debug libraries are not installed?
Running gdb amule, I get this again!:

Code: [Select]
(gdb) run
Starting program: /usr/bin/amule
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
[Thread debugging using libthread_db enabled]
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
[New Thread 0xb6758700 (LWP 6349)]
Initialising aMule 2.2.4 using wxGTK2 v2.8.8

Let me try installing those packages as well...
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 07, 2009, 05:25:47 PM
Ah, silly me... (i simply assumed 2.2.4 had build-in debug info
and didnt think about why you included that other link as well)

Yes, now it runs smoothly: SVN rev. 9565
So, let me try to evoke a crash...   ::)
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Festor on April 07, 2009, 06:51:09 PM
Well, let me explain. There are 3 aMule repositories for Ubuntu (each with its own "sub-repositories" for each Ubuntu release)

* aMule Stable release
PPA page: https://launchpad.net/~amule-releases
aMule forum post: http://www.amule.org/amule/index.php?topic=16647.0

* aMule releases candidate
PPA page: https://launchpad.net/~amule-rc
aMule forum post: http://www.amule.org/amule/index.php?topic=16648.0

* aMule development releases
PPA page: https://launchpad.net/~amule-trunk
aMule forum post: http://www.amule.org/amule/index.php?topic=16693.0

Stable release hasn't debug info and usually has any optimization (I'm looking for the best). Release candidate and Development release has debug info.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 07, 2009, 07:25:45 PM
Ah, i get it (a bit).  :)
Thank you, thank you!
(PS: this link doesnt work: http://www.amule.org/amule/index.php?topic=16648.0
, and i love this image: https://launchpadlibrarian.net/23396779/amule-trunk.png  ;D)

Even though i constantly have my foot on the gas-pedal,
amule runs smoothly so far.
No glib warnings.
Because i also added some extra popular downloads (many MB/s up & down),
Amule freezes a lot, and it sometimes takes minutes to go
from transfers to stats (for example), which was always
a prelude to a crash, but so far that doesnt seem to be the case now...
Lets wait and see....

Thank you for your spectacular work!!!
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 08, 2009, 09:28:14 AM
Impressive: no crash, even though amule had to handle about 500 connections
almost constantly.  :) (additional 380 torrent connections)

However, i got something new; amule halted working due to an error:

Code: [Select]
ASSERT INFO:
../../src/EncryptedStreamSocket.cpp(231): assert "wxAssertFailure" failed in Read().

BACKTRACE:
[1] CEncryptedStreamSocket::Read(void*, unsigned int) /build/buildd/amule-2.3.0~svnr9565/obj-i486-linux-gnu/src/../../src/EncryptedStreamSocket.cpp:233
[2] CEMSocket::OnReceive(int) /build/buildd/amule-2.3.0~svnr9565/obj-i486-linux-gnu/src/../../src/EMSocket.cpp:227
[3] CClientTCPSocket::OnReceive(int) /build/buildd/amule-2.3.0~svnr9565/obj-i486-linux-gnu/src/../../src/ClientTCPSocket.cpp:1958
[4] CClientTCPSocketHandler::ClientTCPSocketHandler(wxSocketEvent&) /build/buildd/amule-2.3.0~svnr9565/obj-i486-linux-gnu/src/../../src/ClientTCPSocket.cpp:94
[5] wxAppConsole::HandleEvent(wxEvtHandler*, void (wxEvtHandler::*)(wxEvent&), wxEvent&) cons)
[6] wxEvtHandler::ProcessEventIfMatches(wxEventTableEntryBase const&, wxEvtHandler*, wxEvent&)
[7] wxEventHashTable::HandleEvent(wxEvent&, wxEvtHandler*)
[8] wxEvtHandler::ProcessEvent(wxEvent&)
[9] wxEvtHandler::ProcessPendingEvents()
[10] wxAppConsole::ProcessPendingEvents()
[11] wxAppBase::ProcessIdle()
[12] g_main_context_dispatch()
[13] g_main_loop_run()
[14] gtk_main()
[15] wxEventLoop::Run()
[16] wxAppBase::MainLoop()

After having to press "continue", amule went back to work.
 
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 08, 2009, 07:51:02 PM
Perfect, still no crash!
Im glad I took the red pill...  ;D

However, at this level of activity, aMule is extremely slow
, regarding navigation; most of the times it takes minutes to
go from 'transfers' to 'search', for example. Or even to be able to type a
search expression.
Its not my system, because all other programs that i run simultaneously,
work as smoothly as ever.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 09, 2009, 07:16:05 AM
Unfortunately, SVN rev. 9565 crashed; another high VSZ - SIGABRT crash:
(proceeded by the usual glib-warning)

(amule:12103): GLib-WARNING **: /build/buildd/glib2.0-2.18.2/glib/giounix.c:400Error while getting flags for FD: Bad file descriptor (9)

(amule:12103): GLib-CRITICAL **: g_source_remove: assertion `tag > 0' failed

Terminated after throwing an instance of 'std::bad_alloc'
   what(): std::bad_alloc
* Could not get symbol names for backtrace
   backtrace:

Program received signal SIGABRT, Aborted.
[Switching to Thread 0xb672d700 (LWP 12103)]
0xb7fb1430 in __kernel_vsyscall ()

$ ps axl | grep amule
Code: [Select]
0  1000 12089 12058  20   0 191716  7744 poll   S+   pts/0      0:02 gdb amule
0  1000 12103 12089  20   0 3145724 1158444 ptrace Tl pts/0   1960:32 /usr/bin/amule
0  1000 32296 18492  20   0   3236   800 pipe_w S+   pts/1      0:00 grep amule

many hours before, VSZ was already a tiny bit high, no?
Code: [Select]
$ ps axl | grep amule
0  1000 12089 12058  20   0 191716 187056 rt_sig S   pts/0      0:02 gdb amule
0  1000 12103 12089  20   0 236772 146956 futex_ Sl+ pts/0    1261:26 /usr/bin/amule

$ free
Code: [Select]
            total       used       free     shared    buffers     cached
Mem:       3111840    3014336      97504          0      17132    1436068
-/+ buffers/cache:    1561136    1550704
Swap:      9100780    2545564    6555216

Very long BT

Code: [Select]
#0  0xb7fb1430 in __kernel_vsyscall ()
#1  0xb71908a0 in raise () from /lib/tls/i686/cmov/libc.so.6
#2  0xb7192268 in abort () from /lib/tls/i686/cmov/libc.so.6
#3  0x08411c19 in OnUnhandledException ()
    at ../../../../src/libs/common/MuleDebug.cpp:103
#4  0xb73b3655 in __cxxabiv1::__terminate (
    handler=0x84118a8 <OnUnhandledException()>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
#5  0xb73b3692 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
#6  0xb73b37ca in __cxa_throw (obj=0xb73e28f0, tinfo=0x8712c8c,
    dest=0xb73b3d00 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
#7  0xb73b3e23 in operator new (sz=44)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
#8  0xb75ba0e9 in wxSocketEvent::Clone (this=0xbfaaf7b0)
    at ../include/wx/socket.h:314
#9  0xb7515bb5 in wxEvtHandler::AddPendingEvent (this=0x8715600,
    event=@0xbfaaf7b0) at ../src/common/event.cpp:1130
#10 0xb75b9d58 in wxSocketBase::OnRequest (this=0xbe095b0,
    notification=wxSOCKET_OUTPUT) at ../src/common/socket.cpp:1006
#11 0xb75b9e54 in wx_socket_callback (notification=GSOCK_OUTPUT,
    cdata=0xbe095b0 "��O\b") at ../src/common/socket.cpp:942
---Type <return> to continue, or q <return> to quit---
#12 0xb75be6bb in GSocket::Detected_Write (this=0xc009748)
    at ../src/unix/gsocket.cpp:1836
#13 0xb7708be7 in _GSocket_GDK_Input (data=0xc009748, source=32,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
#14 0xb6d514af in gdk_io_invoke (source=0xb05d5d60,
    condition=<value optimized out>, data=0xb017c320)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
#15 0xb6aef71d in g_io_unix_dispatch (source=0xb03eb220,
    callback=0xb6d51450 <gdk_io_invoke>, user_data=0xb017c320)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
#16 0xb6ab8718 in IA__g_main_context_dispatch (context=0xa61af60)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
#17 0xb6abbdc3 in g_main_context_iterate (context=0xa61af60, block=1,
    dispatch=1, self=0xa61c510)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
#18 0xb6abbf81 in IA__g_main_context_iteration (context=0xa61af60, may_block=1)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2841
#19 0xb6eea204 in IA__gtk_main_iteration ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1288
#20 0xb778a27d in wxWindow::DoPopupMenu (this=0xadc6268, menu=0xc1d8810,
    x=159, y=286) at ../src/gtk/menu.cpp:1720
#21 0x0846c4d9 in wxWindowBase::PopupMenu (this=0xadc6268, menu=0xc1d8810,
    x=159, y=286) at /usr/include/wx-2.8/wx/window.h:926
---Type <return> to continue, or q <return> to quit---
#22 0x0845aeea in MuleExtern::wxGenericListCtrl::DoPopupMenu (this=0xadc50a0,
    menu=0xc1d8810, x=159, y=286)
    at ../../src/extern/wxWidgets/listctrl.cpp:5807
#23 0x0830e93a in wxWindowBase::PopupMenu (this=0xadc50a0, menu=0xc1d8810,
    pos=@0xbfaafc48) at /usr/include/wx-2.8/wx/window.h:924
#24 0x0831c14f in CDownloadListCtrl::OnMouseRightClick (this=0xadc50a0,
    evt=@0xbfaafe54) at ../../src/DownloadListCtrl.cpp:1021
#25 0xb7458931 in wxAppConsole::HandleEvent (this=0xa61ae18,
    handler=0xadc50a0, func=&virtual table offset 12102, event=@0xbfaafe54)
    at ../src/common/appbase.cpp:322
#26 0xb75155fa in wxEvtHandler::ProcessEventIfMatches (entry=@0x88ffbf8,
    handler=0xadc50a0, event=@0xbfaafe54) at ../src/common/event.cpp:1230
#27 0xb7516d84 in wxEventHashTable::HandleEvent (this=0x88ffbc0,
    event=@0xbfaafe54, self=0xadc50a0) at ../src/common/event.cpp:905
#28 0xb7516ed6 in wxEvtHandler::ProcessEvent (this=0xadc50a0,
    event=@0xbfaafe54) at ../src/common/event.cpp:1292
#29 0x08461223 in MuleExtern::wxListMainWindow::SendNotify (this=0xadc6268,
    line=13, command=10061, point=@0xbfaaffd0)
    at ../../src/extern/wxWidgets/listctrl.cpp:2944
#30 0x08465373 in MuleExtern::wxListMainWindow::OnMouse (this=0xadc6268,
    event=@0xbfab01b4) at ../../src/extern/wxWidgets/listctrl.cpp:3239
#31 0xb7458931 in wxAppConsole::HandleEvent (this=0xa61ae18,
    handler=0xadc6268, func=&virtual table offset 12102, event=@0xbfab01b4)
---Type <return> to continue, or q <return> to quit---
    at ../src/common/appbase.cpp:322
#32 0xb75155fa in wxEvtHandler::ProcessEventIfMatches (entry=@0x8902170,
    handler=0xadc6268, event=@0xbfab01b4) at ../src/common/event.cpp:1230
#33 0xb7516d84 in wxEventHashTable::HandleEvent (this=0x89020c0,
    event=@0xbfab01b4, self=0xadc6268) at ../src/common/event.cpp:905
#34 0xb7516ed6 in wxEvtHandler::ProcessEvent (this=0xadc6268,
    event=@0xbfab01b4) at ../src/common/event.cpp:1292
#35 0xb7516e5c in wxEvtHandler::ProcessEvent (this=0xadc56e0,
    event=@0xbfab01b4) at ../src/common/event.cpp:1299
#36 0xb7875743 in wxScrollHelperEvtHandler::ProcessEvent (this=0xadc56e0,
    event=@0xbfab01b4) at ../src/generic/scrlwing.cpp:208
#37 0xb7717b6b in wxWindow::GTKProcessEvent (this=0xadc6268, event=@0xbfab01b4)
    at ../src/gtk/window.cpp:1410
#38 0xb771eb8c in gtk_window_button_press_callback (widget=0xad4a060,
    gdk_event=0xa63d240, win=0xadc6268) at ../src/gtk/window.cpp:1609
#39 0xb6ef0036 in _gtk_marshal_BOOLEAN__BOXED (closure=0xadc69d8,
    return_value=0xbfab03a0, n_param_values=2, param_values=0xabf8200,
    invocation_hint=0xbfab038c, marshal_data=0xb771ea20)
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmarshalers.c:84
#40 0xb6b55c4b in IA__g_closure_invoke (closure=0xadc69d8,
    return_value=0xbfab03a0, n_param_values=2, param_values=0xabf8200,
    invocation_hint=0xbfab038c)
    at /build/buildd/glib2.0-2.18.2/gobject/gclosure.c:767
---Type <return> to continue, or q <return> to quit---
#41 0xb6b6c095 in signal_emit_unlocked_R (node=0xaa93828, detail=0,
    instance=0xad4a060, emission_return=0xbfab04d8,
    instance_and_params=0xabf8200)
    at /build/buildd/glib2.0-2.18.2/gobject/gsignal.c:3244
#42 0xb6b6d62b in IA__g_signal_emit_valist (instance=0xad4a060, signal_id=30,
    detail=0, var_args=0xbfab0530 "H\005��@�c\n`��\n6�")
    at /build/buildd/glib2.0-2.18.2/gobject/gsignal.c:2987
#43 0xb6b6dc26 in IA__g_signal_emit (instance=0xad4a060, signal_id=30,
    detail=0) at /build/buildd/glib2.0-2.18.2/gobject/gsignal.c:3034
#44 0xb700533e in gtk_widget_event_internal (widget=0xad4a060, event=0xa63d240)
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkwidget.c:4745
#45 0xb6ee8b4c in IA__gtk_propagate_event (widget=0xad4a060, event=0xa63d240)
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:2391
#46 0xb6eea017 in IA__gtk_main_do_event (event=0xa63d240)
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1581
#47 0xb6d7f50a in gdk_event_dispatch (source=0xa641290, callback=0,
    user_data=0x0) at /build/buildd/gtk+2.0-2.14.4/gdk/x11/gdkevents-x11.c:2365
#48 0xb6ab8718 in IA__g_main_context_dispatch (context=0xa61af60)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
#49 0xb6abbdc3 in g_main_context_iterate (context=0xa61af60, block=1,
    dispatch=1, self=0xa61c510)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
#50 0xb6abc2e2 in IA__g_main_loop_run (loop=0xb5a02558)
---Type <return> to continue, or q <return> to quit---
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
#51 0xb6eea3a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
#52 0xb770710b in wxEventLoop::Run (this=0xb5a01fa0)
    at ../src/gtk/evtloop.cpp:76
#53 0xb77ab3dc in wxAppBase::MainLoop (this=0xa61ae18)
    at ../src/common/appcmn.cpp:312
#54 0xb77ab131 in wxAppBase::OnRun (this=0x6) at ../src/common/appcmn.cpp:367
#55 0xb74a03fa in wxEntry (argc=@0xb75986cc, argv=0xa609480)
    at ../src/common/init.cpp:460
#56 0xb74a04b7 in wxEntry (argc=@0xbfab0850, argv=0xbfab08d4)
    at ../src/common/init.cpp:472
#57 0x082c0834 in main (argc=0, argv=0x0) at ../../src/amule-gui.cpp:94

Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 09, 2009, 07:17:36 AM
(gdb) bt full

part 1:

Code: [Select]
#0  0xb7fb1430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb71908a0 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0xb7192268 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0x08411c19 in OnUnhandledException ()
    at ../../../../src/libs/common/MuleDebug.cpp:103
t = (class std::type_info *) 0x8712c8c
output = (FILE *) 0xb72bf560
#4  0xb73b3655 in __cxxabiv1::__terminate (
    handler=0x84118a8 <OnUnhandledException()>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
No locals.
#5  0xb73b3692 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
No locals.
#6  0xb73b37ca in __cxa_throw (obj=0xb73e28f0, tinfo=0x8712c8c,
    dest=0xb73b3d00 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
header = <value optimized out>
#7  0xb73b3e23 in operator new (sz=44)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
---Type <return> to continue, or q <return> to quit---
handler = <value optimized out>
p = <value optimized out>
#8  0xb75ba0e9 in wxSocketEvent::Clone (this=0xbfaaf7b0)
    at ../include/wx/socket.h:314
No locals.
#9  0xb7515bb5 in wxEvtHandler::AddPendingEvent (this=0x8715600,
    event=@0xbfaaf7b0) at ../src/common/event.cpp:1130
eventCopy = <value optimized out>
__FUNCTION__ = "AddPendingEvent"
#10 0xb75b9d58 in wxSocketBase::OnRequest (this=0xbe095b0,
    notification=wxSOCKET_OUTPUT) at ../src/common/socket.cpp:1006

event = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x870e668,
      static ms_classInfo = {m_className = 0xb75451a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7a428cc, m_next = 0xb75998c4,
        static sm_classTable = 0xa5ed3e8}, m_refData = 0x0},
    m_eventObject = 0xbe095b0, m_eventType = 10002, m_timeStamp = 0,
    m_id = 6123, m_callbackUserData = 0x0, m_propagationLevel = 0,
    m_skipped = false, m_isCommandEvent = false, static ms_classInfo = {
      m_className = 0xb7556708, m_objectSize = 36, m_objectConstructor = 0,
      m_baseInfo1 = 0xb7599858, m_baseInfo2 = 0x0,
      static sm_first = 0xb7a428cc, m_next = 0xb759a908,
      static sm_classTable = 0xa5ed3e8}}, m_event = wxSOCKET_OUTPUT,
---Type <return> to continue, or q <return> to quit---
  m_clientData = 0x0, static ms_classInfo = {m_className = 0xb75c1008,
    m_objectSize = 44,
    m_objectConstructor = 0xb75b7e00 <wxSocketEvent::wxCreateObject()>,
    m_baseInfo1 = 0xb759a920, m_baseInfo2 = 0x0, static sm_first = 0xb7a428cc,
    m_next = 0xb75ca54c, static sm_classTable = 0xa5ed3e8}}
flag = <value optimized out>
#11 0xb75b9e54 in wx_socket_callback (notification=GSOCK_OUTPUT,
    cdata=0xbe095b0 "��O\b") at ../src/common/socket.cpp:942
No locals.
#12 0xb75be6bb in GSocket::Detected_Write (this=0xc009748)
    at ../src/unix/gsocket.cpp:1836
No locals.
#13 0xb7708be7 in _GSocket_GDK_Input (data=0xc009748, source=32,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
No locals.
#14 0xb6d514af in gdk_io_invoke (source=0xb05d5d60,
    condition=<value optimized out>, data=0xb017c320)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = GDK_INPUT_WRITE
#15 0xb6aef71d in g_io_unix_dispatch (source=0xb03eb220,
    callback=0xb6d51450 <gdk_io_invoke>, user_data=0xb017c320)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 6
---Type <return> to continue, or q <return> to quit---
#16 0xb6ab8718 in IA__g_main_context_dispatch (context=0xa61af60)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#17 0xb6abbdc3 in g_main_context_iterate (context=0xa61af60, block=1,
    dispatch=1, self=0xa61c510)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 300
timeout = 0
some_ready = 1
nfds = 28
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xe9a37c8
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#18 0xb6abbf81 in IA__g_main_context_iteration (context=0xa61af60, may_block=1)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2841
retval = <value optimized out>
#19 0xb6eea204 in IA__gtk_main_iteration ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1288
No locals.
#20 0xb778a27d in wxWindow::DoPopupMenu (this=0xadc6268, menu=0xc1d8810,
    x=159, y=286) at ../src/gtk/menu.cpp:1720
is_waiting = true
handler = 19089
---Type <return> to continue, or q <return> to quit---
pos = {x = 171, y = 468}
userdata = (gpointer) 0xbfaafa58
posfunc = (
    GtkMenuPositionFunc) 0xb7789570 <wxPopupMenuPositionCallback>
eventOpen = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0xb7948148,
      static ms_classInfo = {m_className = 0xb75451a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7a428cc, m_next = 0xb75998c4,
        static sm_classTable = 0xa5ed3e8}, m_refData = 0x0},
    m_eventObject = 0xc1d8810, m_eventType = 10170, m_timeStamp = 0,
    m_id = -1, m_callbackUserData = 0x0, m_propagationLevel = 0,
    m_skipped = false, m_isCommandEvent = false, static ms_classInfo = {
      m_className = 0xb7556708, m_objectSize = 36, m_objectConstructor = 0,
      m_baseInfo1 = 0xb7599858, m_baseInfo2 = 0x0,
      static sm_first = 0xb7a428cc, m_next = 0xb759a908,
      static sm_classTable = 0xa5ed3e8}}, m_menuId = -1, m_menu = 0xc1d8810,
  static ms_classInfo = {m_className = 0xb7894fe0, m_objectSize = 44,
    m_objectConstructor = 0xb76da9c0 <wxMenuEvent::wxCreateObject()>,
    m_baseInfo1 = 0xb759a920, m_baseInfo2 = 0x0, static sm_first = 0xb7a428cc,
    m_next = 0xb7971280, static sm_classTable = 0xa5ed3e8}}
eventClose = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0xcb52f08,
      static ms_classInfo = {m_className = 0xb75451a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
---Type <return> to continue, or q <return> to quit---
        static sm_first = 0xb7a428cc, m_next = 0xb75998c4,
        static sm_classTable = 0xa5ed3e8}, m_refData = 0x1},
    m_eventObject = 0xcb52f0c, m_eventType = -1223307276,
    m_timeStamp = 213200648, m_id = 0, m_callbackUserData = 0xbfaafa48,
    m_propagationLevel = -1224692854, m_skipped = 8, m_isCommandEvent = 47,
    static ms_classInfo = {m_className = 0xb7556708, m_objectSize = 36,
      m_objectConstructor = 0, m_baseInfo1 = 0xb7599858, m_baseInfo2 = 0x0,
      static sm_first = 0xb7a428cc, m_next = 0xb759a908,
      static sm_classTable = 0xa5ed3e8}}, m_menuId = -1224693152,
  m_menu = 0xbfaafa68, static ms_classInfo = {m_className = 0xb7894fe0,
    m_objectSize = 44,
    m_objectConstructor = 0xb76da9c0 <wxMenuEvent::wxCreateObject()>,
    m_baseInfo1 = 0xb759a920, m_baseInfo2 = 0x0, static sm_first = 0xb7a428cc,
    m_next = 0xb7971280, static sm_classTable = 0xa5ed3e8}}
__FUNCTION__ = "DoPopupMenu"
#21 0x0846c4d9 in wxWindowBase::PopupMenu (this=0xadc6268, menu=0xc1d8810,
    x=159, y=286) at /usr/include/wx-2.8/wx/window.h:926
No locals.
#22 0x0845aeea in MuleExtern::wxGenericListCtrl::DoPopupMenu (this=0xadc50a0,
    menu=0xc1d8810, x=159, y=286)
    at ../../src/extern/wxWidgets/listctrl.cpp:5807
No locals.
#23 0x0830e93a in wxWindowBase::PopupMenu (this=0xadc50a0, menu=0xc1d8810,
---Type <return> to continue, or q <return> to quit---
    pos=@0xbfaafc48) at /usr/include/wx-2.8/wx/window.h:924
No locals.
#24 0x0831c14f in CDownloadListCtrl::OnMouseRightClick (this=0xadc50a0,
    evt=@0xbfaafe54) at ../../src/DownloadListCtrl.cpp:1021
priomenu = (class wxMenu *) 0xc4b3ba0
extendedmenu = (class wxMenu *) 0xae452460
cats = (class wxMenu *) 0xb0c823b0
canStop = true
canCancel = true
fileResumable = false
view = {<wxStringBase> = {static npos = 4294967295,
    m_pchData = 0xb02c5f54}, <No data fields>}
file = (class CPartFile *) 0xcbb8e18
menu = (class wxMenu *) 0xc1d8810
priority = 5
canPause = true
index = 13
item = (CtrlItem_Struct *) 0xcf612e8
#25 0xb7458931 in wxAppConsole::HandleEvent (this=0xa61ae18,
    handler=0xadc50a0, func=&virtual table offset 12102, event=@0xbfaafe54)
    at ../src/common/appbase.cpp:322
No locals.
#26 0xb75155fa in wxEvtHandler::ProcessEventIfMatches (entry=@0x88ffbf8,
---Type <return> to continue, or q <return> to quit---
    handler=0xadc50a0, event=@0xbfaafe54) at ../src/common/event.cpp:1230
tableId1 = <value optimized out>
tableId2 = <value optimized out>
#27 0xb7516d84 in wxEventHashTable::HandleEvent (this=0x88ffbc0,
    event=@0xbfaafe54, self=0xadc50a0) at ../src/common/event.cpp:905
n = 0
count = 1
eventType = 10061
eTTnode = (wxEventHashTable::EventTypeTable * const) 0xadcaf90
#28 0xb7516ed6 in wxEvtHandler::ProcessEvent (this=0xadc50a0,
    event=@0xbfaafe54) at ../src/common/event.cpp:1292
__FUNCTION__ = "ProcessEvent"
#29 0x08461223 in MuleExtern::wxListMainWindow::SendNotify (this=0xadc6268,
    line=13, command=10061, point=@0xbfaaffd0)
    at ../../src/extern/wxWidgets/listctrl.cpp:2944
le = {<wxNotifyEvent> = {<wxCommandEvent> = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x8710348, static ms_classInfo = {m_className = 0xb75451a4,
            m_objectSize = 8, m_objectConstructor = 0, m_baseInfo1 = 0x0,
            m_baseInfo2 = 0x0, static sm_first = 0xb7a428cc,
            m_next = 0xb75998c4, static sm_classTable = 0xa5ed3e8},
          m_refData = 0x0}, m_eventObject = 0xadc50a0, m_eventType = 10061,
        m_timeStamp = 0, m_id = 10028, m_callbackUserData = 0x0,
        m_propagationLevel = 2147483647, m_skipped = false,
---Type <return> to continue, or q <return> to quit---
        m_isCommandEvent = true, static ms_classInfo = {
          m_className = 0xb7556708, m_objectSize = 36,
          m_objectConstructor = 0, m_baseInfo1 = 0xb7599858,
          m_baseInfo2 = 0x0, static sm_first = 0xb7a428cc,
          m_next = 0xb759a908, static sm_classTable = 0xa5ed3e8}},
      m_cmdString = {<wxStringBase> = {static npos = 4294967295,
          m_pchData = 0xb754a270}, <No data fields>}, m_commandInt = 0,
      m_extraLong = 0, m_clientData = 0x0, m_clientObject = 0x0,
      static ms_classInfo = {m_className = 0xb7894c30, m_objectSize = 56,
        m_objectConstructor = 0xb76d9c90 <wxCommandEvent::wxCreateObject()>,
        m_baseInfo1 = 0xb759a920, m_baseInfo2 = 0x0,
        static sm_first = 0xb7a428cc, m_next = 0xb79710e8,
        static sm_classTable = 0xa5ed3e8}}, m_bAllow = true,
    static ms_classInfo = {m_className = 0xb7894c6c, m_objectSize = 60,
      m_objectConstructor = 0xb76da3c0 <wxNotifyEvent::wxCreateObject()>,
      m_baseInfo1 = 0xb7971100, m_baseInfo2 = 0x0,
      static sm_first = 0xb7a428cc, m_next = 0xb7971100,
      static sm_classTable = 0xa5ed3e8}}, m_code = 0, m_oldItemIndex = 0,
  m_itemIndex = 13, m_col = 0, m_pointDrag = {x = 159, y = 286},
  m_item = {<wxObject> = {_vptr.wxObject = 0x870fee8, static ms_classInfo = {
        m_className = 0xb75451a4, m_objectSize = 8, m_objectConstructor = 0,
        m_baseInfo1 = 0x0, m_baseInfo2 = 0x0, static sm_first = 0xb7a428cc,
        m_next = 0xb75998c4, static sm_classTable = 0xa5ed3e8},
---Type <return> to continue, or q <return> to quit---
      m_refData = 0x0}, m_mask = 0, m_itemId = 0, m_col = 0, m_state = 0,
    m_stateMask = 0, m_text = {<wxStringBase> = {static npos = 4294967295,
        m_pchData = 0xb754a270}, <No data fields>}, m_image = -1,
    m_data = 217453288, m_format = 2, m_width = 0, m_attr = 0xb821a50,
    static ms_classInfo = {m_className = 0xb78a30b0, m_objectSize = 52,
      m_objectConstructor = 0xb773c2e0 <wxListItem::wxCreateObject()>,
      m_baseInfo1 = 0xb7599858, m_baseInfo2 = 0x0,
      static sm_first = 0xb7a428cc, m_next = 0xb7972810,
      static sm_classTable = 0xa5ed3e8}}, m_editCancelled = false,
  static ms_classInfo = {m_className = 0xb78a3108, m_objectSize = 140,
    m_objectConstructor = 0xb773f3d0 <wxListEvent::wxCreateObject()>,
    m_baseInfo1 = 0xb7971118, m_baseInfo2 = 0x0, static sm_first = 0xb7a428cc,
    m_next = 0xb79720f8, static sm_classTable = 0xa5ed3e8}}
#30 0x08465373 in MuleExtern::wxListMainWindow::OnMouse (this=0xadc6268,
    event=@0xbfab01b4) at ../../src/extern/wxWidgets/listctrl.cpp:3239
evtCtx = {<wxCommandEvent> = {<wxEvent> = {<wxObject> = {
        _vptr.wxObject = 0xb1be12c, static ms_classInfo = {
          m_className = 0xb75451a4, m_objectSize = 8, m_objectConstructor = 0,
          m_baseInfo1 = 0x0, m_baseInfo2 = 0x0, static sm_first = 0xb7a428cc,
          m_next = 0xb75998c4, static sm_classTable = 0xa5ed3e8},
        m_refData = 0xbfaaff48}, m_eventObject = 0xb67a0ff4, m_eventType = 1,
      m_timeStamp = 174266688, m_id = -1079312552,
      m_callbackUserData = 0xb6790cc0, m_propagationLevel = 174266700,
---Type <return> to continue, or q <return> to quit---
      m_skipped = 244, m_isCommandEvent = 15, static ms_classInfo = {
        m_className = 0xb7556708, m_objectSize = 36, m_objectConstructor = 0,
        m_baseInfo1 = 0xb7599858, m_baseInfo2 = 0x0,
        static sm_first = 0xb7a428cc, m_next = 0xb759a908,
        static sm_classTable = 0xa5ed3e8}}, m_cmdString = {<wxStringBase> = {
        static npos = 4294967295, m_pchData = 0xb71d5b74}, <No data fields>},
    m_commandInt = -1221857292, m_extraLong = -1208538658,
    m_clientData = 0xc126aa0, m_clientObject = 0xbfaaff88,
    static ms_classInfo = {m_className = 0xb7894c30, m_objectSize = 56,
      m_objectConstructor = 0xb76d9c90 <wxCommandEvent::wxCreateObject()>,
      m_baseInfo1 = 0xb759a920, m_baseInfo2 = 0x0,
      static sm_first = 0xb7a428cc, m_next = 0xb79710e8,
      static sm_classTable = 0xa5ed3e8}}, m_pos = {x = -1222810442,
    y = -1221852864}, static ms_classInfo = {m_className = 0xb7895434,
    m_objectSize = 64,
    m_objectConstructor = 0xb76da290 <wxContextMenuEvent::wxCreateObject()>,
    m_baseInfo1 = 0xb7971100, m_baseInfo2 = 0x0, static sm_first = 0xb7a428cc,
    m_next = 0xb79713e8, static sm_classTable = 0xa5ed3e8}}
x = 159
y = 286
hitResult = 128
count = 18
current = 13
---Type <return> to continue, or q <return> to quit---
forceClick = false
__FUNCTION__ = "OnMouse"
#31 0xb7458931 in wxAppConsole::HandleEvent (this=0xa61ae18,
    handler=0xadc6268, func=&virtual table offset 12102, event=@0xbfab01b4)
    at ../src/common/appbase.cpp:322
No locals.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 09, 2009, 07:18:17 AM
part 2:

Code: [Select]
#32 0xb75155fa in wxEvtHandler::ProcessEventIfMatches (entry=@0x8902170,
    handler=0xadc6268, event=@0xbfab01b4) at ../src/common/event.cpp:1230
tableId1 = <value optimized out>
tableId2 = <value optimized out>
#33 0xb7516d84 in wxEventHashTable::HandleEvent (this=0x89020c0,
    event=@0xbfab01b4, self=0xadc6268) at ../src/common/event.cpp:905
n = 0
count = 1
eventType = 10101
eTTnode = (wxEventHashTable::EventTypeTable * const) 0xad29f38
#34 0xb7516ed6 in wxEvtHandler::ProcessEvent (this=0xadc6268,
    event=@0xbfab01b4) at ../src/common/event.cpp:1292
__FUNCTION__ = "ProcessEvent"
#35 0xb7516e5c in wxEvtHandler::ProcessEvent (this=0xadc56e0,
    event=@0xbfab01b4) at ../src/common/event.cpp:1299
__FUNCTION__ = "ProcessEvent"
#36 0xb7875743 in wxScrollHelperEvtHandler::ProcessEvent (this=0xadc56e0,
---Type <return> to continue, or q <return> to quit---
    event=@0xbfab01b4) at ../src/generic/scrlwing.cpp:208
evType = 10101
processed = <value optimized out>
#37 0xb7717b6b in wxWindow::GTKProcessEvent (this=0xadc6268, event=@0xbfab01b4)
    at ../src/gtk/window.cpp:1410
No locals.
#38 0xb771eb8c in gtk_window_button_press_callback (widget=0xad4a060,
    gdk_event=0xa63d240, win=0xadc6268) at ../src/gtk/window.cpp:1609
ret = <value optimized out>
rc = <value optimized out>
event_type = 10101
event = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x8711948,
      static ms_classInfo = {m_className = 0xb75451a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7a428cc, m_next = 0xb75998c4,
        static sm_classTable = 0xa5ed3e8}, m_refData = 0x0},
    m_eventObject = 0xadc50a0, m_eventType = 10101, m_timeStamp = 73438340,
    m_id = -284, m_callbackUserData = 0x0, m_propagationLevel = 0,
    m_skipped = false, m_isCommandEvent = false, static ms_classInfo = {
      m_className = 0xb7556708, m_objectSize = 36, m_objectConstructor = 0,
      m_baseInfo1 = 0xb7599858, m_baseInfo2 = 0x0,
      static sm_first = 0xb7a428cc, m_next = 0xb759a908,
      static sm_classTable = 0xa5ed3e8}}, m_x = 159, m_y = 286,
---Type <return> to continue, or q <return> to quit---
  m_leftDown = false, m_middleDown = false, m_rightDown = true,
  m_controlDown = false, m_shiftDown = false, m_altDown = false,
  m_metaDown = false, m_wheelRotation = 0, m_wheelDelta = 0,
  m_linesPerAction = 0, static ms_classInfo = {m_className = 0xb7894d20,
    m_objectSize = 64,
    m_objectConstructor = 0xb76d99f0 <wxMouseEvent::wxCreateObject()>,
    m_baseInfo1 = 0xb759a920, m_baseInfo2 = 0x0, static sm_first = 0xb7a428cc,
    m_next = 0xb7971148, static sm_classTable = 0xa5ed3e8}}
#39 0xb6ef0036 in _gtk_marshal_BOOLEAN__BOXED (closure=0xadc69d8,
    return_value=0xbfab03a0, n_param_values=2, param_values=0xabf8200,
    invocation_hint=0xbfab038c, marshal_data=0xb771ea20)
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmarshalers.c:84
data1 = (gpointer) 0xad4a060
data2 = <value optimized out>
v_return = <value optimized out>
__PRETTY_FUNCTION__ = "_gtk_marshal_BOOLEAN__BOXED"
#40 0xb6b55c4b in IA__g_closure_invoke (closure=0xadc69d8,
    return_value=0xbfab03a0, n_param_values=2, param_values=0xabf8200,
    invocation_hint=0xbfab038c)
    at /build/buildd/glib2.0-2.18.2/gobject/gclosure.c:767
marshal = (GClosureMarshal) 0xb6eeffa0 <_gtk_marshal_BOOLEAN__BOXED>
marshal_data = (gpointer) 0x0
__PRETTY_FUNCTION__ = "IA__g_closure_invoke"
---Type <return> to continue, or q <return> to quit---
#41 0xb6b6c095 in signal_emit_unlocked_R (node=0xaa93828, detail=0,
    instance=0xad4a060, emission_return=0xbfab04d8,
    instance_and_params=0xabf8200)
    at /build/buildd/glib2.0-2.18.2/gobject/gsignal.c:3244
tmp = <value optimized out>
handler = (Handler *) 0xadc6a20
accumulator = (SignalAccumulator *) 0xaa92f10
emission = {next = 0x0, instance = 0xad4a060, ihint = {signal_id = 30,
    detail = 0, run_type = G_SIGNAL_RUN_FIRST}, state = EMISSION_RUN,
  chain_type = 4}
class_closure = (GClosure *) 0xa638c40
handler_list = (Handler *) 0xadc6a20
return_accu = (GValue *) 0xbfab03a0
accu = {g_type = 20, data = {{v_int = 0, v_uint = 0, v_long = 0,
      v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0,
      v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0,
      v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}}
signal_id = 30
max_sequential_handler_number = 18981
return_value_altered = 0
#42 0xb6b6d62b in IA__g_signal_emit_valist (instance=0xad4a060, signal_id=30,
    detail=0, var_args=0xbfab0530 "H\005��@�c\n`��\n6�")
    at /build/buildd/glib2.0-2.18.2/gobject/gsignal.c:2987
---Type <return> to continue, or q <return> to quit---
return_value = {g_type = 20, data = {{v_int = 0, v_uint = 0,
      v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0,
      v_double = 0, v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0,
      v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0,
      v_pointer = 0x0}}}
error = <value optimized out>
signal_return_type = 20
param_values = (GValue *) 0xabf8214
node = (SignalNode *) 0xaa93828
i = 1
n_params = 1
__PRETTY_FUNCTION__ = "IA__g_signal_emit_valist"
#43 0xb6b6dc26 in IA__g_signal_emit (instance=0xad4a060, signal_id=30,
    detail=0) at /build/buildd/glib2.0-2.18.2/gobject/gsignal.c:3034
No locals.
#44 0xb700533e in gtk_widget_event_internal (widget=0xad4a060, event=0xa63d240)
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkwidget.c:4745
signal_num = <value optimized out>
return_val = 0
#45 0xb6ee8b4c in IA__gtk_propagate_event (widget=0xad4a060, event=0xa63d240)
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:2391
tmp = (GtkWidget *) 0xd1255b0
handled_event = 174314048
---Type <return> to continue, or q <return> to quit---
__PRETTY_FUNCTION__ = "IA__gtk_propagate_event"
#46 0xb6eea017 in IA__gtk_main_do_event (event=0xa63d240)
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1581
event_widget = (GtkWidget *) 0xad4a060
grab_widget = (GtkWidget *) 0xad4a060
window_group = (GtkWindowGroup *) 0xd1255b0
rewritten_event = (GdkEvent *) 0x0
tmp_list = <value optimized out>
__PRETTY_FUNCTION__ = "IA__gtk_main_do_event"
#47 0xb6d7f50a in gdk_event_dispatch (source=0xa641290, callback=0,
    user_data=0x0) at /build/buildd/gtk+2.0-2.14.4/gdk/x11/gdkevents-x11.c:2365
display = <value optimized out>
event = <value optimized out>
#48 0xb6ab8718 in IA__g_main_context_dispatch (context=0xa61af60)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#49 0xb6abbdc3 in g_main_context_iterate (context=0xa61af60, block=1,
    dispatch=1, self=0xa61c510)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 0
timeout = 0
some_ready = 1
nfds = 261
---Type <return> to continue, or q <return> to quit---
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xe9a37c8
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#50 0xb6abc2e2 in IA__g_main_loop_run (loop=0xb5a02558)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0xa61c510
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#51 0xb6eea3a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0xb5a01fa0
loop = (GMainLoop *) 0xb5a02558
#52 0xb770710b in wxEventLoop::Run (this=0xb5a01fa0)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#53 0xb77ab3dc in wxAppBase::MainLoop (this=0xa61ae18)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0xb5a01fa0}, m_pp = 0xa61ae58,
  m_pOld = 0x0}
#54 0xb77ab131 in wxAppBase::OnRun (this=0x6) at ../src/common/appcmn.cpp:367
No locals.
---Type <return> to continue, or q <return> to quit---
#55 0xb74a03fa in wxEntry (argc=@0xb75986cc, argv=0xa609480)
    at ../src/common/init.cpp:460
No locals.
#56 0xb74a04b7 in wxEntry (argc=@0xbfab0850, argv=0xbfab08d4)
    at ../src/common/init.cpp:472
No locals.
#57 0x082c0834 in main (argc=0, argv=0x0) at ../../src/amule-gui.cpp:94
No locals.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 09, 2009, 07:21:28 AM
(gdb) thread apply all bt full

Code: [Select]
Thread 6 (Thread 0xb3d9cb90 (LWP 12132)):
#0  0xb7fb1430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7f753a2 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
   from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0xb75116e1 in wxConditionInternal::WaitTimeout (this=0xb5a02408,
    milliseconds=100) at ../src/unix/threadpsx.cpp:405
tspec = {tv_sec = 1239228245, tv_nsec = 678000000}
err = <value optimized out>
#3  0xb751176a in wxCondition::WaitTimeout (this=0xb5a023d4, milliseconds=100)
    at ../include/wx/thrimpl.cpp:256
__FUNCTION__ = "WaitTimeout"
#4  0xb7513524 in wxSemaphoreInternal::WaitTimeout (this=0xb5a023d0,
    milliseconds=100) at ../src/unix/threadpsx.cpp:552
remainingTime = -516
locker = {m_isOk = true, m_mutex = @0xb5a023d0}
#5  0xb75135aa in wxSemaphore::WaitTimeout (this=0xb5a00f10, milliseconds=100)
    at ../include/wx/thrimpl.cpp:320
__FUNCTION__ = "WaitTimeout"
#6  0x0840b770 in CTimerThread::Entry (this=0xb5a00ef0)
    at ../../src/Timer.cpp:64
---Type <return> to continue, or q <return> to quit---
now = 2277664330
sinceLast = 0
timeout = 100
evt = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x85efd88,
      static ms_classInfo = {m_className = 0xb75451a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7a428cc, m_next = 0xb75998c4,
        static sm_classTable = 0xa5ed3e8}, m_refData = 0x0},
    m_eventObject = 0x0, m_eventType = 10244, m_timeStamp = 0, m_id = 6128,
    m_callbackUserData = 0x0, m_propagationLevel = 0, m_skipped = false,
    m_isCommandEvent = false, static ms_classInfo = {m_className = 0xb7556708,
      m_objectSize = 36, m_objectConstructor = 0, m_baseInfo1 = 0xb7599858,
      m_baseInfo2 = 0x0, static sm_first = 0xb7a428cc, m_next = 0xb759a908,
      static sm_classTable = 0xa5ed3e8}}, <No data fields>}
lastEvent = 2277664330
#7  0xb7514036 in wxThreadInternal::PthreadStart (thread=0xb5a00ef0)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0xb5a01f78
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#8  0xb751413d in wxPthreadStart (ptr=0xb5a00ef0)
    at ../src/unix/threadpsx.cpp:718
---Type <return> to continue, or q <return> to quit---
No locals.
#9  0xb7f7150f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#10 0xb7246a0e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 3 (Thread 0xb559fb90 (LWP 12117)):
#0  0xb7fb1430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7f78906 in nanosleep () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0xb751b168 in wxMicroSleep (microseconds=0) at ../src/unix/utilsunx.cpp:191
tmReq = {tv_sec = 0, tv_nsec = 124000000}
#3  0xb751b191 in wxMilliSleep (milliseconds=124)
    at ../src/unix/utilsunx.cpp:212
No locals.
#4  0xb751141d in wxThread::Sleep (milliseconds=124)
    at ../src/unix/threadpsx.cpp:986
No locals.
#5  0x0820fd22 in UploadBandwidthThrottler::Entry (this=0xad1e100)
    at ../../src/UploadBandwidthThrottler.cpp:320
timeSinceLastLoop = 1
minFragSize = 1300
---Type <return> to continue, or q <return> to quit---
doubleSendSize = 2600
bytesToSpend = 323072
sleepTime = 125
thisLoopTick = 2277664327
TIME_BETWEEN_UPLOAD_LOOPS = 1
lastLoopTick = 2277664327
realBytesToSpend = 67072999
allowedDataRate = 10240000
rememberedSlotCounter = 1
extraSleepTime = 125
sendLock = {m_isOk = false, m_mutex = @0x0}
#6  0xb7514036 in wxThreadInternal::PthreadStart (thread=0xad1e100)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0xad2ec18
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#7  0xb751413d in wxPthreadStart (ptr=0xad1e100)
    at ../src/unix/threadpsx.cpp:718
No locals.
#8  0xb7f7150f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#9  0xb7246a0e in clone () from /lib/tls/i686/cmov/libc.so.6
---Type <return> to continue, or q <return> to quit---
No symbol table info available.

Thread 1 (Thread 0xb672d700 (LWP 12103)):
#0  0xb7fb1430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb71908a0 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0xb7192268 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0x08411c19 in OnUnhandledException ()
    at ../../../../src/libs/common/MuleDebug.cpp:103
t = (class std::type_info *) 0x8712c8c
output = (FILE *) 0xb72bf560
#4  0xb73b3655 in __cxxabiv1::__terminate (
    handler=0x84118a8 <OnUnhandledException()>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
No locals.
#5  0xb73b3692 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
No locals.
#6  0xb73b37ca in __cxa_throw (obj=0xb73e28f0, tinfo=0x8712c8c,
    dest=0xb73b3d00 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
---Type <return> to continue, or q <return> to quit---
header = <value optimized out>
#7  0xb73b3e23 in operator new (sz=44)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
handler = <value optimized out>
p = <value optimized out>
#8  0xb75ba0e9 in wxSocketEvent::Clone (this=0xbfaaf7b0)
    at ../include/wx/socket.h:314
No locals.
#9  0xb7515bb5 in wxEvtHandler::AddPendingEvent (this=0x8715600,
    event=@0xbfaaf7b0) at ../src/common/event.cpp:1130
eventCopy = <value optimized out>
__FUNCTION__ = "AddPendingEvent"
#10 0xb75b9d58 in wxSocketBase::OnRequest (this=0xbe095b0,
    notification=wxSOCKET_OUTPUT) at ../src/common/socket.cpp:1006
event = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x870e668,
      static ms_classInfo = {m_className = 0xb75451a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7a428cc, m_next = 0xb75998c4,
        static sm_classTable = 0xa5ed3e8}, m_refData = 0x0},
    m_eventObject = 0xbe095b0, m_eventType = 10002, m_timeStamp = 0,
    m_id = 6123, m_callbackUserData = 0x0, m_propagationLevel = 0,
    m_skipped = false, m_isCommandEvent = false, static ms_classInfo = {
      m_className = 0xb7556708, m_objectSize = 36, m_objectConstructor = 0,
---Type <return> to continue, or q <return> to quit---
      m_baseInfo1 = 0xb7599858, m_baseInfo2 = 0x0,
      static sm_first = 0xb7a428cc, m_next = 0xb759a908,
      static sm_classTable = 0xa5ed3e8}}, m_event = wxSOCKET_OUTPUT,
  m_clientData = 0x0, static ms_classInfo = {m_className = 0xb75c1008,
    m_objectSize = 44,
    m_objectConstructor = 0xb75b7e00 <wxSocketEvent::wxCreateObject()>,
    m_baseInfo1 = 0xb759a920, m_baseInfo2 = 0x0, static sm_first = 0xb7a428cc,
    m_next = 0xb75ca54c, static sm_classTable = 0xa5ed3e8}}
flag = <value optimized out>
#11 0xb75b9e54 in wx_socket_callback (notification=GSOCK_OUTPUT,
    cdata=0xbe095b0 "��O\b") at ../src/common/socket.cpp:942
No locals.
#12 0xb75be6bb in GSocket::Detected_Write (this=0xc009748)
    at ../src/unix/gsocket.cpp:1836
No locals.
#13 0xb7708be7 in _GSocket_GDK_Input (data=0xc009748, source=32,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
No locals.
#14 0xb6d514af in gdk_io_invoke (source=0xb05d5d60,
    condition=<value optimized out>, data=0xb017c320)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = GDK_INPUT_WRITE
#15 0xb6aef71d in g_io_unix_dispatch (source=0xb03eb220,
---Type <return> to continue, or q <return> to quit---
    callback=0xb6d51450 <gdk_io_invoke>, user_data=0xb017c320)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 6
#16 0xb6ab8718 in IA__g_main_context_dispatch (context=0xa61af60)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#17 0xb6abbdc3 in g_main_context_iterate (context=0xa61af60, block=1,
    dispatch=1, self=0xa61c510)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 300
timeout = 0
some_ready = 1
nfds = 28
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xe9a37c8
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#18 0xb6abbf81 in IA__g_main_context_iteration (context=0xa61af60, may_block=1)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2841
retval = <value optimized out>
#19 0xb6eea204 in IA__gtk_main_iteration ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1288
No locals.
#20 0xb778a27d in wxWindow::DoPopupMenu (this=0xadc6268, menu=0xc1d8810,
---Type <return> to continue, or q <return> to quit---
    x=159, y=286) at ../src/gtk/menu.cpp:1720
is_waiting = true
handler = 19089
pos = {x = 171, y = 468}
userdata = (gpointer) 0xbfaafa58
posfunc = (
    GtkMenuPositionFunc) 0xb7789570 <wxPopupMenuPositionCallback>
eventOpen = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0xb7948148,
      static ms_classInfo = {m_className = 0xb75451a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7a428cc, m_next = 0xb75998c4,
        static sm_classTable = 0xa5ed3e8}, m_refData = 0x0},
    m_eventObject = 0xc1d8810, m_eventType = 10170, m_timeStamp = 0,
    m_id = -1, m_callbackUserData = 0x0, m_propagationLevel = 0,
    m_skipped = false, m_isCommandEvent = false, static ms_classInfo = {
      m_className = 0xb7556708, m_objectSize = 36, m_objectConstructor = 0,
      m_baseInfo1 = 0xb7599858, m_baseInfo2 = 0x0,
      static sm_first = 0xb7a428cc, m_next = 0xb759a908,
      static sm_classTable = 0xa5ed3e8}}, m_menuId = -1, m_menu = 0xc1d8810,
  static ms_classInfo = {m_className = 0xb7894fe0, m_objectSize = 44,
    m_objectConstructor = 0xb76da9c0 <wxMenuEvent::wxCreateObject()>,
    m_baseInfo1 = 0xb759a920, m_baseInfo2 = 0x0, static sm_first = 0xb7a428cc,
    m_next = 0xb7971280, static sm_classTable = 0xa5ed3e8}}
---Type <return> to continue, or q <return> to quit---
eventClose = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0xcb52f08,
      static ms_classInfo = {m_className = 0xb75451a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7a428cc, m_next = 0xb75998c4,
        static sm_classTable = 0xa5ed3e8}, m_refData = 0x1},
    m_eventObject = 0xcb52f0c, m_eventType = -1223307276,
    m_timeStamp = 213200648, m_id = 0, m_callbackUserData = 0xbfaafa48,
    m_propagationLevel = -1224692854, m_skipped = 8, m_isCommandEvent = 47,
    static ms_classInfo = {m_className = 0xb7556708, m_objectSize = 36,
      m_objectConstructor = 0, m_baseInfo1 = 0xb7599858, m_baseInfo2 = 0x0,
      static sm_first = 0xb7a428cc, m_next = 0xb759a908,
      static sm_classTable = 0xa5ed3e8}}, m_menuId = -1224693152,
  m_menu = 0xbfaafa68, static ms_classInfo = {m_className = 0xb7894fe0,
    m_objectSize = 44,
    m_objectConstructor = 0xb76da9c0 <wxMenuEvent::wxCreateObject()>,
    m_baseInfo1 = 0xb759a920, m_baseInfo2 = 0x0, static sm_first = 0xb7a428cc,
    m_next = 0xb7971280, static sm_classTable = 0xa5ed3e8}}
__FUNCTION__ = "DoPopupMenu"
#21 0x0846c4d9 in wxWindowBase::PopupMenu (this=0xadc6268, menu=0xc1d8810,
    x=159, y=286) at /usr/include/wx-2.8/wx/window.h:926
No locals.
#22 0x0845aeea in MuleExtern::wxGenericListCtrl::DoPopupMenu (this=0xadc50a0,
    menu=0xc1d8810, x=159, y=286)
---Type <return> to continue, or q <return> to quit---
    at ../../src/extern/wxWidgets/listctrl.cpp:5807
No locals.
#23 0x0830e93a in wxWindowBase::PopupMenu (this=0xadc50a0, menu=0xc1d8810,
    pos=@0xbfaafc48) at /usr/include/wx-2.8/wx/window.h:924
No locals.
#24 0x0831c14f in CDownloadListCtrl::OnMouseRightClick (this=0xadc50a0,
    evt=@0xbfaafe54) at ../../src/DownloadListCtrl.cpp:1021
priomenu = (class wxMenu *) 0xc4b3ba0
extendedmenu = (class wxMenu *) 0xae452460
cats = (class wxMenu *) 0xb0c823b0
canStop = true
canCancel = true
fileResumable = false
view = {<wxStringBase> = {static npos = 4294967295,
    m_pchData = 0xb02c5f54}, <No data fields>}
file = (class CPartFile *) 0xcbb8e18
menu = (class wxMenu *) 0xc1d8810
priority = 5
canPause = true
index = 13
item = (CtrlItem_Struct *) 0xcf612e8

Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 09, 2009, 07:21:52 AM
part 2:

Code: [Select]
#25 0xb7458931 in wxAppConsole::HandleEvent (this=0xa61ae18,
    handler=0xadc50a0, func=&virtual table offset 12102, event=@0xbfaafe54)
---Type <return> to continue, or q <return> to quit---
    at ../src/common/appbase.cpp:322
No locals.
#26 0xb75155fa in wxEvtHandler::ProcessEventIfMatches (entry=@0x88ffbf8,
    handler=0xadc50a0, event=@0xbfaafe54) at ../src/common/event.cpp:1230
tableId1 = <value optimized out>
tableId2 = <value optimized out>
#27 0xb7516d84 in wxEventHashTable::HandleEvent (this=0x88ffbc0,
    event=@0xbfaafe54, self=0xadc50a0) at ../src/common/event.cpp:905
n = 0
count = 1
eventType = 10061
eTTnode = (wxEventHashTable::EventTypeTable * const) 0xadcaf90
#28 0xb7516ed6 in wxEvtHandler::ProcessEvent (this=0xadc50a0,
    event=@0xbfaafe54) at ../src/common/event.cpp:1292
__FUNCTION__ = "ProcessEvent"
#29 0x08461223 in MuleExtern::wxListMainWindow::SendNotify (this=0xadc6268,
    line=13, command=10061, point=@0xbfaaffd0)
    at ../../src/extern/wxWidgets/listctrl.cpp:2944
le = {<wxNotifyEvent> = {<wxCommandEvent> = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x8710348, static ms_classInfo = {m_className = 0xb75451a4,
            m_objectSize = 8, m_objectConstructor = 0, m_baseInfo1 = 0x0,
            m_baseInfo2 = 0x0, static sm_first = 0xb7a428cc,
            m_next = 0xb75998c4, static sm_classTable = 0xa5ed3e8},
---Type <return> to continue, or q <return> to quit---
          m_refData = 0x0}, m_eventObject = 0xadc50a0, m_eventType = 10061,
        m_timeStamp = 0, m_id = 10028, m_callbackUserData = 0x0,
        m_propagationLevel = 2147483647, m_skipped = false,
        m_isCommandEvent = true, static ms_classInfo = {
          m_className = 0xb7556708, m_objectSize = 36,
          m_objectConstructor = 0, m_baseInfo1 = 0xb7599858,
          m_baseInfo2 = 0x0, static sm_first = 0xb7a428cc,
          m_next = 0xb759a908, static sm_classTable = 0xa5ed3e8}},
      m_cmdString = {<wxStringBase> = {static npos = 4294967295,
          m_pchData = 0xb754a270}, <No data fields>}, m_commandInt = 0,
      m_extraLong = 0, m_clientData = 0x0, m_clientObject = 0x0,
      static ms_classInfo = {m_className = 0xb7894c30, m_objectSize = 56,
        m_objectConstructor = 0xb76d9c90 <wxCommandEvent::wxCreateObject()>,
        m_baseInfo1 = 0xb759a920, m_baseInfo2 = 0x0,
        static sm_first = 0xb7a428cc, m_next = 0xb79710e8,
        static sm_classTable = 0xa5ed3e8}}, m_bAllow = true,
    static ms_classInfo = {m_className = 0xb7894c6c, m_objectSize = 60,
      m_objectConstructor = 0xb76da3c0 <wxNotifyEvent::wxCreateObject()>,
      m_baseInfo1 = 0xb7971100, m_baseInfo2 = 0x0,
      static sm_first = 0xb7a428cc, m_next = 0xb7971100,
      static sm_classTable = 0xa5ed3e8}}, m_code = 0, m_oldItemIndex = 0,
  m_itemIndex = 13, m_col = 0, m_pointDrag = {x = 159, y = 286},
  m_item = {<wxObject> = {_vptr.wxObject = 0x870fee8, static ms_classInfo = {
---Type <return> to continue, or q <return> to quit---
        m_className = 0xb75451a4, m_objectSize = 8, m_objectConstructor = 0,
        m_baseInfo1 = 0x0, m_baseInfo2 = 0x0, static sm_first = 0xb7a428cc,
        m_next = 0xb75998c4, static sm_classTable = 0xa5ed3e8},
      m_refData = 0x0}, m_mask = 0, m_itemId = 0, m_col = 0, m_state = 0,
    m_stateMask = 0, m_text = {<wxStringBase> = {static npos = 4294967295,
        m_pchData = 0xb754a270}, <No data fields>}, m_image = -1,
    m_data = 217453288, m_format = 2, m_width = 0, m_attr = 0xb821a50,
    static ms_classInfo = {m_className = 0xb78a30b0, m_objectSize = 52,
      m_objectConstructor = 0xb773c2e0 <wxListItem::wxCreateObject()>,
      m_baseInfo1 = 0xb7599858, m_baseInfo2 = 0x0,
      static sm_first = 0xb7a428cc, m_next = 0xb7972810,
      static sm_classTable = 0xa5ed3e8}}, m_editCancelled = false,
  static ms_classInfo = {m_className = 0xb78a3108, m_objectSize = 140,
    m_objectConstructor = 0xb773f3d0 <wxListEvent::wxCreateObject()>,
    m_baseInfo1 = 0xb7971118, m_baseInfo2 = 0x0, static sm_first = 0xb7a428cc,
    m_next = 0xb79720f8, static sm_classTable = 0xa5ed3e8}}
#30 0x08465373 in MuleExtern::wxListMainWindow::OnMouse (this=0xadc6268,
    event=@0xbfab01b4) at ../../src/extern/wxWidgets/listctrl.cpp:3239
evtCtx = {<wxCommandEvent> = {<wxEvent> = {<wxObject> = {
        _vptr.wxObject = 0xb1be12c, static ms_classInfo = {
          m_className = 0xb75451a4, m_objectSize = 8, m_objectConstructor = 0,
          m_baseInfo1 = 0x0, m_baseInfo2 = 0x0, static sm_first = 0xb7a428cc,
          m_next = 0xb75998c4, static sm_classTable = 0xa5ed3e8},
---Type <return> to continue, or q <return> to quit---
        m_refData = 0xbfaaff48}, m_eventObject = 0xb67a0ff4, m_eventType = 1,
      m_timeStamp = 174266688, m_id = -1079312552,
      m_callbackUserData = 0xb6790cc0, m_propagationLevel = 174266700,
      m_skipped = 244, m_isCommandEvent = 15, static ms_classInfo = {
        m_className = 0xb7556708, m_objectSize = 36, m_objectConstructor = 0,
        m_baseInfo1 = 0xb7599858, m_baseInfo2 = 0x0,
        static sm_first = 0xb7a428cc, m_next = 0xb759a908,
        static sm_classTable = 0xa5ed3e8}}, m_cmdString = {<wxStringBase> = {
        static npos = 4294967295, m_pchData = 0xb71d5b74}, <No data fields>},
    m_commandInt = -1221857292, m_extraLong = -1208538658,
    m_clientData = 0xc126aa0, m_clientObject = 0xbfaaff88,
    static ms_classInfo = {m_className = 0xb7894c30, m_objectSize = 56,
      m_objectConstructor = 0xb76d9c90 <wxCommandEvent::wxCreateObject()>,
      m_baseInfo1 = 0xb759a920, m_baseInfo2 = 0x0,
      static sm_first = 0xb7a428cc, m_next = 0xb79710e8,
      static sm_classTable = 0xa5ed3e8}}, m_pos = {x = -1222810442,
    y = -1221852864}, static ms_classInfo = {m_className = 0xb7895434,
    m_objectSize = 64,
    m_objectConstructor = 0xb76da290 <wxContextMenuEvent::wxCreateObject()>,
    m_baseInfo1 = 0xb7971100, m_baseInfo2 = 0x0, static sm_first = 0xb7a428cc,
    m_next = 0xb79713e8, static sm_classTable = 0xa5ed3e8}}
x = 159
y = 286
---Type <return> to continue, or q <return> to quit---
hitResult = 128
count = 18
current = 13
forceClick = false
__FUNCTION__ = "OnMouse"
#31 0xb7458931 in wxAppConsole::HandleEvent (this=0xa61ae18,
    handler=0xadc6268, func=&virtual table offset 12102, event=@0xbfab01b4)
    at ../src/common/appbase.cpp:322
No locals.
#32 0xb75155fa in wxEvtHandler::ProcessEventIfMatches (entry=@0x8902170,
    handler=0xadc6268, event=@0xbfab01b4) at ../src/common/event.cpp:1230
tableId1 = <value optimized out>
tableId2 = <value optimized out>
#33 0xb7516d84 in wxEventHashTable::HandleEvent (this=0x89020c0,
    event=@0xbfab01b4, self=0xadc6268) at ../src/common/event.cpp:905
n = 0
count = 1
eventType = 10101
eTTnode = (wxEventHashTable::EventTypeTable * const) 0xad29f38
#34 0xb7516ed6 in wxEvtHandler::ProcessEvent (this=0xadc6268,
    event=@0xbfab01b4) at ../src/common/event.cpp:1292
__FUNCTION__ = "ProcessEvent"
#35 0xb7516e5c in wxEvtHandler::ProcessEvent (this=0xadc56e0,
---Type <return> to continue, or q <return> to quit---
    event=@0xbfab01b4) at ../src/common/event.cpp:1299
__FUNCTION__ = "ProcessEvent"
#36 0xb7875743 in wxScrollHelperEvtHandler::ProcessEvent (this=0xadc56e0,
    event=@0xbfab01b4) at ../src/generic/scrlwing.cpp:208
evType = 10101
processed = <value optimized out>
#37 0xb7717b6b in wxWindow::GTKProcessEvent (this=0xadc6268, event=@0xbfab01b4)
    at ../src/gtk/window.cpp:1410
No locals.
#38 0xb771eb8c in gtk_window_button_press_callback (widget=0xad4a060,
    gdk_event=0xa63d240, win=0xadc6268) at ../src/gtk/window.cpp:1609
ret = <value optimized out>
rc = <value optimized out>
event_type = 10101
event = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x8711948,
      static ms_classInfo = {m_className = 0xb75451a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7a428cc, m_next = 0xb75998c4,
        static sm_classTable = 0xa5ed3e8}, m_refData = 0x0},
    m_eventObject = 0xadc50a0, m_eventType = 10101, m_timeStamp = 73438340,
    m_id = -284, m_callbackUserData = 0x0, m_propagationLevel = 0,
    m_skipped = false, m_isCommandEvent = false, static ms_classInfo = {
      m_className = 0xb7556708, m_objectSize = 36, m_objectConstructor = 0,
---Type <return> to continue, or q <return> to quit---
      m_baseInfo1 = 0xb7599858, m_baseInfo2 = 0x0,
      static sm_first = 0xb7a428cc, m_next = 0xb759a908,
      static sm_classTable = 0xa5ed3e8}}, m_x = 159, m_y = 286,
  m_leftDown = false, m_middleDown = false, m_rightDown = true,
  m_controlDown = false, m_shiftDown = false, m_altDown = false,
  m_metaDown = false, m_wheelRotation = 0, m_wheelDelta = 0,
  m_linesPerAction = 0, static ms_classInfo = {m_className = 0xb7894d20,
    m_objectSize = 64,
    m_objectConstructor = 0xb76d99f0 <wxMouseEvent::wxCreateObject()>,
    m_baseInfo1 = 0xb759a920, m_baseInfo2 = 0x0, static sm_first = 0xb7a428cc,
    m_next = 0xb7971148, static sm_classTable = 0xa5ed3e8}}
#39 0xb6ef0036 in _gtk_marshal_BOOLEAN__BOXED (closure=0xadc69d8,
    return_value=0xbfab03a0, n_param_values=2, param_values=0xabf8200,
    invocation_hint=0xbfab038c, marshal_data=0xb771ea20)
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmarshalers.c:84
data1 = (gpointer) 0xad4a060
data2 = <value optimized out>
v_return = <value optimized out>
__PRETTY_FUNCTION__ = "_gtk_marshal_BOOLEAN__BOXED"
#40 0xb6b55c4b in IA__g_closure_invoke (closure=0xadc69d8,
    return_value=0xbfab03a0, n_param_values=2, param_values=0xabf8200,
    invocation_hint=0xbfab038c)
    at /build/buildd/glib2.0-2.18.2/gobject/gclosure.c:767
---Type <return> to continue, or q <return> to quit---
marshal = (GClosureMarshal) 0xb6eeffa0 <_gtk_marshal_BOOLEAN__BOXED>
marshal_data = (gpointer) 0x0
__PRETTY_FUNCTION__ = "IA__g_closure_invoke"
#41 0xb6b6c095 in signal_emit_unlocked_R (node=0xaa93828, detail=0,
    instance=0xad4a060, emission_return=0xbfab04d8,
    instance_and_params=0xabf8200)
    at /build/buildd/glib2.0-2.18.2/gobject/gsignal.c:3244
tmp = <value optimized out>
handler = (Handler *) 0xadc6a20
accumulator = (SignalAccumulator *) 0xaa92f10
emission = {next = 0x0, instance = 0xad4a060, ihint = {signal_id = 30,
    detail = 0, run_type = G_SIGNAL_RUN_FIRST}, state = EMISSION_RUN,
  chain_type = 4}
class_closure = (GClosure *) 0xa638c40
handler_list = (Handler *) 0xadc6a20
return_accu = (GValue *) 0xbfab03a0
accu = {g_type = 20, data = {{v_int = 0, v_uint = 0, v_long = 0,
      v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0,
      v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0,
      v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}}
signal_id = 30
max_sequential_handler_number = 18981
return_value_altered = 0
---Type <return> to continue, or q <return> to quit---
#42 0xb6b6d62b in IA__g_signal_emit_valist (instance=0xad4a060, signal_id=30,
    detail=0, var_args=0xbfab0530 "H\005��@�c\n`��\n6�")
    at /build/buildd/glib2.0-2.18.2/gobject/gsignal.c:2987
return_value = {g_type = 20, data = {{v_int = 0, v_uint = 0,
      v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0,
      v_double = 0, v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0,
      v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0,
      v_pointer = 0x0}}}
error = <value optimized out>
signal_return_type = 20
param_values = (GValue *) 0xabf8214
node = (SignalNode *) 0xaa93828
i = 1
n_params = 1
__PRETTY_FUNCTION__ = "IA__g_signal_emit_valist"
#43 0xb6b6dc26 in IA__g_signal_emit (instance=0xad4a060, signal_id=30,
    detail=0) at /build/buildd/glib2.0-2.18.2/gobject/gsignal.c:3034
No locals.
#44 0xb700533e in gtk_widget_event_internal (widget=0xad4a060, event=0xa63d240)
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkwidget.c:4745
signal_num = <value optimized out>
return_val = 0
#45 0xb6ee8b4c in IA__gtk_propagate_event (widget=0xad4a060, event=0xa63d240)
---Type <return> to continue, or q <return> to quit---
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:2391
tmp = (GtkWidget *) 0xd1255b0
handled_event = 174314048
__PRETTY_FUNCTION__ = "IA__gtk_propagate_event"
#46 0xb6eea017 in IA__gtk_main_do_event (event=0xa63d240)
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1581
event_widget = (GtkWidget *) 0xad4a060
grab_widget = (GtkWidget *) 0xad4a060
window_group = (GtkWindowGroup *) 0xd1255b0
rewritten_event = (GdkEvent *) 0x0
tmp_list = <value optimized out>
__PRETTY_FUNCTION__ = "IA__gtk_main_do_event"
#47 0xb6d7f50a in gdk_event_dispatch (source=0xa641290, callback=0,
    user_data=0x0) at /build/buildd/gtk+2.0-2.14.4/gdk/x11/gdkevents-x11.c:2365
display = <value optimized out>
event = <value optimized out>
#48 0xb6ab8718 in IA__g_main_context_dispatch (context=0xa61af60)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#49 0xb6abbdc3 in g_main_context_iterate (context=0xa61af60, block=1,
    dispatch=1, self=0xa61c510)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 0
---Type <return> to continue, or q <return> to quit---
timeout = 0
some_ready = 1
nfds = 261
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xe9a37c8
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#50 0xb6abc2e2 in IA__g_main_loop_run (loop=0xb5a02558)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0xa61c510
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#51 0xb6eea3a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0xb5a01fa0
loop = (GMainLoop *) 0xb5a02558
#52 0xb770710b in wxEventLoop::Run (this=0xb5a01fa0)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#53 0xb77ab3dc in wxAppBase::MainLoop (this=0xa61ae18)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0xb5a01fa0}, m_pp = 0xa61ae58,
---Type <return> to continue, or q <return> to quit---
  m_pOld = 0x0}
#54 0xb77ab131 in wxAppBase::OnRun (this=0x6) at ../src/common/appcmn.cpp:367
No locals.
#55 0xb74a03fa in wxEntry (argc=@0xb75986cc, argv=0xa609480)
    at ../src/common/init.cpp:460
No locals.
#56 0xb74a04b7 in wxEntry (argc=@0xbfab0850, argv=0xbfab08d4)
    at ../src/common/init.cpp:472
No locals.
#57 0x082c0834 in main (argc=0, argv=0x0) at ../../src/amule-gui.cpp:94
No locals.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 10, 2009, 06:20:04 PM
And another low VSZ - SIGSEGV crash

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb676d700 (LWP 6560)]
0x0abe330f in ?? ()
(gdb) bt
Code: [Select]
#0  0x0abe330f in ?? ()
#1  0xb6d914af in gdk_io_invoke (source=0xb0873820,
    condition=<value optimized out>, data=0x2)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
#2  0xb6b2f71d in g_io_unix_dispatch (source=0xb1bbd780,
    callback=0xb6d91450 <gdk_io_invoke>, user_data=0xb1b39768)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
#3  0xb6af8718 in IA__g_main_context_dispatch (context=0x95c2f60)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
#4  0xb6afbdc3 in g_main_context_iterate (context=0x95c2f60, block=1,
    dispatch=1, self=0x95c4510)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
#5  0xb6afc2e2 in IA__g_main_loop_run (loop=0xb5703798)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
#6  0xb6f2a3a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
#7  0xb774710b in wxEventLoop::Run (this=0xb5703778)
    at ../src/gtk/evtloop.cpp:76
#8  0xb77eb3dc in wxAppBase::MainLoop (this=0x95c2e18)
    at ../src/common/appcmn.cpp:312
#9  0xb77eb131 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
#10 0xb74e03fa in wxEntry (argc=@0xb75d86cc, argv=0x95b1480)
    at ../src/common/init.cpp:460
---Type <return> to continue, or q <return> to quit---
#11 0xb74e04b7 in wxEntry (argc=@0xbfbf1190, argv=0xbfbf1214)
    at ../src/common/init.cpp:472
#12 0x082c0834 in main (argc=1, argv=0xb6b75460) at ../../src/amule-gui.cpp:94
(gdb) bt full
Code: [Select]
#0  0x0abe330f in ?? ()
No symbol table info available.
#1  0xb6d914af in gdk_io_invoke (source=0xb0873820,
    condition=<value optimized out>, data=0x2)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = 180237072
#2  0xb6b2f71d in g_io_unix_dispatch (source=0xb1bbd780,
    callback=0xb6d91450 <gdk_io_invoke>, user_data=0xb1b39768)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 0
#3  0xb6af8718 in IA__g_main_context_dispatch (context=0x95c2f60)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#4  0xb6afbdc3 in g_main_context_iterate (context=0x95c2f60, block=1,
    dispatch=1, self=0x95c4510)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 0
timeout = 0
some_ready = 1
nfds = 424
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xbd78cc8
__PRETTY_FUNCTION__ = "g_main_context_iterate"
---Type <return> to continue, or q <return> to quit---
#5  0xb6afc2e2 in IA__g_main_loop_run (loop=0xb5703798)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0x95c4510
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#6  0xb6f2a3a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0xb5703778
loop = (GMainLoop *) 0xb5703798
#7  0xb774710b in wxEventLoop::Run (this=0xb5703778)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#8  0xb77eb3dc in wxAppBase::MainLoop (this=0x95c2e18)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0xb5703778}, m_pp = 0x95c2e58,
  m_pOld = 0x0}
#9  0xb77eb131 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
No locals.
#10 0xb74e03fa in wxEntry (argc=@0xb75d86cc, argv=0x95b1480)
    at ../src/common/init.cpp:460
No locals.
---Type <return> to continue, or q <return> to quit---
#11 0xb74e04b7 in wxEntry (argc=@0xbfbf1190, argv=0xbfbf1214)
    at ../src/common/init.cpp:472
No locals.
#12 0x082c0834 in main (argc=1, argv=0xb6b75460) at ../../src/amule-gui.cpp:94
No locals.

(gdb) thread apply all bt full
Code: [Select]
Thread 5 (Thread 0xb45f1b90 (LWP 6611)):
#0  0xb7ff1430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7fb53a2 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
   from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0xb75516e1 in wxConditionInternal::WaitTimeout (this=0xa385870,
    milliseconds=100) at ../src/unix/threadpsx.cpp:405
tspec = {tv_sec = 1239368132, tv_nsec = 146000000}
err = <value optimized out>
#3  0xb755176a in wxCondition::WaitTimeout (this=0x95f4b84, milliseconds=100)
    at ../include/wx/thrimpl.cpp:256
__FUNCTION__ = "WaitTimeout"
#4  0xb7553524 in wxSemaphoreInternal::WaitTimeout (this=0x95f4b80,
    milliseconds=100) at ../src/unix/threadpsx.cpp:552
remainingTime = -516
locker = {m_isOk = true, m_mutex = @0x95f4b80}
#5  0xb75535aa in wxSemaphore::WaitTimeout (this=0x9ede560, milliseconds=100)
    at ../include/wx/thrimpl.cpp:320
__FUNCTION__ = "WaitTimeout"
#6  0x0840b770 in CTimerThread::Entry (this=0x9ede540)
    at ../../src/Timer.cpp:64
---Type <return> to continue, or q <return> to quit---
now = 2417550798
sinceLast = 0
timeout = 100
evt = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x85efd88,
      static ms_classInfo = {m_className = 0xb75851a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7a828cc, m_next = 0xb75d98c4,
        static sm_classTable = 0x95953e8}, m_refData = 0x0},
    m_eventObject = 0x0, m_eventType = 10244, m_timeStamp = 0, m_id = 6128,
    m_callbackUserData = 0x0, m_propagationLevel = 0, m_skipped = false,
    m_isCommandEvent = false, static ms_classInfo = {m_className = 0xb7596708,
      m_objectSize = 36, m_objectConstructor = 0, m_baseInfo1 = 0xb75d9858,
      m_baseInfo2 = 0x0, static sm_first = 0xb7a828cc, m_next = 0xb75da908,
      static sm_classTable = 0x95953e8}}, <No data fields>}
lastEvent = 2417550798
#7  0xb7554036 in wxThreadInternal::PthreadStart (thread=0x9ede540)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0xa385e70
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#8  0xb755413d in wxPthreadStart (ptr=0x9ede540)
    at ../src/unix/threadpsx.cpp:718
---Type <return> to continue, or q <return> to quit---
No locals.
#9  0xb7fb150f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#10 0xb7286a0e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 3 (Thread 0xb55f3b90 (LWP 6605)):
#0  CRC4EncryptableBuffer::RC4Crypt (this=0xa331a7c,
    pachIn=0xb15b5750 "b\217\221\030;|���\034���UbJb\217\230\003\035w\t�!�\b{Gt]�t�N\v}-AO\017Y�Ѵ]��\222$����\bC\006��n)�+0\032\213\203�7\225�\025cn�.X����D�7�)��\223\n\036Wo�\017�\224\216j�����\212$K�\005�\225�\036\v/\016��\004+�\033�\202�r\227\226�R�\203�<\231�\213",
    pachOut=0xb15b5750 "b\217\221\030;|���\034���UbJb\217\230\003\035w\t�!�\b{Gt]�t�N\v}-AO\017Y�Ѵ]��\222$����\bC\006��n)�+0\032\213\203�7\225�\025cn�.X����D�7�)��\223\n\036Wo�\017�\224\216j�����\212$K�\005�\225�\036\v/\016��\004+�\033�\202�r\227\226�R�\203�<\231�\213", nLen=10771) at ../../src/RC4Encrypt.cpp:73
i = 10302
byX = 127 '\177'
byY = 133 '\205'
pabyState = (
    uint8 *) 0xa331a9a "2\210��z��\033<�}:\020�\221J`\227�����\206\236̪d�~0�\235\237\023�\212N�\034\215\016.�F�\177\213\202 �\231\"3(���#�\t�\n\005�\\s�G\003��\027H�l\2161nR\224_�\207\036?c����K\031\025�>�\002M,f'�vT�ɲZ\001wu\b{\f]7\214p�---Type <return> to continue, or q <return> to quit---
\024�\022��\006;\vV�\234I��9\200B\004^�\037"
byXorIndex = 185 '�'
__FUNCTION__ = "RC4Crypt"
#1  0x0816654d in CEncryptedStreamSocket::CryptPrepareSendData (
    this=0xa331880,
    pBuffer=0xb15b5750 "b\217\221\030;|���\034���UbJb\217\230\003\035w\t�!�\b{Gt]�t�N\v}-AO\017Y�Ѵ]��\222$����\bC\006��n)�+0\032\213\203�7\225�\025cn�.X����D�7�)��\223\n\036Wo�\017�\224\216j�����\212$K�\005�\225�\036\v/\016��\004+�\033�\202�r\227\226�R�\203�<\231�\213", nLen=10771)
    at ../../src/EncryptedStreamSocket.cpp:360
__FUNCTION__ = "CryptPrepareSendData"
#2  0x08162ae2 in CEMSocket::Send (this=0xa331880,
    maxNumberOfBytesToSend=2600, minFragSize=2600,
    onlyAllowedToSendControlPacket=false) at ../../src/EMSocket.cpp:596
curPacket = (CPacket *) 0xb042a7a0
bWasLongTimeSinceSend = false
lock = {m_isOk = true, m_mutex = @0xa331c10}
anErrorHasOccured = false
sentStandardPacketBytesThisCall = 407
sentControlPacketBytesThisCall = 0
returnVal = {success = true, sentBytesStandardPackets = 0,
  sentBytesControlPackets = 0}
__FUNCTION__ = "Send"
---Type <return> to continue, or q <return> to quit---
#3  0x08107b9a in CEMSocket::SendFileAndControlData (this=0xa331880,
    maxNumberOfBytesToSend=2600, minFragSize=2600) at ../../src/EMSocket.h:71
No locals.
#4  0x080f1e06 in CClientTCPSocket::SendFileAndControlData (this=0xa331880,
    maxNumberOfBytesToSend=2600, overchargeMaxBytesToSend=2600)
    at ../../src/ClientTCPSocket.cpp:2124
returnStatus = {success = true, sentBytesStandardPackets = 0,
  sentBytesControlPackets = 0}
returnStatus = {success = 86, sentBytesStandardPackets = 0,
  sentBytesControlPackets = 3042915080}
#5  0x08210892 in UploadBandwidthThrottler::Entry (this=0x9d41ab8)
    at ../../src/UploadBandwidthThrottler.cpp:434
socketSentBytes = {success = true, sentBytesStandardPackets = 0,
  sentBytesControlPackets = 0}
lastSpentBytes = 0
socket = (class ThrottledFileSocket *) 0xa331bb4
maxCounter = 153
spentBytes = 2600
spentOverhead = 0
sendLock = {m_isOk = true, m_mutex = @0x9d41ac8}
maxSlot = 188
timeSinceLastLoop = 10
minFragSize = 1300
---Type <return> to continue, or q <return> to quit---
doubleSendSize = 2600
bytesToSpend = 198656
sleepTime = 1
thisLoopTick = 2417550893
TIME_BETWEEN_UPLOAD_LOOPS = 1
lastLoopTick = 2417550893
realBytesToSpend = 198656999
allowedDataRate = 10240000
rememberedSlotCounter = 158
extraSleepTime = 1
sendLock = {m_isOk = false, m_mutex = @0xb7fc0ff4}
#6  0xb7554036 in wxThreadInternal::PthreadStart (thread=0x9d41ab8)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0x9d900e8
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#7  0xb755413d in wxPthreadStart (ptr=0x9d41ab8)
    at ../src/unix/threadpsx.cpp:718
No locals.
#8  0xb7fb150f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#9  0xb7286a0e in clone () from /lib/tls/i686/cmov/libc.so.6
---Type <return> to continue, or q <return> to quit---
No symbol table info available.

Thread 1 (Thread 0xb676d700 (LWP 6560)):
#0  0x0abe330f in ?? ()
No symbol table info available.
#1  0xb6d914af in gdk_io_invoke (source=0xb0873820,
    condition=<value optimized out>, data=0x2)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = 180237072
#2  0xb6b2f71d in g_io_unix_dispatch (source=0xb1bbd780,
    callback=0xb6d91450 <gdk_io_invoke>, user_data=0xb1b39768)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 0
#3  0xb6af8718 in IA__g_main_context_dispatch (context=0x95c2f60)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#4  0xb6afbdc3 in g_main_context_iterate (context=0x95c2f60, block=1,
    dispatch=1, self=0x95c4510)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 0
timeout = 0
some_ready = 1
nfds = 424
---Type <return> to continue, or q <return> to quit---
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xbd78cc8
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#5  0xb6afc2e2 in IA__g_main_loop_run (loop=0xb5703798)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0x95c4510
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#6  0xb6f2a3a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0xb5703778
loop = (GMainLoop *) 0xb5703798
#7  0xb774710b in wxEventLoop::Run (this=0xb5703778)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#8  0xb77eb3dc in wxAppBase::MainLoop (this=0x95c2e18)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0xb5703778}, m_pp = 0x95c2e58,
  m_pOld = 0x0}
#9  0xb77eb131 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
No locals.
---Type <return> to continue, or q <return> to quit---
#10 0xb74e03fa in wxEntry (argc=@0xb75d86cc, argv=0x95b1480)
    at ../src/common/init.cpp:460
No locals.
#11 0xb74e04b7 in wxEntry (argc=@0xbfbf1190, argv=0xbfbf1214)
    at ../src/common/init.cpp:472
No locals.
#12 0x082c0834 in main (argc=1, argv=0xb6b75460) at ../../src/amule-gui.cpp:94
No locals.

Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 10, 2009, 06:25:29 PM
$ ps axl | grep amule
Code: [Select]
0  1000  6558  6503  20   0 219536 214828 poll  S+   pts/0      0:03 gdb amule
0  1000  6560  6558  20   0 189548 107112 ptrace Tl  pts/0    460:36 /usr/bin/amule
0  1000 20885 20794  20   0   3236   796 pipe_w S+   pts/1      0:00 grep amule

$ cat /proc/6560/maps

Part 1:
Code: [Select]
IME
b2699000-b277a000 r--p 00000000 08:11 15295282   /usr/lib/locale/en_GB.utf8/LC_COLLATE
b277a000-b277b000 r--p 00000000 08:11 15295286   /usr/lib/locale/en_GB.utf8/LC_MONETARY
b277b000-b277c000 r--p 00000000 08:11 15295292   /usr/lib/locale/en_GB.utf8/LC_MESSAGES/SYS_LC_MESSAGES
b277c000-b277d000 r--p 00000000 08:11 15295289   /usr/lib/locale/en_GB.utf8/LC_PAPER
b277d000-b277e000 r--p 00000000 08:11 15295287   /usr/lib/locale/en_GB.utf8/LC_NAME
b277e000-b277f000 r--p 00000000 08:11 15295281   /usr/lib/locale/en_GB.utf8/LC_ADDRESS
b277f000-b2780000 r--p 00000000 08:11 15295290   /usr/lib/locale/en_GB.utf8/LC_TELEPHONE
b2780000-b2781000 r--p 00000000 08:11 15295285   /usr/lib/locale/en_GB.utf8/LC_MEASUREMENT
b2781000-b2782000 r--p 00000000 08:11 15295284   /usr/lib/locale/en_GB.utf8/LC_IDENTIFICATION
b2782000-b2804000 rw-p b2782000 00:00 0
b2804000-b284f000 r--p 00000000 08:11 15392788   /usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif.ttf
b284f000-b3c64000 r--p 00000000 08:11 15392808   /usr/share/fonts/truetype/arphic/uming.ttc
b3c64000-b3d68000 rw-p b3c64000 00:00 0
b3d68000-b3df1000 r--p 00000000 08:11 15392785   /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-Bold.ttf
b3df1000-b3df2000 ---p b3df1000 00:00 0
b3df2000-b45f2000 rw-p b3df2000 00:00 0
b45f2000-b45f3000 ---p b45f2000 00:00 0
b45f3000-b4df3000 rw-p b45f3000 00:00 0
b4df3000-b4df4000 ---p b4df3000 00:00 0
b4df4000-b55f4000 rw-p b4df4000 00:00 0
b55f4000-b5603000 r-xp 00000000 08:11 7488081    /lib/libbz2.so.1.0.4
b5603000-b5604000 r--p 0000f000 08:11 7488081    /lib/libbz2.so.1.0.4
b5604000-b5605000 rw-p 00010000 08:11 7488081    /lib/libbz2.so.1.0.4
b5605000-b5636000 r-xp 00000000 08:11 15271619   /usr/lib/libcroco-0.6.so.3.0.1
b5636000-b5639000 rw-p 00030000 08:11 15271619   /usr/lib/libcroco-0.6.so.3.0.1
b5639000-b5669000 r-xp 00000000 08:11 15271251   /usr/lib/libgsf-1.so.114.0.8
b5669000-b566b000 r--p 0002f000 08:11 15271251   /usr/lib/libgsf-1.so.114.0.8
b566b000-b566c000 rw-p 00031000 08:11 15271251   /usr/lib/libgsf-1.so.114.0.8
b566c000-b566d000 rw-p b566c000 00:00 0
b566d000-b569e000 r-xp 00000000 08:11 15270040   /usr/lib/librsvg-2.so.2.22.3
b569e000-b569f000 r--p 00030000 08:11 15270040   /usr/lib/librsvg-2.so.2.22.3
b569f000-b56a0000 rw-p 00031000 08:11 15270040   /usr/lib/librsvg-2.so.2.22.3
b56a0000-b5700000 rw-s 00000000 00:09 622608     /SYSV00000000 (deleted)
b5700000-b57fc000 rw-p b5700000 00:00 0
b57fc000-b5800000 ---p b57fc000 00:00 0
b5802000-b580a000 r-xp 00000000 08:11 15272800   /usr/lib/libtrackerclient.so.0.0.0
b580a000-b580b000 r--p 00007000 08:11 15272800   /usr/lib/libtrackerclient.so.0.0.0
b580b000-b580c000 rw-p 00008000 08:11 15272800   /usr/lib/libtrackerclient.so.0.0.0
b580c000-b580e000 r-xp 00000000 08:11 7487583    /lib/libnss_mdns4_minimal.so.2
b580e000-b580f000 rw-p 00001000 08:11 7487583    /lib/libnss_mdns4_minimal.so.2
b5820000-b5821000 ---p b5820000 00:00 0
b5821000-b6021000 rw-p b5821000 00:00 0
b6021000-b6081000 rw-s 00000000 00:09 557070     /SYSV00000000 (deleted)
b6081000-b6144000 rw-p b6081000 00:00 0
b6144000-b61d9000 r--p 00000000 08:11 15392784   /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf
b61d9000-b61f1000 r-xp 00000000 08:11 25223171   /usr/lib/gio/modules/libgvfsdbus.so
b61f1000-b61f2000 r--p 00017000 08:11 25223171   /usr/lib/gio/modules/libgvfsdbus.so
b61f2000-b61f3000 rw-p 00018000 08:11 25223171   /usr/lib/gio/modules/libgvfsdbus.so
b61f3000-b6200000 r-xp 00000000 08:11 15270702   /usr/lib/libgvfscommon.so.0.0.0
b6200000-b6201000 r--p 0000d000 08:11 15270702   /usr/lib/libgvfscommon.so.0.0.0
b6201000-b6202000 rw-p 0000e000 08:11 15270702   /usr/lib/libgvfscommon.so.0.0.0
b6205000-b6206000 r-xp 00000000 08:11 15294815   /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so
b6206000-b6207000 r--p 00000000 08:11 15294815   /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so
b6207000-b6208000 rw-p 00001000 08:11 15294815   /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so
b6208000-b620b000 rw-s 00000000 00:09 655377     /SYSV00000000 (deleted)
b620b000-b6211000 r-xp 00000000 08:11 15294543   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-xpm.so
b6211000-b6212000 r--p 00005000 08:11 15294543   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-xpm.so
b6212000-b6213000 rw-p 00006000 08:11 15294543   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-xpm.so
b6213000-b6249000 r-xp 00000000 08:11 7487615    /lib/libdbus-1.so.3.4.0
b6249000-b624a000 r--p 00035000 08:11 7487615    /lib/libdbus-1.so.3.4.0
b624a000-b624b000 rw-p 00036000 08:11 7487615    /lib/libdbus-1.so.3.4.0
b624d000-b625d000 r-xp 00000000 08:11 7504263    /lib/tls/i686/cmov/libresolv-2.8.90.so
b625d000-b625e000 r--p 0000f000 08:11 7504263    /lib/tls/i686/cmov/libresolv-2.8.90.so
b625e000-b625f000 rw-p 00010000 08:11 7504263    /lib/tls/i686/cmov/libresolv-2.8.90.so
b625f000-b6261000 rw-p b625f000 00:00 0
b6261000-b6265000 r-xp 00000000 08:11 7504221    /lib/tls/i686/cmov/libnss_dns-2.8.90.so
b6265000-b6266000 r--p 00003000 08:11 7504221    /lib/tls/i686/cmov/libnss_dns-2.8.90.so
b6266000-b6267000 rw-p 00004000 08:11 7504221    /lib/tls/i686/cmov/libnss_dns-2.8.90.so
b6267000-b62a8000 rw-p b6267000 00:00 0
b62a8000-b62aa000 r-xp 00000000 08:11 15327946   /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
b62aa000-b62ab000 r--p 00001000 08:11 15327946   /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
b62ab000-b62ac000 rw-p 00002000 08:11 15327946   /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
b62ac000-b62b2000 r--s 00000000 08:11 19407431   /var/cache/fontconfig/945677eb7aeaf62f1d50efc3fb3ec7d8-x86.cache-2
b62b2000-b62b5000 r--s 00000000 08:11 19408582   /var/cache/fontconfig/e383d7ea5fbe662a33d9b44caf393297-x86.cache-2
b62b5000-b62b7000 r--s 00000000 08:11 19408581   /var/cache/fontconfig/c69f04ab05004e31a6d5e715764f16d8-x86.cache-2
b62b7000-b62ba000 r--s 00000000 08:11 19407400   /var/cache/fontconfig/6eb3985aa4124903f6ff08ba781cd364-x86.cache-2
b62ba000-b62bb000 r--s 00000000 08:11 19408568   /var/cache/fontconfig/4c73fe0c47614734b17d736dbde7580a-x86.cache-2
b62bb000-b62be000 r--s 00000000 08:11 19407381   /var/cache/fontconfig/a755afe4a08bf5b97852ceb7400b47bc-x86.cache-2
b62be000-b62c1000 r--s 00000000 08:11 19408574   /var/cache/fontconfig/6d41288fd70b0be22e8c3a91e032eec0-x86.cache-2
b62c1000-b62c4000 r--s 00000000 08:11 19408573   /var/cache/fontconfig/de156ccd2eddbdc19d37a45b8b2aac9c-x86.cache-2
b62c4000-b62cc000 r--s 00000000 08:11 19408570   /var/cache/fontconfig/e3de0de479f42330eadf588a55fb5bf4-x86.cache-2
b62cc000-b62d7000 r--s 00000000 08:11 19408583   /var/cache/fontconfig/0f34bcd4b6ee430af32735b75db7f02b-x86.cache-2
b62d7000-b62da000 r--s 00000000 08:11 19408580   /var/cache/fontconfig/de9486f0b47a4d768a594cb4198cb1c6-x86.cache-2
b62da000-b62e1000 r--s 00000000 08:11 19406916   /var/cache/fontconfig/d52a8644073d54c13679302ca1180695-x86.cache-2
b62e1000-b62e7000 r--s 00000000 08:11 19406910   /var/cache/fontconfig/089dead882dea3570ffc31a9898cfb69-x86.cache-2
b62e7000-b62fe000 r--s 00000000 08:11 15344031   /usr/share/mime/mime.cache
b62fe000-b63a9000 r--p 00000000 08:11 15483943   /usr/share/icons/Tangerine/icon-theme.cache
b63a9000-b63c8000 r-xp 00000000 08:11 15294850   /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
b63c8000-b63c9000 r--p 0001e000 08:11 15294850   /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
b63c9000-b63ca000 rw-p 0001f000 08:11 15294850   /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
b63ca000-b63d0000 r-xp 00000000 08:11 15271479   /usr/lib/libgailutil.so.18.0.1
b63d0000-b63d1000 r--p 00005000 08:11 15271479   /usr/lib/libgailutil.so.18.0.1
b63d1000-b63d2000 rw-p 00006000 08:11 15271479   /usr/lib/libgailutil.so.18.0.1
b63d2000-b6401000 r-xp 00000000 08:11 15270570   /usr/lib/libgnomecanvas-2.so.0.2001.0
b6401000-b6402000 r--p 0002e000 08:11 15270570   /usr/lib/libgnomecanvas-2.so.0.2001.0
b6402000-b6403000 rw-p 0002f000 08:11 15270570   /usr/lib/libgnomecanvas-2.so.0.2001.0
b6403000-b6441000 r-xp 00000000 08:11 15271569   /usr/lib/libgnomeprintui-2-2.so.0.1.0
b6441000-b6442000 r--p 0003d000 08:11 15271569   /usr/lib/libgnomeprintui-2-2.so.0.1.0
b6442000-b6443000 rw-p 0003e000 08:11 15271569   /usr/lib/libgnomeprintui-2-2.so.0.1.0
b6443000-b6578000 r-xp 00000000 08:11 15271020   /usr/lib/libxml2.so.2.6.32
b6578000-b6579000 ---p 00135000 08:11 15271020   /usr/lib/libxml2.so.2.6.32
b6579000-b657d000 r--p 00135000 08:11 15271020   /usr/lib/libxml2.so.2.6.32
b657d000-b657e000 rw-p 00139000 08:11 15271020   /usr/lib/libxml2.so.2.6.32
b657e000-b657f000 rw-p b657e000 00:00 0
b657f000-b6594000 r-xp 00000000 08:11 15271916   /usr/lib/libart_lgpl_2.so.2.3.20
b6594000-b6596000 rw-p 00014000 08:11 15271916   /usr/lib/libart_lgpl_2.so.2.3.20
b6596000-b65fc000 r-xp 00000000 08:11 15272783   /usr/lib/libgnomeprint-2-2.so.0.1.0
b65fc000-b65fd000 ---p 00066000 08:11 15272783   /usr/lib/libgnomeprint-2-2.so.0.1.0
b65fd000-b65fe000 r--p 00066000 08:11 15272783   /usr/lib/libgnomeprint-2-2.so.0.1.0
b65fe000-b65ff000 rw-p 00067000 08:11 15272783   /usr/lib/libgnomeprint-2-2.so.0.1.0
b65ff000-b6609000 r-xp 00000000 08:11 7504222    /lib/tls/i686/cmov/libnss_files-2.8.90.so
b6609000-b660a000 r--p 00009000 08:11 7504222    /lib/tls/i686/cmov/libnss_files-2.8.90.so
b660a000-b660b000 rw-p 0000a000 08:11 7504222    /lib/tls/i686/cmov/libnss_files-2.8.90.so
b660b000-b6614000 r-xp 00000000 08:11 7504259    /lib/tls/i686/cmov/libnss_nis-2.8.90.so
b6614000-b6615000 r--p 00008000 08:11 7504259    /lib/tls/i686/cmov/libnss_nis-2.8.90.so
b6615000-b6616000 rw-p 00009000 08:11 7504259    /lib/tls/i686/cmov/libnss_nis-2.8.90.so
b6616000-b662b000 r-xp 00000000 08:11 7504219    /lib/tls/i686/cmov/libnsl-2.8.90.so
b662b000-b662c000 r--p 00014000 08:11 7504219    /lib/tls/i686/cmov/libnsl-2.8.90.so
b662c000-b662d000 rw-p 00015000 08:11 7504219    /lib/tls/i686/cmov/libnsl-2.8.90.so
b662d000-b662f000 rw-p b662d000 00:00 0
b662f000-b6636000 r-xp 00000000 08:11 7504220    /lib/tls/i686/cmov/libnss_compat-2.8.90.so
b6636000-b6637000 r--p 00006000 08:11 7504220    /lib/tls/i686/cmov/libnss_compat-2.8.90.so
b6637000-b6638000 rw-p 00007000 08:11 7504220    /lib/tls/i686/cmov/libnss_compat-2.8.90.so
b6639000-b663a000 rw-p b6639000 00:00 0
b663a000-b663e000 r-xp 00000000 08:11 15294529   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-png.so
b663e000-b663f000 r--p 00003000 08:11 15294529   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-png.so
b663f000-b6640000 rw-p 00004000 08:11 15294529   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-png.so
b6640000-b6642000 r-xp 00000000 08:11 7504267    /lib/tls/i686/cmov/libutil-2.8.90.so
b6642000-b6643000 r--p 00001000 08:11 7504267    /lib/tls/i686/cmov/libutil-2.8.90.so
b6643000-b6644000 rw-p 00002000 08:11 7504267    /lib/tls/i686/cmov/libutil-2.8.90.so
b6644000-b6645000 r--s 00000000 08:11 19406911   /var/cache/fontconfig/4794a0821666d79190d59a36cb4f44b5-x86.cache-2
b6645000-b6647000 r--s 00000000 08:11 19407182   /var/cache/fontconfig/e13b20fdb08344e0e664864cc2ede53d-x86.cache-2
b6647000-b6649000 rw-p b6647000 00:00 0
b6649000-b664a000 r--p 00000000 08:11 15295427   /usr/lib/locale/nl_NL.utf8/LC_NUMERIC
b664a000-b664b000 r--p 00000000 08:11 15426937   /usr/lib/locale/nl_NL.utf8/LC_TIME
b664b000-b672c000 r--p 00000000 08:11 15295674   /usr/lib/locale/nl_NL.utf8/LC_COLLATE
b672c000-b672d000 r--p 00000000 08:11 15426938   /usr/lib/locale/nl_NL.utf8/LC_MONETARY
b672d000-b672e000 r--p 00000000 08:11 15295227   /usr/lib/locale/nl_NL.utf8/LC_MESSAGES/SYS_LC_MESSAGES
b672e000-b676d000 r--p 00000000 08:11 15295675   /usr/lib/locale/nl_NL.utf8/LC_CTYPE
b676d000-b6771000 rw-p b676d000 00:00 0
b6771000-b6775000 r-xp 00000000 08:11 15270153   /usr/lib/libXdmcp.so.6.0.0
b6775000-b6776000 rw-p 00003000 08:11 15270153   /usr/lib/libXdmcp.so.6.0.0
b6776000-b6778000 r-xp 00000000 08:11 15270151   /usr/lib/libXau.so.6.0.0
b6778000-b6779000 rw-p 00001000 08:11 15270151   /usr/lib/libXau.so.6.0.0
b6779000-b677f000 r-xp 00000000 08:11 15271817   /usr/lib/libxcb-render.so.0.0.0
b677f000-b6780000 r--p 00005000 08:11 15271817   /usr/lib/libxcb-render.so.0.0.0
b6780000-b6781000 rw-p 00006000 08:11 15271817   /usr/lib/libxcb-render.so.0.0.0
b6781000-b6784000 r-xp 00000000 08:11 15271819   /usr/lib/libxcb-render-util.so.0.0.0
b6784000-b6785000 r--p 00002000 08:11 15271819   /usr/lib/libxcb-render-util.so.0.0.0
b6785000-b6786000 rw-p 00003000 08:11 15271819   /usr/lib/libxcb-render-util.so.0.0.0
b6786000-b6787000 rw-p b6786000 00:00 0
b6787000-b67c6000 r-xp 00000000 08:11 15271815   /usr/lib/libpixman-1.so.0.12.0
b67c6000-b67c8000 r--p 0003e000 08:11 15271815   /usr/lib/libpixman-1.so.0.12.0
b67c8000-b67c9000 rw-p 00040000 08:11 15271815   /usr/lib/libpixman-1.so.0.12.0
b67c9000-b67e0000 r-xp 00000000 08:11 15270845   /usr/lib/libxcb.so.1.0.0
b67e0000-b67e1000 r--p 00016000 08:11 15270845   /usr/lib/libxcb.so.1.0.0
b67e1000-b67e2000 rw-p 00017000 08:11 15270845   /usr/lib/libxcb.so.1.0.0
b67e2000-b67e3000 r-xp 00000000 08:11 15270854   /usr/lib/libxcb-xlib.so.0.0.0
b67e3000-b67e4000 r--p 00000000 08:11 15270854   /usr/lib/libxcb-xlib.so.0.0.0
b67e4000-b67e5000 rw-p 00001000 08:11 15270854   /usr/lib/libxcb-xlib.so.0.0.0
b67e5000-b67fa000 r-xp 00000000 08:11 15271181   /usr/lib/libICE.so.6.3.0
b67fa000-b67fb000 rw-p 00014000 08:11 15271181   /usr/lib/libICE.so.6.3.0
b67fb000-b67fd000 rw-p b67fb000 00:00 0
b67fd000-b6825000 r-xp 00000000 08:11 7487563    /lib/libpcre.so.3.12.1
b6825000-b6826000 r--p 00027000 08:11 7487563    /lib/libpcre.so.3.12.1
b6826000-b6827000 rw-p 00028000 08:11 7487563    /lib/libpcre.so.3.12.1
b6827000-b6828000 rw-p b6827000 00:00 0
b6828000-b684c000 r-xp 00000000 08:11 15270076   /usr/lib/libexpat.so.1.5.2
b684c000-b684e000 r--p 00023000 08:11 15270076   /usr/lib/libexpat.so.1.5.2
b684e000-b684f000 rw-p 00025000 08:11 15270076   /usr/lib/libexpat.so.1.5.2
b684f000-b6867000 r-xp 00000000 08:11 7487527    /lib/libselinux.so.1
b6867000-b6868000 r--p 00017000 08:11 7487527    /lib/libselinux.so.1
b6868000-b6869000 rw-p 00018000 08:11 7487527    /lib/libselinux.so.1
b6869000-b6871000 r-xp 00000000 08:11 15271224   /usr/lib/libXcursor.so.1.0.2
b6871000-b6872000 rw-p 00007000 08:11 15271224   /usr/lib/libXcursor.so.1.0.2
b6872000-b6877000 r-xp 00000000 08:11 15271241   /usr/lib/libXrandr.so.2.1.0
b6877000-b6878000 r--p 00005000 08:11 15271241   /usr/lib/libXrandr.so.2.1.0
b6878000-b6879000 rw-p 00006000 08:11 15271241   /usr/lib/libXrandr.so.2.1.0
b6879000-b6881000 r-xp 00000000 08:11 15270301   /usr/lib/libXi.so.6.0.0
b6881000-b6882000 r--p 00007000 08:11 15270301   /usr/lib/libXi.so.6.0.0
b6882000-b6883000 rw-p 00008000 08:11 15270301   /usr/lib/libXi.so.6.0.0
 


Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 10, 2009, 06:26:12 PM
Part 2:
Code: [Select]
b6883000-b6884000 rw-p b6883000 00:00 0
b6884000-b688c000 r-xp 00000000 08:11 15270900   /usr/lib/libXrender.so.1.3.0
b688c000-b688d000 r--p 00007000 08:11 15270900   /usr/lib/libXrender.so.1.3.0
b688d000-b688e000 rw-p 00008000 08:11 15270900   /usr/lib/libXrender.so.1.3.0
b688e000-b689b000 r-xp 00000000 08:11 15270035   /usr/lib/libXext.so.6.4.0
b689b000-b689d000 rw-p 0000c000 08:11 15270035   /usr/lib/libXext.so.6.4.0
b689d000-b690d000 r-xp 00000000 08:11 15271821   /usr/lib/libcairo.so.2.10800.0
b690d000-b690f000 r--p 0006f000 08:11 15271821   /usr/lib/libcairo.so.2.10800.0
b690f000-b6910000 rw-p 00071000 08:11 15271821   /usr/lib/libcairo.so.2.10800.0
b6910000-b6914000 r-xp 00000000 08:11 15271234   /usr/lib/libXfixes.so.3.1.0
b6914000-b6915000 rw-p 00003000 08:11 15271234   /usr/lib/libXfixes.so.3.1.0
b6915000-b6917000 r-xp 00000000 08:11 15271221   /usr/lib/libXdamage.so.1.1.0
b6917000-b6918000 rw-p 00001000 08:11 15271221   /usr/lib/libXdamage.so.1.1.0
b6918000-b6919000 rw-p b6918000 00:00 0
b6919000-b691b000 r-xp 00000000 08:11 15271890   /usr/lib/libXcomposite.so.1.0.0
b691b000-b691c000 r--p 00001000 08:11 15271890   /usr/lib/libXcomposite.so.1.0.0
b691c000-b691d000 rw-p 00002000 08:11 15271890   /usr/lib/libXcomposite.so.1.0.0
b691d000-b6a08000 r-xp 00000000 08:11 15270878   /usr/lib/libX11.so.6.2.0
b6a08000-b6a09000 r--p 000ea000 08:11 15270878   /usr/lib/libX11.so.6.2.0
b6a09000-b6a0b000 rw-p 000eb000 08:11 15270878   /usr/lib/libX11.so.6.2.0
b6a0b000-b6a0c000 rw-p b6a0b000 00:00 0
b6a0c000-b6a15000 r-xp 00000000 08:11 15271988   /usr/lib/libpangocairo-1.0.so.0.2202.0
b6a15000-b6a16000 r--p 00008000 08:11 15271988   /usr/lib/libpangocairo-1.0.so.0.2202.0
b6a16000-b6a17000 rw-p 00009000 08:11 15271988   /usr/lib/libpangocairo-1.0.so.0.2202.0
b6a17000-b6a69000 r-xp 00000000 08:11 15271453   /usr/lib/libtiff.so.4.2.1
b6a69000-b6a6b000 r--p 00052000 08:11 15271453   /usr/lib/libtiff.so.4.2.1
b6a6b000-b6a6c000 rw-p 00054000 08:11 15271453   /usr/lib/libtiff.so.4.2.1
b6a6c000-b6a6d000 rw-p b6a6c000 00:00 0
b6a6d000-b6a8c000 r-xp 00000000 08:11 15271751   /usr/lib/libjpeg.so.62.0.0
b6a8c000-b6a8d000 rw-p 0001e000 08:11 15271751   /usr/lib/libjpeg.so.62.0.0
b6a8d000-b6ab1000 r-xp 00000000 08:11 15271301   /usr/lib/libpng12.so.0.27.0
b6ab1000-b6ab2000 r--p 00023000 08:11 15271301   /usr/lib/libpng12.so.0.27.0
b6ab2000-b6ab3000 rw-p 00024000 08:11 15271301   /usr/lib/libpng12.so.0.27.0
b6ab3000-b6aba000 r-xp 00000000 08:11 15270840   /usr/lib/libSM.so.6.0.0
b6aba000-b6abb000 r--p 00006000 08:11 15270840   /usr/lib/libSM.so.6.0.0
b6abb000-b6abc000 rw-p 00007000 08:11 15270840   /usr/lib/libSM.so.6.0.0
b6abc000-b6abe000 r-xp 00000000 08:11 15271225   /usr/lib/libXinerama.so.1.0.0
b6abe000-b6abf000 rw-p 00001000 08:11 15271225   /usr/lib/libXinerama.so.1.0.0
b6abf000-b6b74000 r-xp 00000000 08:11 15271534   /usr/lib/libglib-2.0.so.0.1800.2
b6b74000-b6b75000 r--p 000b4000 08:11 15271534   /usr/lib/libglib-2.0.so.0.1800.2
b6b75000-b6b76000 rw-p 000b5000 08:11 15271534   /usr/lib/libglib-2.0.so.0.1800.2
b6b76000-b6b7d000 r-xp 00000000 08:11 7504264    /lib/tls/i686/cmov/librt-2.8.90.so
b6b7d000-b6b7e000 r--p 00007000 08:11 7504264    /lib/tls/i686/cmov/librt-2.8.90.so
b6b7e000-b6b7f000 rw-p 00008000 08:11 7504264    /lib/tls/i686/cmov/librt-2.8.90.so
b6b7f000-b6b80000 rw-p b6b7f000 00:00 0
b6b80000-b6b84000 r-xp 00000000 08:11 15271550   /usr/lib/libgthread-2.0.so.0.1800.2
b6b84000-b6b85000 r--p 00003000 08:11 15271550   /usr/lib/libgthread-2.0.so.0.1800.2
b6b85000-b6b86000 rw-p 00004000 08:11 15271550   /usr/lib/libgthread-2.0.so.0.1800.2
b6b86000-b6b89000 r-xp 00000000 08:11 15271540   /usr/lib/libgmodule-2.0.so.0.1800.2
b6b89000-b6b8a000 r--p 00002000 08:11 15271540   /usr/lib/libgmodule-2.0.so.0.1800.2
b6b8a000-b6b8b000 rw-p 00003000 08:11 15271540   /usr/lib/libgmodule-2.0.so.0.1800.2
b6b8b000-b6bc7000 r-xp 00000000 08:11 15271542   /usr/lib/libgobject-2.0.so.0.1800.2
b6bc7000-b6bc8000 r--p 0003b000 08:11 15271542   /usr/lib/libgobject-2.0.so.0.1800.2
b6bc8000-b6bc9000 rw-p 0003c000 08:11 15271542   /usr/lib/libgobject-2.0.so.0.1800.2
b6bc9000-b6bf4000 r-xp 00000000 08:11 15270073   /usr/lib/libfontconfig.so.1.3.0
b6bf4000-b6bf5000 r--p 0002a000 08:11 15270073   /usr/lib/libfontconfig.so.1.3.0
b6bf5000-b6bf6000 rw-p 0002b000 08:11 15270073   /usr/lib/libfontconfig.so.1.3.0
b6bf6000-b6c67000 r-xp 00000000 08:11 15270721   /usr/lib/libfreetype.so.6.3.18
b6c67000-b6c6b000 r--p 00070000 08:11 15270721   /usr/lib/libfreetype.so.6.3.18
b6c6b000-b6c6c000 rw-p 00074000 08:11 15270721   /usr/lib/libfreetype.so.6.3.18
b6c6c000-b6cac000 r-xp 00000000 08:11 15271329   /usr/lib/libpango-1.0.so.0.2202.0
b6cac000-b6cad000 ---p 00040000 08:11 15271329   /usr/lib/libpango-1.0.so.0.2202.0
b6cad000-b6cae000 r--p 00040000 08:11 15271329   /usr/lib/libpango-1.0.so.0.2202.0
b6cae000-b6caf000 rw-p 00041000 08:11 15271329   /usr/lib/libpango-1.0.so.0.2202.0
b6caf000-b6cb0000 rw-p b6caf000 00:00 0
b6cb0000-b6d15000 r-xp 00000000 08:11 15271504   /usr/lib/libgio-2.0.so.0.1800.2
b6d15000-b6d16000 ---p 00065000 08:11 15271504   /usr/lib/libgio-2.0.so.0.1800.2
b6d16000-b6d17000 r--p 00065000 08:11 15271504   /usr/lib/libgio-2.0.so.0.1800.2
b6d17000-b6d18000 rw-p 00066000 08:11 15271504   /usr/lib/libgio-2.0.so.0.1800.2
b6d18000-b6d30000 r-xp 00000000 08:11 15271669   /usr/lib/libgdk_pixbuf-2.0.so.0.1400.4
b6d30000-b6d31000 r--p 00017000 08:11 15271669   /usr/lib/libgdk_pixbuf-2.0.so.0.1400.4
b6d31000-b6d32000 rw-p 00018000 08:11 15271669   /usr/lib/libgdk_pixbuf-2.0.so.0.1400.4
b6d32000-b6d58000 r-xp 00000000 08:11 15271989   /usr/lib/libpangoft2-1.0.so.0.2202.0
b6d58000-b6d59000 r--p 00025000 08:11 15271989   /usr/lib/libpangoft2-1.0.so.0.2202.0
b6d59000-b6d5a000 rw-p 00026000 08:11 15271989   /usr/lib/libpangoft2-1.0.so.0.2202.0
b6d5a000-b6d73000 r-xp 00000000 08:11 15270990   /usr/lib/libatk-1.0.so.0.2409.1
b6d73000-b6d75000 r--p 00018000 08:11 15270990   /usr/lib/libatk-1.0.so.0.2409.1
b6d75000-b6d76000 rw-p 0001a000 08:11 15270990   /usr/lib/libatk-1.0.so.0.2409.1
b6d76000-b6dfe000 r-xp 00000000 08:11 15271567   /usr/lib/libgdk-x11-2.0.so.0.1400.4
b6dfe000-b6dff000 ---p 00088000 08:11 15271567   /usr/lib/libgdk-x11-2.0.so.0.1400.4
b6dff000-b6e01000 r--p 00088000 08:11 15271567   /usr/lib/libgdk-x11-2.0.so.0.1400.4
b6e01000-b6e02000 rw-p 0008a000 08:11 15271567   /usr/lib/libgdk-x11-2.0.so.0.1400.4
b6e02000-b6e03000 rw-p b6e02000 00:00 0
b6e03000-b7198000 r-xp 00000000 08:11 15271671   /usr/lib/libgtk-x11-2.0.so.0.1400.4
b7198000-b7199000 ---p 00395000 08:11 15271671   /usr/lib/libgtk-x11-2.0.so.0.1400.4
b7199000-b719d000 r--p 00395000 08:11 15271671   /usr/lib/libgtk-x11-2.0.so.0.1400.4
b719d000-b719f000 rw-p 00399000 08:11 15271671   /usr/lib/libgtk-x11-2.0.so.0.1400.4
b719f000-b71a1000 rw-p b719f000 00:00 0
b71a1000-b71a3000 r-xp 00000000 08:11 7504213    /lib/tls/i686/cmov/libdl-2.8.90.so
b71a3000-b71a4000 r--p 00001000 08:11 7504213    /lib/tls/i686/cmov/libdl-2.8.90.so
b71a4000-b71a5000 rw-p 00002000 08:11 7504213    /lib/tls/i686/cmov/libdl-2.8.90.so
b71a5000-b72fd000 r-xp 00000000 08:11 7504210    /lib/tls/i686/cmov/libc-2.8.90.so
b72fd000-b72ff000 r--p 00158000 08:11 7504210    /lib/tls/i686/cmov/libc-2.8.90.so
b72ff000-b7300000 rw-p 0015a000 08:11 7504210    /lib/tls/i686/cmov/libc-2.8.90.so
b7300000-b7303000 rw-p b7300000 00:00 0
b7303000-b7310000 r-xp 00000000 08:11 7487509    /lib/libgcc_s.so.1
b7310000-b7311000 r--p 0000c000 08:11 7487509    /lib/libgcc_s.so.1
b7311000-b7312000 rw-p 0000d000 08:11 7487509    /lib/libgcc_s.so.1
b7312000-b7336000 r-xp 00000000 08:11 7504214    /lib/tls/i686/cmov/libm-2.8.90.so
b7336000-b7337000 r--p 00023000 08:11 7504214    /lib/tls/i686/cmov/libm-2.8.90.so
b7337000-b7338000 rw-p 00024000 08:11 7504214    /lib/tls/i686/cmov/libm-2.8.90.so
b7338000-b7339000 rw-p b7338000 00:00 0
b7339000-b741c000 r-xp 00000000 08:11 15271202   /usr/lib/libstdc++.so.6.0.10
b741c000-b7420000 r--p 000e3000 08:11 15271202   /usr/lib/libstdc++.so.6.0.10
b7420000-b7421000 rw-p 000e7000 08:11 15271202   /usr/lib/libstdc++.so.6.0.10
b7421000-b7427000 rw-p b7421000 00:00 0
b7427000-b744d000 r-xp 00000000 08:11 15271167   /usr/lib/libGeoIP.so.1.4.4
b744d000-b744e000 r--p 00025000 08:11 15271167   /usr/lib/libGeoIP.so.1.4.4
b744e000-b744f000 rw-p 00026000 08:11 15271167   /usr/lib/libGeoIP.so.1.4.4
b744f000-b75cd000 r-xp 00000000 08:11 15272509   /usr/lib/libwx_baseud-2.8.so.0.5.0
b75cd000-b75d1000 r--p 0017d000 08:11 15272509   /usr/lib/libwx_baseud-2.8.so.0.5.0
b75d1000-b75d3000 rw-p 00181000 08:11 15272509   /usr/lib/libwx_baseud-2.8.so.0.5.0
b75d3000-b75db000 rw-p b75d3000 00:00 0
b75db000-b7608000 r-xp 00000000 08:11 15272510   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b7608000-b7609000 ---p 0002d000 08:11 15272510   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b7609000-b760a000 r--p 0002d000 08:11 15272510   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b760a000-b760b000 rw-p 0002e000 08:11 15272510   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b760b000-b7986000 r-xp 00000000 08:11 15271028   /usr/lib/libwx_gtk2ud_core-2.8.so.0.5.0
b7986000-b79ad000 r--p 0037a000 08:11 15271028   /usr/lib/libwx_gtk2ud_core-2.8.so.0.5.0
b79ad000-b79b2000 rw-p 003a1000 08:11 15271028   /usr/lib/libwx_gtk2ud_core-2.8.so.0.5.0
b79b2000-b79b9000 rw-p b79b2000 00:00 0
b79b9000-b7a7a000 r-xp 00000000 08:11 15270699   /usr/lib/libwx_gtk2ud_adv-2.8.so.0.5.0
b7a7a000-b7a82000 r--p 000c1000 08:11 15270699   /usr/lib/libwx_gtk2ud_adv-2.8.so.0.5.0
b7a82000-b7a83000 rw-p 000c9000 08:11 15270699   /usr/lib/libwx_gtk2ud_adv-2.8.so.0.5.0
b7a83000-b7a85000 rw-p b7a83000 00:00 0
b7a85000-b7a8d000 r-xp 00000000 08:11 15269911   /usr/lib/libixml.so.2.0.4
b7a8d000-b7a8e000 r--p 00007000 08:11 15269911   /usr/lib/libixml.so.2.0.4
b7a8e000-b7a8f000 rw-p 00008000 08:11 15269911   /usr/lib/libixml.so.2.0.4
b7a8f000-b7a93000 r-xp 00000000 08:11 15269967   /usr/lib/libthreadutil.so.2.2.3
b7a93000-b7a94000 r--p 00003000 08:11 15269967   /usr/lib/libthreadutil.so.2.2.3
b7a94000-b7a95000 rw-p 00004000 08:11 15269967   /usr/lib/libthreadutil.so.2.2.3
b7a95000-b7aaf000 r-xp 00000000 08:11 15270052   /usr/lib/libupnp.so.3.0.5
b7aaf000-b7ab0000 r--p 00019000 08:11 15270052   /usr/lib/libupnp.so.3.0.5
b7ab0000-b7ab1000 rw-p 0001a000 08:11 15270052   /usr/lib/libupnp.so.3.0.5
b7ab1000-b7ab2000 rw-p b7ab1000 00:00 0
b7ab2000-b7e6d000 r-xp 00000000 08:11 15271308   /usr/lib/libcrypto++.so.7.0.0
b7e6d000-b7ea2000 r--p 003bb000 08:11 15271308   /usr/lib/libcrypto++.so.7.0.0
b7ea2000-b7ea5000 rw-p 003f0000 08:11 15271308   /usr/lib/libcrypto++.so.7.0.0
b7ea5000-b7ea8000 rw-p b7ea5000 00:00 0
b7ea8000-b7ebc000 r-xp 00000000 08:11 15270039   /usr/lib/libz.so.1.2.3.3
b7ebc000-b7ebe000 rw-p 00013000 08:11 15270039   /usr/lib/libz.so.1.2.3.3
b7ebe000-b7ebf000 rw-p b7ebe000 00:00 0
b7ebf000-b7f9b000 r-xp 00000000 08:11 15272892   /usr/lib/libbfd-2.18.93.20081009.so
b7f9b000-b7fa5000 r--p 000dc000 08:11 15272892   /usr/lib/libbfd-2.18.93.20081009.so
b7fa5000-b7fa7000 rw-p 000e6000 08:11 15272892   /usr/lib/libbfd-2.18.93.20081009.so
b7fa7000-b7fab000 rw-p b7fa7000 00:00 0
b7fab000-b7fc0000 r-xp 00000000 08:11 7504262    /lib/tls/i686/cmov/libpthread-2.8.90.so
b7fc0000-b7fc1000 r--p 00014000 08:11 7504262    /lib/tls/i686/cmov/libpthread-2.8.90.so
b7fc1000-b7fc2000 rw-p 00015000 08:11 7504262    /lib/tls/i686/cmov/libpthread-2.8.90.so
b7fc2000-b7fc4000 rw-p b7fc2000 00:00 0
b7fc4000-b7fc5000 r--p 00000000 08:11 15295681   /usr/lib/locale/nl_NL.utf8/LC_PAPER
b7fc5000-b7fc6000 r--p 00000000 08:11 15295426   /usr/lib/locale/nl_NL.utf8/LC_NAME
b7fc6000-b7fc7000 r--p 00000000 08:11 15426939   /usr/lib/locale/nl_NL.utf8/LC_ADDRESS
b7fc7000-b7fc8000 r--p 00000000 08:11 15426940   /usr/lib/locale/nl_NL.utf8/LC_TELEPHONE
b7fc8000-b7fc9000 r--p 00000000 08:11 15295677   /usr/lib/locale/nl_NL.utf8/LC_MEASUREMENT
b7fc9000-b7fca000 r--p 00000000 08:11 15426941   /usr/lib/locale/nl_NL.utf8/LC_IDENTIFICATION
b7fca000-b7fcc000 r-xp 00000000 08:11 15278949   /usr/lib/gconv/UTF-32.so
b7fcc000-b7fcd000 r--p 00001000 08:11 15278949   /usr/lib/gconv/UTF-32.so
b7fcd000-b7fce000 rw-p 00002000 08:11 15278949   /usr/lib/gconv/UTF-32.so
b7fce000-b7fd5000 r--s 00000000 08:11 15278953   /usr/lib/gconv/gconv-modules.cache
b7fd5000-b7fd7000 rw-p b7fd5000 00:00 0
b7fd7000-b7ff1000 r-xp 00000000 08:11 7487687    /lib/ld-2.8.90.so
b7ff1000-b7ff2000 r-xp b7ff1000 00:00 0          [vdso]
b7ff2000-b7ff3000 r--p 0001a000 08:11 7487687    /lib/ld-2.8.90.so
b7ff3000-b7ff4000 rw-p 0001b000 08:11 7487687    /lib/ld-2.8.90.so
bfbd7000-bfbf3000 rw-p bffe4000 00:00 0          [stack]
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 11, 2009, 07:17:57 AM
Im still posting these backtraces because im assuming that you might need them
, as i have installed the latest version of amule (2.2.4) and subsequently festor's 9565,
and amule still crashes. (though not nearly as often!!!  :) )
So, i guess there is something in those backtraces telling you about something
that has not been fixed yet, right?

Another high VSZ - SIGABRT crash:

Terminated after throwing an instance of 'std::bad_alloc'
   what(): std::bad_alloc
* Could not get symbol names for backtrace
   backtrace:

Program received signal SIGABRT, Aborted.
[Switching to Thread 0xb67e6700 (LWP 24522)]
0xb806a430 in __kernel_vsyscall ()

$ ps axl | grep amule
Code: [Select]
0  1000 18862 18796  20   0   3236   796 pipe_w S+   pts/1      0:00 grep amule
0  1000 24455 24417  20   0 209316 62332 poll   S+   pts/0      0:03 gdb amule
0  1000 24522 24455  20   0 3145724 1266484 ptrace Tl pts/0   808:36 /usr/bin/amule

$ free
Code: [Select]
             total       used       free     shared    buffers     cached
Mem:       3111840    3016948      94892          0      19476    1038980
-/+ buffers/cache:    1958492    1153348
Swap:      9100780    2572896    6527884

(gdb) bt
Code: [Select]
#0  0xb806a430 in __kernel_vsyscall ()
#1  0xb72498a0 in raise () from /lib/tls/i686/cmov/libc.so.6
#2  0xb724b268 in abort () from /lib/tls/i686/cmov/libc.so.6
#3  0x08411c19 in OnUnhandledException ()
    at ../../../../src/libs/common/MuleDebug.cpp:103
#4  0xb746c655 in __cxxabiv1::__terminate (
    handler=0x84118a8 <OnUnhandledException()>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
#5  0xb746c692 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
#6  0xb746c7ca in __cxa_throw (obj=0xb749b8f0, tinfo=0x8712c8c,
    dest=0xb746cd00 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
#7  0xb746ce23 in operator new (sz=24)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
#8  0xb7551556 in wxObjectList::CreateNode (this=0x92a16d0, prev=0xbdbe4bd8,
    next=0x0, data=0xb97ffb8, key=@0xb7651750) at ../include/wx/list.h:1178
#9  0xb7566759 in wxListBase::Append (this=0x92a16d0, object=0xb97ffb8)
    at ../src/common/list.cpp:244
#10 0xb75cebe7 in wxEvtHandler::AddPendingEvent (this=0x8715600,
    event=@0xbf96bb90) at ../include/wx/list.h:1178
#11 0xb7672d58 in wxSocketBase::OnRequest (this=0x9685290,
    notification=wxSOCKET_OUTPUT) at ../src/common/socket.cpp:1006
---Type <return> to continue, or q <return> to quit---
#12 0xb7672e54 in wx_socket_callback (notification=GSOCK_OUTPUT,
    cdata=0x9685290 "��O\b") at ../src/common/socket.cpp:942
#13 0xb76776bb in GSocket::Detected_Write (this=0x9f938c8)
    at ../src/unix/gsocket.cpp:1836

#14 0xb77c1be7 in _GSocket_GDK_Input (data=0x9f938c8, source=101,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
#15 0xb6e0a4af in gdk_io_invoke (source=0xb27fbb50,
    condition=<value optimized out>, data=0xb0c90ae8)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
#16 0xb6ba871d in g_io_unix_dispatch (source=0xb27b3f70,
    callback=0xb6e0a450 <gdk_io_invoke>, user_data=0xb0c90ae8)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
#17 0xb6b71718 in IA__g_main_context_dispatch (context=0x89b7f60)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
#18 0xb6b74dc3 in g_main_context_iterate (context=0x89b7f60, block=1,
    dispatch=1, self=0x89b9510)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
#19 0xb6b752e2 in IA__g_main_loop_run (loop=0x8a19160)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
#20 0xb6fa33a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
#21 0xb77c010b in wxEventLoop::Run (this=0x92ddb40)
    at ../src/gtk/evtloop.cpp:76
---Type <return> to continue, or q <return> to quit---
#22 0xb78643dc in wxAppBase::MainLoop (this=0x89b7e18)
    at ../src/common/appcmn.cpp:312
#23 0xb7864131 in wxAppBase::OnRun (this=0x6) at ../src/common/appcmn.cpp:367
#24 0xb75593fa in wxEntry (argc=@0xb76516cc, argv=0x89a6480)
    at ../src/common/init.cpp:460
#25 0xb75594b7 in wxEntry (argc=@0xbf96bf00, argv=0xbf96bf84)
    at ../src/common/init.cpp:472
#26 0x082c0834 in main (argc=0, argv=0x0) at ../../src/amule-gui.cpp:94

(gdb) bt full
Code: [Select]
#0  0xb806a430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb72498a0 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0xb724b268 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0x08411c19 in OnUnhandledException ()
    at ../../../../src/libs/common/MuleDebug.cpp:103
t = (class std::type_info *) 0x8712c8c
output = (FILE *) 0xb7378560
#4  0xb746c655 in __cxxabiv1::__terminate (
    handler=0x84118a8 <OnUnhandledException()>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
No locals.
#5  0xb746c692 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
No locals.
#6  0xb746c7ca in __cxa_throw (obj=0xb749b8f0, tinfo=0x8712c8c,
    dest=0xb746cd00 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
header = <value optimized out>
#7  0xb746ce23 in operator new (sz=24)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
---Type <return> to continue, or q <return> to quit---
handler = <value optimized out>
p = <value optimized out>
#8  0xb7551556 in wxObjectList::CreateNode (this=0x92a16d0, prev=0xbdbe4bd8,
    next=0x0, data=0xb97ffb8, key=@0xb7651750) at ../include/wx/list.h:1178
No locals.
#9  0xb7566759 in wxListBase::Append (this=0x92a16d0, object=0xb97ffb8)
    at ../src/common/list.cpp:244
node = <value optimized out>
__FUNCTION__ = "Append"
#10 0xb75cebe7 in wxEvtHandler::AddPendingEvent (this=0x8715600,
    event=@0xbf96bb90) at ../include/wx/list.h:1178
eventCopy = <value optimized out>
__FUNCTION__ = "AddPendingEvent"
#11 0xb7672d58 in wxSocketBase::OnRequest (this=0x9685290,
    notification=wxSOCKET_OUTPUT) at ../src/common/socket.cpp:1006
event = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x870e668,
      static ms_classInfo = {m_className = 0xb75fe1a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7afb8cc, m_next = 0xb76528c4,
        static sm_classTable = 0x898a3e8}, m_refData = 0x0},
    m_eventObject = 0x9685290, m_eventType = 10002, m_timeStamp = 0,
    m_id = 6123, m_callbackUserData = 0x0, m_propagationLevel = 0,
    m_skipped = false, m_isCommandEvent = false, static ms_classInfo = {
---Type <return> to continue, or q <return> to quit---
      m_className = 0xb760f708, m_objectSize = 36, m_objectConstructor = 0,
      m_baseInfo1 = 0xb7652858, m_baseInfo2 = 0x0,
      static sm_first = 0xb7afb8cc, m_next = 0xb7653908,
      static sm_classTable = 0x898a3e8}}, m_event = wxSOCKET_OUTPUT,
  m_clientData = 0x0, static ms_classInfo = {m_className = 0xb767a008,
    m_objectSize = 44,
    m_objectConstructor = 0xb7670e00 <wxSocketEvent::wxCreateObject()>,
    m_baseInfo1 = 0xb7653920, m_baseInfo2 = 0x0, static sm_first = 0xb7afb8cc,
    m_next = 0xb768354c, static sm_classTable = 0x898a3e8}}
flag = <value optimized out>
#12 0xb7672e54 in wx_socket_callback (notification=GSOCK_OUTPUT,
    cdata=0x9685290 "��O\b") at ../src/common/socket.cpp:942
No locals.
#13 0xb76776bb in GSocket::Detected_Write (this=0x9f938c8)
    at ../src/unix/gsocket.cpp:1836
No locals.
#14 0xb77c1be7 in _GSocket_GDK_Input (data=0x9f938c8, source=101,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
No locals.
#15 0xb6e0a4af in gdk_io_invoke (source=0xb27fbb50,
    condition=<value optimized out>, data=0xb0c90ae8)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = 3
---Type <return> to continue, or q <return> to quit---
#16 0xb6ba871d in g_io_unix_dispatch (source=0xb27b3f70,
    callback=0xb6e0a450 <gdk_io_invoke>, user_data=0xb0c90ae8)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 6
#17 0xb6b71718 in IA__g_main_context_dispatch (context=0x89b7f60)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#18 0xb6b74dc3 in g_main_context_iterate (context=0x89b7f60, block=1,
    dispatch=1, self=0x89b9510)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 110
timeout = 0
some_ready = 1
nfds = 6
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xb27ec548
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#19 0xb6b752e2 in IA__g_main_loop_run (loop=0x8a19160)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0x89b9510
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#20 0xb6fa33a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
---Type <return> to continue, or q <return> to quit---
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0x92ddb40
loop = (GMainLoop *) 0x8a19160
#21 0xb77c010b in wxEventLoop::Run (this=0x92ddb40)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#22 0xb78643dc in wxAppBase::MainLoop (this=0x89b7e18)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0x92ddb40}, m_pp = 0x89b7e58,
  m_pOld = 0x0}
#23 0xb7864131 in wxAppBase::OnRun (this=0x6) at ../src/common/appcmn.cpp:367
No locals.
#24 0xb75593fa in wxEntry (argc=@0xb76516cc, argv=0x89a6480)
    at ../src/common/init.cpp:460
No locals.
#25 0xb75594b7 in wxEntry (argc=@0xbf96bf00, argv=0xbf96bf84)
    at ../src/common/init.cpp:472
No locals.
#26 0x082c0834 in main (argc=0, argv=0x0) at ../../src/amule-gui.cpp:94
No locals.

(gdb) thread apply all bt full
Code: [Select]

Thread 5 (Thread 0xb465db90 (LWP 24797)):
#0  0xb806a430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb802e3a2 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
   from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0xb75ca6e1 in wxConditionInternal::WaitTimeout (this=0x8a190e0,
    milliseconds=100) at ../src/unix/threadpsx.cpp:405
tspec = {tv_sec = 1239425004, tv_nsec = 165000000}
err = <value optimized out>
#3  0xb75ca76a in wxCondition::WaitTimeout (this=0x8a26d7c, milliseconds=100)
    at ../include/wx/thrimpl.cpp:256
__FUNCTION__ = "WaitTimeout"
#4  0xb75cc524 in wxSemaphoreInternal::WaitTimeout (this=0x8a26d78,
    milliseconds=100) at ../src/unix/threadpsx.cpp:552
remainingTime = -516
locker = {m_isOk = true, m_mutex = @0x8a26d78}
#5  0xb75cc5aa in wxSemaphore::WaitTimeout (this=0x93bb280, milliseconds=100)
    at ../include/wx/thrimpl.cpp:320
__FUNCTION__ = "WaitTimeout"
#6  0x0840b770 in CTimerThread::Entry (this=0x93bb260)
    at ../../src/Timer.cpp:64
---Type <return> to continue, or q <return> to quit---
now = 2474422817
sinceLast = 0
timeout = 100
evt = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x85efd88,
      static ms_classInfo = {m_className = 0xb75fe1a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7afb8cc, m_next = 0xb76528c4,
        static sm_classTable = 0x898a3e8}, m_refData = 0x0},
    m_eventObject = 0x0, m_eventType = 10244, m_timeStamp = 0, m_id = 6128,
    m_callbackUserData = 0x0, m_propagationLevel = 0, m_skipped = false,
    m_isCommandEvent = false, static ms_classInfo = {m_className = 0xb760f708,
      m_objectSize = 36, m_objectConstructor = 0, m_baseInfo1 = 0xb7652858,
      m_baseInfo2 = 0x0, static sm_first = 0xb7afb8cc, m_next = 0xb7653908,
      static sm_classTable = 0x898a3e8}}, <No data fields>}
lastEvent = 2474422817
#7  0xb75cd036 in wxThreadInternal::PthreadStart (thread=0x93bb260)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0x8a26c18
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#8  0xb75cd13d in wxPthreadStart (ptr=0x93bb260)
    at ../src/unix/threadpsx.cpp:718
---Type <return> to continue, or q <return> to quit---
No locals.
#9  0xb802a50f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#10 0xb72ffa0e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 3 (Thread 0xb565fb90 (LWP 24767)):
#0  0xb806a430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb8031906 in nanosleep () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0xb75d4168 in wxMicroSleep (microseconds=0) at ../src/unix/utilsunx.cpp:191
tmReq = {tv_sec = 1, tv_nsec = 0}
#3  0xb75d4191 in wxMilliSleep (milliseconds=1000)
    at ../src/unix/utilsunx.cpp:212
No locals.
#4  0xb75ca41d in wxThread::Sleep (milliseconds=1000)
    at ../src/unix/threadpsx.cpp:986
No locals.
#5  0x0820fd22 in UploadBandwidthThrottler::Entry (this=0x912aab0)
    at ../../src/UploadBandwidthThrottler.cpp:320
timeSinceLastLoop = 0
minFragSize = 1300
---Type <return> to continue, or q <return> to quit---
doubleSendSize = 2600
bytesToSpend = 1743762
sleepTime = 1000
thisLoopTick = 2474421969
TIME_BETWEEN_UPLOAD_LOOPS = 1
lastLoopTick = 2474421969
realBytesToSpend = 93696999
allowedDataRate = 10240000
rememberedSlotCounter = 1
extraSleepTime = 1000
sendLock = {m_isOk = false, m_mutex = @0xb8039ff4}
#6  0xb75cd036 in wxThreadInternal::PthreadStart (thread=0x912aab0)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0x912d3c0
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#7  0xb75cd13d in wxPthreadStart (ptr=0x912aab0)
    at ../src/unix/threadpsx.cpp:718
No locals.
#8  0xb802a50f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#9  0xb72ffa0e in clone () from /lib/tls/i686/cmov/libc.so.6
---Type <return> to continue, or q <return> to quit---
No symbol table info available.

Thread 1 (Thread 0xb67e6700 (LWP 24522)):
#0  0xb806a430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb72498a0 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0xb724b268 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0x08411c19 in OnUnhandledException ()
    at ../../../../src/libs/common/MuleDebug.cpp:103
t = (class std::type_info *) 0x8712c8c
output = (FILE *) 0xb7378560
#4  0xb746c655 in __cxxabiv1::__terminate (
    handler=0x84118a8 <OnUnhandledException()>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
No locals.
#5  0xb746c692 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
No locals.
#6  0xb746c7ca in __cxa_throw (obj=0xb749b8f0, tinfo=0x8712c8c,
    dest=0xb746cd00 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
---Type <return> to continue, or q <return> to quit---
header = <value optimized out>
#7  0xb746ce23 in operator new (sz=24)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
handler = <value optimized out>
p = <value optimized out>
#8  0xb7551556 in wxObjectList::CreateNode (this=0x92a16d0, prev=0xbdbe4bd8,
    next=0x0, data=0xb97ffb8, key=@0xb7651750) at ../include/wx/list.h:1178
No locals.
#9  0xb7566759 in wxListBase::Append (this=0x92a16d0, object=0xb97ffb8)
    at ../src/common/list.cpp:244
node = <value optimized out>
__FUNCTION__ = "Append"
#10 0xb75cebe7 in wxEvtHandler::AddPendingEvent (this=0x8715600,
    event=@0xbf96bb90) at ../include/wx/list.h:1178
eventCopy = <value optimized out>
__FUNCTION__ = "AddPendingEvent"
#11 0xb7672d58 in wxSocketBase::OnRequest (this=0x9685290,
    notification=wxSOCKET_OUTPUT) at ../src/common/socket.cpp:1006
event = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x870e668,
      static ms_classInfo = {m_className = 0xb75fe1a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7afb8cc, m_next = 0xb76528c4,
        static sm_classTable = 0x898a3e8}, m_refData = 0x0},
---Type <return> to continue, or q <return> to quit---
    m_eventObject = 0x9685290, m_eventType = 10002, m_timeStamp = 0,
    m_id = 6123, m_callbackUserData = 0x0, m_propagationLevel = 0,
    m_skipped = false, m_isCommandEvent = false, static ms_classInfo = {
      m_className = 0xb760f708, m_objectSize = 36, m_objectConstructor = 0,
      m_baseInfo1 = 0xb7652858, m_baseInfo2 = 0x0,
      static sm_first = 0xb7afb8cc, m_next = 0xb7653908,
      static sm_classTable = 0x898a3e8}}, m_event = wxSOCKET_OUTPUT,
  m_clientData = 0x0, static ms_classInfo = {m_className = 0xb767a008,
    m_objectSize = 44,
    m_objectConstructor = 0xb7670e00 <wxSocketEvent::wxCreateObject()>,
    m_baseInfo1 = 0xb7653920, m_baseInfo2 = 0x0, static sm_first = 0xb7afb8cc,
    m_next = 0xb768354c, static sm_classTable = 0x898a3e8}}
flag = <value optimized out>
#12 0xb7672e54 in wx_socket_callback (notification=GSOCK_OUTPUT,
    cdata=0x9685290 "��O\b") at ../src/common/socket.cpp:942
No locals.
#13 0xb76776bb in GSocket::Detected_Write (this=0x9f938c8)
    at ../src/unix/gsocket.cpp:1836
No locals.
#14 0xb77c1be7 in _GSocket_GDK_Input (data=0x9f938c8, source=101,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
No locals.
#15 0xb6e0a4af in gdk_io_invoke (source=0xb27fbb50,
---Type <return> to continue, or q <return> to quit---
    condition=<value optimized out>, data=0xb0c90ae8)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = 3
#16 0xb6ba871d in g_io_unix_dispatch (source=0xb27b3f70,
    callback=0xb6e0a450 <gdk_io_invoke>, user_data=0xb0c90ae8)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 6
#17 0xb6b71718 in IA__g_main_context_dispatch (context=0x89b7f60)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#18 0xb6b74dc3 in g_main_context_iterate (context=0x89b7f60, block=1,
    dispatch=1, self=0x89b9510)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 110
timeout = 0
some_ready = 1
nfds = 6
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xb27ec548
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#19 0xb6b752e2 in IA__g_main_loop_run (loop=0x8a19160)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0x89b9510
---Type <return> to continue, or q <return> to quit---
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#20 0xb6fa33a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0x92ddb40
loop = (GMainLoop *) 0x8a19160
#21 0xb77c010b in wxEventLoop::Run (this=0x92ddb40)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#22 0xb78643dc in wxAppBase::MainLoop (this=0x89b7e18)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0x92ddb40}, m_pp = 0x89b7e58,
  m_pOld = 0x0}
#23 0xb7864131 in wxAppBase::OnRun (this=0x6) at ../src/common/appcmn.cpp:367
No locals.
#24 0xb75593fa in wxEntry (argc=@0xb76516cc, argv=0x89a6480)
    at ../src/common/init.cpp:460
No locals.
#25 0xb75594b7 in wxEntry (argc=@0xbf96bf00, argv=0xbf96bf84)
    at ../src/common/init.cpp:472
No locals.
---Type <return> to continue, or q <return> to quit---
#26 0x082c0834 in main (argc=0, argv=0x0) at ../../src/amule-gui.cpp:94
No locals.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 11, 2009, 06:32:23 PM
And another low VSZ - SIGSEGV crash:

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb67dc700 (LWP 20007)]
0x0a90715d in ?? ()

(gdb) bt
Code: [Select]
#0  0x0a90715d in ?? ()
#1  0xb6e004af in gdk_io_invoke (source=0xb3d7e8a0,
    condition=<value optimized out>, data=0x2)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
#2  0xb6b9e71d in g_io_unix_dispatch (source=0xb3de50e0,
    callback=0xb6e00450 <gdk_io_invoke>, user_data=0xb3dcbad0)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
#3  0xb6b67718 in IA__g_main_context_dispatch (context=0x9cfcf60)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
#4  0xb6b6adc3 in g_main_context_iterate (context=0x9cfcf60, block=1,
    dispatch=1, self=0x9cfe510)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
#5  0xb6b6b2e2 in IA__g_main_loop_run (loop=0x9d5e158)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
#6  0xb6f993a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
#7  0xb77b610b in wxEventLoop::Run (this=0x9d5e138)
    at ../src/gtk/evtloop.cpp:76
#8  0xb785a3dc in wxAppBase::MainLoop (this=0x9cfce18)
    at ../src/common/appcmn.cpp:312
#9  0xb785a131 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
#10 0xb754f3fa in wxEntry (argc=@0xb76476cc, argv=0x9ceb480)
    at ../src/common/init.cpp:460
---Type <return> to continue, or q <return> to quit---
#11 0xb754f4b7 in wxEntry (argc=@0xbfd602f0, argv=0xbfd60374)
    at ../src/common/init.cpp:472
#12 0x082c0834 in main (argc=1, argv=0xb6be4460) at ../../src/amule-gui.cpp:94

(gdb) bt full
Code: [Select]
#0  0x0a90715d in ?? ()
No symbol table info available.
#1  0xb6e004af in gdk_io_invoke (source=0xb3d7e8a0,
    condition=<value optimized out>, data=0x2)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = 177238360
#2  0xb6b9e71d in g_io_unix_dispatch (source=0xb3de50e0,
    callback=0xb6e00450 <gdk_io_invoke>, user_data=0xb3dcbad0)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 0
#3  0xb6b67718 in IA__g_main_context_dispatch (context=0x9cfcf60)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#4  0xb6b6adc3 in g_main_context_iterate (context=0x9cfcf60, block=1,
    dispatch=1, self=0x9cfe510)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 0
timeout = 0
some_ready = 1
nfds = 347
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xb3be77a8
__PRETTY_FUNCTION__ = "g_main_context_iterate"
---Type <return> to continue, or q <return> to quit---
#5  0xb6b6b2e2 in IA__g_main_loop_run (loop=0x9d5e158)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0x9cfe510
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#6  0xb6f993a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0x9d5e138
loop = (GMainLoop *) 0x9d5e158
#7  0xb77b610b in wxEventLoop::Run (this=0x9d5e138)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#8  0xb785a3dc in wxAppBase::MainLoop (this=0x9cfce18)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0x9d5e138}, m_pp = 0x9cfce58,
  m_pOld = 0x0}
#9  0xb785a131 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
No locals.
#10 0xb754f3fa in wxEntry (argc=@0xb76476cc, argv=0x9ceb480)
    at ../src/common/init.cpp:460
No locals.
---Type <return> to continue, or q <return> to quit---
#11 0xb754f4b7 in wxEntry (argc=@0xbfd602f0, argv=0xbfd60374)
    at ../src/common/init.cpp:472
No locals.
#12 0x082c0834 in main (argc=1, argv=0xb6be4460) at ../../src/amule-gui.cpp:94
No locals.

(gdb) thread apply all bt full
Code: [Select]
Thread 5 (Thread 0xb4652b90 (LWP 20058)):
#0  0xb8060430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb80243a2 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
   from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0xb75c06e1 in wxConditionInternal::WaitTimeout (this=0x9d5e0e0,
    milliseconds=100) at ../src/unix/threadpsx.cpp:405
tspec = {tv_sec = 1239430716, tv_nsec = 727000000}
err = <value optimized out>
#3  0xb75c076a in wxCondition::WaitTimeout (this=0x9d6bd7c, milliseconds=100)
    at ../include/wx/thrimpl.cpp:256
__FUNCTION__ = "WaitTimeout"
#4  0xb75c2524 in wxSemaphoreInternal::WaitTimeout (this=0x9d6bd78,
    milliseconds=100) at ../src/unix/threadpsx.cpp:552
remainingTime = -516
locker = {m_isOk = true, m_mutex = @0x9d6bd78}
#5  0xb75c25aa in wxSemaphore::WaitTimeout (this=0xa636780, milliseconds=100)
    at ../include/wx/thrimpl.cpp:320
__FUNCTION__ = "WaitTimeout"
#6  0x0840b770 in CTimerThread::Entry (this=0xa636760)
    at ../../src/Timer.cpp:64
---Type <return> to continue, or q <return> to quit---
now = 2480135379
sinceLast = 0
timeout = 100
evt = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x85efd88,
      static ms_classInfo = {m_className = 0xb75f41a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7af18cc, m_next = 0xb76488c4,
        static sm_classTable = 0x9ccf3e8}, m_refData = 0x0},
    m_eventObject = 0x0, m_eventType = 10244, m_timeStamp = 0, m_id = 6128,
    m_callbackUserData = 0x0, m_propagationLevel = 0, m_skipped = false,
    m_isCommandEvent = false, static ms_classInfo = {m_className = 0xb7605708,
      m_objectSize = 36, m_objectConstructor = 0, m_baseInfo1 = 0xb7648858,
      m_baseInfo2 = 0x0, static sm_first = 0xb7af18cc, m_next = 0xb7649908,
      static sm_classTable = 0x9ccf3e8}}, <No data fields>}
lastEvent = 2480135379
#7  0xb75c3036 in wxThreadInternal::PthreadStart (thread=0xa636760)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0x9d6bc38
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#8  0xb75c313d in wxPthreadStart (ptr=0xa636760)
    at ../src/unix/threadpsx.cpp:718
---Type <return> to continue, or q <return> to quit---
No locals.
#9  0xb802050f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#10 0xb72f5a0e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 3 (Thread 0xb5654b90 (LWP 20055)):
#0  0x0809147d in std::swap<unsigned char> (__a=@0xb5f6f78, __b=@0xb5f6fc5)
    at /usr/include/c++/4.3/bits/stl_move.h:86
__tmp = 10 '\n'
#1  0x08090c09 in CRC4EncryptableBuffer::RC4Crypt (this=0xb5f6f04,
    pachIn=0xab173e8 "��\003ys�\\�JHq\0068\016?,\226\006�(=�I!R\r7�-��y\024<n����\017��롽�-'\031\233\215��)\200\024h",
    pachOut=0xab173e8 "��\003ys�\\�JHq\0068\016?,\226\006�(=�I!R\r7�-��y\024<n����\017��롽�-'\031\233\215��)\200\024h", nLen=10348)
    at ../../src/RC4Encrypt.cpp:75
i = 5356
byX = 86 'V'
byY = 163 '�'
pabyState = (
    uint8 *) 0xb5f6f22 "^\227u\211\021�[\214 kO��\222�\177j8o�\210\221}\207s��:\024y�\023_J#\216e=��q��\022\030���t�|V�a��\r\026~�X\036PRW�\a�c\235\027'�n�-\004�\034K\233\002D\212fC\n���xI\0177\230�\025LU��\003�w3T\226ؤS\215\"g�\205��6\f\2---Type <return> to continue, or q <return> to quit---
25���!H���\232�F\200\231�YN;p�\234�\037��/��\220\016\006��1��\\�\032\035%��>$?�l��b�\206Z{)�\t���<&�(\031��h0rAM�Bd�\217\b\202+"...
byXorIndex = 2 '\002'
__FUNCTION__ = "RC4Crypt"
#2  0x0816654d in CEncryptedStreamSocket::CryptPrepareSendData (
    this=0xb5f6d08,
    pBuffer=0xab173e8 "��\003ys�\\�JHq\0068\016?,\226\006�(=�I!R\r7�-��y\024<n����\017��롽�-'\031\233\215��)\200\024h", nLen=10348)
    at ../../src/EncryptedStreamSocket.cpp:360
__FUNCTION__ = "CryptPrepareSendData"
#3  0x08162ae2 in CEMSocket::Send (this=0xb5f6d08,
    maxNumberOfBytesToSend=2600, minFragSize=2600,
    onlyAllowedToSendControlPacket=false) at ../../src/EMSocket.cpp:596
curPacket = (CPacket *) 0xa6352a0
bWasLongTimeSinceSend = false
lock = {m_isOk = true, m_mutex = @0xb5f7098}
anErrorHasOccured = false
sentStandardPacketBytesThisCall = 621
sentControlPacketBytesThisCall = 0
returnVal = {success = true, sentBytesStandardPackets = 0,
  sentBytesControlPackets = 0}
__FUNCTION__ = "Send"
#4  0x08107b9a in CEMSocket::SendFileAndControlData (this=0xb5f6d08,
---Type <return> to continue, or q <return> to quit---
    maxNumberOfBytesToSend=2600, minFragSize=2600) at ../../src/EMSocket.h:71
No locals.
#5  0x080f1e06 in CClientTCPSocket::SendFileAndControlData (this=0xb5f6d08,
    maxNumberOfBytesToSend=2600, overchargeMaxBytesToSend=2600)
    at ../../src/ClientTCPSocket.cpp:2124
returnStatus = {success = true, sentBytesStandardPackets = 0,
  sentBytesControlPackets = 0}
returnStatus = {success = 86, sentBytesStandardPackets = 0,
  sentBytesControlPackets = 3043312392}
#6  0x08210892 in UploadBandwidthThrottler::Entry (this=0xa482420)
    at ../../src/UploadBandwidthThrottler.cpp:434
socketSentBytes = {success = true, sentBytesStandardPackets = 0,
  sentBytesControlPackets = 0}
lastSpentBytes = 0
socket = (class ThrottledFileSocket *) 0xb5f703c
maxCounter = 71
spentBytes = 0
spentOverhead = 0
sendLock = {m_isOk = true, m_mutex = @0xa482430}
maxSlot = 161
timeSinceLastLoop = 7
minFragSize = 1300
doubleSendSize = 2600
---Type <return> to continue, or q <return> to quit---
bytesToSpend = 154112
sleepTime = 1
thisLoopTick = 2480135425
TIME_BETWEEN_UPLOAD_LOOPS = 1
lastLoopTick = 2480135425
realBytesToSpend = 154112999
allowedDataRate = 10240000
rememberedSlotCounter = 72
extraSleepTime = 1
sendLock = {m_isOk = false, m_mutex = @0x0}
#7  0xb75c3036 in wxThreadInternal::PthreadStart (thread=0xa482420)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0xa48ba68
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#8  0xb75c313d in wxPthreadStart (ptr=0xa482420)
    at ../src/unix/threadpsx.cpp:718
No locals.
#9  0xb802050f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#10 0xb72f5a0e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
---Type <return> to continue, or q <return> to quit---

Thread 1 (Thread 0xb67dc700 (LWP 20007)):
#0  0x0a90715d in ?? ()
No symbol table info available.
#1  0xb6e004af in gdk_io_invoke (source=0xb3d7e8a0,
    condition=<value optimized out>, data=0x2)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = 177238360
#2  0xb6b9e71d in g_io_unix_dispatch (source=0xb3de50e0,
    callback=0xb6e00450 <gdk_io_invoke>, user_data=0xb3dcbad0)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 0
#3  0xb6b67718 in IA__g_main_context_dispatch (context=0x9cfcf60)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#4  0xb6b6adc3 in g_main_context_iterate (context=0x9cfcf60, block=1,
    dispatch=1, self=0x9cfe510)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 0
timeout = 0
some_ready = 1
nfds = 347
allocated_nfds = <value optimized out>
---Type <return> to continue, or q <return> to quit---
fds = (GPollFD *) 0xb3be77a8
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#5  0xb6b6b2e2 in IA__g_main_loop_run (loop=0x9d5e158)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0x9cfe510
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#6  0xb6f993a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0x9d5e138
loop = (GMainLoop *) 0x9d5e158
#7  0xb77b610b in wxEventLoop::Run (this=0x9d5e138)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#8  0xb785a3dc in wxAppBase::MainLoop (this=0x9cfce18)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0x9d5e138}, m_pp = 0x9cfce58,
  m_pOld = 0x0}
#9  0xb785a131 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
No locals.
#10 0xb754f3fa in wxEntry (argc=@0xb76476cc, argv=0x9ceb480)
---Type <return> to continue, or q <return> to quit---
    at ../src/common/init.cpp:460
No locals.
#11 0xb754f4b7 in wxEntry (argc=@0xbfd602f0, argv=0xbfd60374)
    at ../src/common/init.cpp:472
No locals.
#12 0x082c0834 in main (argc=1, argv=0xb6be4460) at ../../src/amule-gui.cpp:94
No locals.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 11, 2009, 06:36:21 PM
$ ps axl | grep amule
Code: [Select]
0  1000  4931  4798  20   0   2068   528 -      R+   pts/1      0:00 grep amule
0  1000 19959 19910  20   0 218928 214220 poll  S+   pts/0      0:03 gdb amule
0  1000 20007 19959  20   0 124980 71496 ptrace Tl   pts/0     60:30 /usr/bin/amule

$ cat /proc/20007/maps
Part 1:
Code: [Select]
08048000-086de000 r-xp 00000000 08:11 15270034   /usr/bin/amule
086de000-086df000 r--p 00696000 08:11 15270034   /usr/bin/amule
086df000-0870d000 rw-p 00697000 08:11 15270034   /usr/bin/amule
0870d000-08903000 rw-p 0870d000 00:00 0
09ccf000-0bb9e000 rw-p 09ccf000 00:00 0          [heap]
b2200000-b2300000 rw-p b2200000 00:00 0
b2400000-b24fd000 rw-p b2400000 00:00 0
b24fd000-b2500000 ---p b24fd000 00:00 0
b2600000-b26ff000 rw-p b2600000 00:00 0
b26ff000-b2700000 ---p b26ff000 00:00 0
b2800000-b28fc000 rw-p b2800000 00:00 0
b28fc000-b2900000 ---p b28fc000 00:00 0
b2a00000-b2afe000 rw-p b2a00000 00:00 0
b2afe000-b2b00000 ---p b2afe000 00:00 0
b2c00000-b2d00000 rw-p b2c00000 00:00 0
b2e00000-b2f00000 rw-p b2e00000 00:00 0
b3000000-b30ff000 rw-p b3000000 00:00 0
b30ff000-b3100000 ---p b30ff000 00:00 0
b3200000-b32ff000 rw-p b3200000 00:00 0
b32ff000-b3300000 ---p b32ff000 00:00 0
b337d000-b3481000 rw-p b337d000 00:00 0
b3481000-b350a000 r--p 00000000 08:11 15392785   /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-Bold.ttf
b3700000-b37f9000 rw-p b3700000 00:00 0
b37f9000-b3800000 ---p b37f9000 00:00 0
b3800000-b38f9000 rw-p b3800000 00:00 0
b38f9000-b3900000 ---p b38f9000 00:00 0
b3900000-b3a00000 rw-p b3900000 00:00 0
b3b00000-b3c00000 rw-p b3b00000 00:00 0
b3c00000-b3cff000 rw-p b3c00000 00:00 0
b3cff000-b3d00000 ---p b3cff000 00:00 0
b3d00000-b3df6000 rw-p b3d00000 00:00 0
b3df6000-b3e00000 ---p b3df6000 00:00 0
b3e52000-b3e53000 ---p b3e52000 00:00 0
b3e53000-b4653000 rw-p b3e53000 00:00 0
b4653000-b4654000 ---p b4653000 00:00 0
b4654000-b4e54000 rw-p b4654000 00:00 0
b4e54000-b4e55000 ---p b4e54000 00:00 0
b4e55000-b5655000 rw-p b4e55000 00:00 0
b5655000-b5686000 r-xp 00000000 08:11 15271619   /usr/lib/libcroco-0.6.so.3.0.1
b5686000-b5689000 rw-p 00030000 08:11 15271619   /usr/lib/libcroco-0.6.so.3.0.1
b5689000-b56a1000 r-xp 00000000 08:11 25223171   /usr/lib/gio/modules/libgvfsdbus.so
b56a1000-b56a2000 r--p 00017000 08:11 25223171   /usr/lib/gio/modules/libgvfsdbus.so
b56a2000-b56a3000 rw-p 00018000 08:11 25223171   /usr/lib/gio/modules/libgvfsdbus.so
b56a3000-b56b0000 r-xp 00000000 08:11 15270702   /usr/lib/libgvfscommon.so.0.0.0
b56b0000-b56b1000 r--p 0000d000 08:11 15270702   /usr/lib/libgvfscommon.so.0.0.0
b56b1000-b56b2000 rw-p 0000e000 08:11 15270702   /usr/lib/libgvfscommon.so.0.0.0
b56c3000-b56f9000 r-xp 00000000 08:11 7487615    /lib/libdbus-1.so.3.4.0
b56f9000-b56fa000 r--p 00035000 08:11 7487615    /lib/libdbus-1.so.3.4.0
b56fa000-b56fb000 rw-p 00036000 08:11 7487615    /lib/libdbus-1.so.3.4.0
b5704000-b5734000 r-xp 00000000 08:11 15271251   /usr/lib/libgsf-1.so.114.0.8
b5734000-b5736000 r--p 0002f000 08:11 15271251   /usr/lib/libgsf-1.so.114.0.8
b5736000-b5737000 rw-p 00031000 08:11 15271251   /usr/lib/libgsf-1.so.114.0.8
b5737000-b5738000 rw-p b5737000 00:00 0
b5738000-b5769000 r-xp 00000000 08:11 15270040   /usr/lib/librsvg-2.so.2.22.3
b5769000-b576a000 r--p 00030000 08:11 15270040   /usr/lib/librsvg-2.so.2.22.3
b576a000-b576b000 rw-p 00031000 08:11 15270040   /usr/lib/librsvg-2.so.2.22.3
b576b000-b576d000 r-xp 00000000 08:11 7504267    /lib/tls/i686/cmov/libutil-2.8.90.so
b576d000-b576e000 r--p 00001000 08:11 7504267    /lib/tls/i686/cmov/libutil-2.8.90.so
b576e000-b576f000 rw-p 00002000 08:11 7504267    /lib/tls/i686/cmov/libutil-2.8.90.so
b577c000-b578b000 r-xp 00000000 08:11 7488081    /lib/libbz2.so.1.0.4
b578b000-b578c000 r--p 0000f000 08:11 7488081    /lib/libbz2.so.1.0.4
b578c000-b578d000 rw-p 00010000 08:11 7488081    /lib/libbz2.so.1.0.4
b579d000-b579e000 rw-p b579d000 00:00 0
b579e000-b57b5000 r--s 00000000 08:11 15344031   /usr/share/mime/mime.cache
b57b5000-b5860000 r--p 00000000 08:11 15483943   /usr/share/icons/Tangerine/icon-theme.cache
b5860000-b5964000 rw-p b5860000 00:00 0
b5964000-b59f9000 r--p 00000000 08:11 15392784   /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf
b59f9000-b59fb000 r-xp 00000000 08:11 15327946   /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
b59fb000-b59fc000 r--p 00001000 08:11 15327946   /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
b59fc000-b59fd000 rw-p 00002000 08:11 15327946   /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
b59fd000-b5a03000 r--s 00000000 08:11 19407431   /var/cache/fontconfig/945677eb7aeaf62f1d50efc3fb3ec7d8-x86.cache-2
b5a03000-b5a06000 r--s 00000000 08:11 19407381   /var/cache/fontconfig/a755afe4a08bf5b97852ceb7400b47bc-x86.cache-2
b5a06000-b5a09000 r--s 00000000 08:11 19408574   /var/cache/fontconfig/6d41288fd70b0be22e8c3a91e032eec0-x86.cache-2
b5a09000-b5a0c000 r--s 00000000 08:11 19408573   /var/cache/fontconfig/de156ccd2eddbdc19d37a45b8b2aac9c-x86.cache-2
b5a0c000-b5a14000 r--s 00000000 08:11 19408570   /var/cache/fontconfig/e3de0de479f42330eadf588a55fb5bf4-x86.cache-2
b5a14000-b5a1f000 r--s 00000000 08:11 19408583   /var/cache/fontconfig/0f34bcd4b6ee430af32735b75db7f02b-x86.cache-2
b5a1f000-b5a7f000 rw-s 00000000 00:09 2326544    /SYSV00000000 (deleted)
b5a7f000-b5adf000 rw-s 00000000 00:09 2293774    /SYSV00000000 (deleted)
b5adf000-b5afe000 r-xp 00000000 08:11 15294850   /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
b5afe000-b5aff000 r--p 0001e000 08:11 15294850   /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
b5aff000-b5b00000 rw-p 0001f000 08:11 15294850   /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
b5b00000-b5bea000 rw-p b5b00000 00:00 0
b5bea000-b5c00000 ---p b5bea000 00:00 0
b5c00000-b5c01000 r-xp 00000000 08:11 15294815   /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so
b5c01000-b5c02000 r--p 00000000 08:11 15294815   /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so
b5c02000-b5c03000 rw-p 00001000 08:11 15294815   /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so
b5c03000-b5c06000 r--s 00000000 08:11 19408582   /var/cache/fontconfig/e383d7ea5fbe662a33d9b44caf393297-x86.cache-2
b5c06000-b5c09000 r--s 00000000 08:11 19407400   /var/cache/fontconfig/6eb3985aa4124903f6ff08ba781cd364-x86.cache-2
b5c09000-b5c0c000 r--s 00000000 08:11 19408580   /var/cache/fontconfig/de9486f0b47a4d768a594cb4198cb1c6-x86.cache-2
b5c0c000-b5c13000 r--s 00000000 08:11 19406916   /var/cache/fontconfig/d52a8644073d54c13679302ca1180695-x86.cache-2
b5c13000-b5c23000 r-xp 00000000 08:11 7504263    /lib/tls/i686/cmov/libresolv-2.8.90.so
b5c23000-b5c24000 r--p 0000f000 08:11 7504263    /lib/tls/i686/cmov/libresolv-2.8.90.so
b5c24000-b5c25000 rw-p 00010000 08:11 7504263    /lib/tls/i686/cmov/libresolv-2.8.90.so
b5c25000-b5c27000 rw-p b5c25000 00:00 0
b5c27000-b5c29000 r--s 00000000 08:11 19408581   /var/cache/fontconfig/c69f04ab05004e31a6d5e715764f16d8-x86.cache-2
b5c29000-b5c2a000 r--s 00000000 08:11 19408568   /var/cache/fontconfig/4c73fe0c47614734b17d736dbde7580a-x86.cache-2
b5c2a000-b5c30000 r--s 00000000 08:11 19406910   /var/cache/fontconfig/089dead882dea3570ffc31a9898cfb69-x86.cache-2
b5c30000-b5c36000 r-xp 00000000 08:11 15294543   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-xpm.so
b5c36000-b5c37000 r--p 00005000 08:11 15294543   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-xpm.so
b5c37000-b5c38000 rw-p 00006000 08:11 15294543   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-xpm.so
b5c38000-b5c39000 ---p b5c38000 00:00 0
b5c39000-b6439000 rw-p b5c39000 00:00 0
b6439000-b643f000 r-xp 00000000 08:11 15271479   /usr/lib/libgailutil.so.18.0.1
b643f000-b6440000 r--p 00005000 08:11 15271479   /usr/lib/libgailutil.so.18.0.1
b6440000-b6441000 rw-p 00006000 08:11 15271479   /usr/lib/libgailutil.so.18.0.1
b6441000-b6470000 r-xp 00000000 08:11 15270570   /usr/lib/libgnomecanvas-2.so.0.2001.0
b6470000-b6471000 r--p 0002e000 08:11 15270570   /usr/lib/libgnomecanvas-2.so.0.2001.0
b6471000-b6472000 rw-p 0002f000 08:11 15270570   /usr/lib/libgnomecanvas-2.so.0.2001.0
b6472000-b64b0000 r-xp 00000000 08:11 15271569   /usr/lib/libgnomeprintui-2-2.so.0.1.0
b64b0000-b64b1000 r--p 0003d000 08:11 15271569   /usr/lib/libgnomeprintui-2-2.so.0.1.0
b64b1000-b64b2000 rw-p 0003e000 08:11 15271569   /usr/lib/libgnomeprintui-2-2.so.0.1.0
b64b2000-b65e7000 r-xp 00000000 08:11 15271020   /usr/lib/libxml2.so.2.6.32
b65e7000-b65e8000 ---p 00135000 08:11 15271020   /usr/lib/libxml2.so.2.6.32
b65e8000-b65ec000 r--p 00135000 08:11 15271020   /usr/lib/libxml2.so.2.6.32
b65ec000-b65ed000 rw-p 00139000 08:11 15271020   /usr/lib/libxml2.so.2.6.32
b65ed000-b65ee000 rw-p b65ed000 00:00 0
b65ee000-b6603000 r-xp 00000000 08:11 15271916   /usr/lib/libart_lgpl_2.so.2.3.20
b6603000-b6605000 rw-p 00014000 08:11 15271916   /usr/lib/libart_lgpl_2.so.2.3.20
b6605000-b666b000 r-xp 00000000 08:11 15272783   /usr/lib/libgnomeprint-2-2.so.0.1.0
b666b000-b666c000 ---p 00066000 08:11 15272783   /usr/lib/libgnomeprint-2-2.so.0.1.0
b666c000-b666d000 r--p 00066000 08:11 15272783   /usr/lib/libgnomeprint-2-2.so.0.1.0
b666d000-b666e000 rw-p 00067000 08:11 15272783   /usr/lib/libgnomeprint-2-2.so.0.1.0
b666e000-b6678000 r-xp 00000000 08:11 7504222    /lib/tls/i686/cmov/libnss_files-2.8.90.so
b6678000-b6679000 r--p 00009000 08:11 7504222    /lib/tls/i686/cmov/libnss_files-2.8.90.so
b6679000-b667a000 rw-p 0000a000 08:11 7504222    /lib/tls/i686/cmov/libnss_files-2.8.90.so
b667a000-b6683000 r-xp 00000000 08:11 7504259    /lib/tls/i686/cmov/libnss_nis-2.8.90.so
b6683000-b6684000 r--p 00008000 08:11 7504259    /lib/tls/i686/cmov/libnss_nis-2.8.90.so
b6684000-b6685000 rw-p 00009000 08:11 7504259    /lib/tls/i686/cmov/libnss_nis-2.8.90.so
b6685000-b669a000 r-xp 00000000 08:11 7504219    /lib/tls/i686/cmov/libnsl-2.8.90.so
b669a000-b669b000 r--p 00014000 08:11 7504219    /lib/tls/i686/cmov/libnsl-2.8.90.so
b669b000-b669c000 rw-p 00015000 08:11 7504219    /lib/tls/i686/cmov/libnsl-2.8.90.so
b669c000-b669e000 rw-p b669c000 00:00 0
b669e000-b66a5000 r-xp 00000000 08:11 7504220    /lib/tls/i686/cmov/libnss_compat-2.8.90.so
b66a5000-b66a6000 r--p 00006000 08:11 7504220    /lib/tls/i686/cmov/libnss_compat-2.8.90.so
b66a6000-b66a7000 rw-p 00007000 08:11 7504220    /lib/tls/i686/cmov/libnss_compat-2.8.90.so
b66a7000-b66a8000 r--s 00000000 08:11 19406911   /var/cache/fontconfig/4794a0821666d79190d59a36cb4f44b5-x86.cache-2
b66a8000-b66aa000 r--s 00000000 08:11 19407182   /var/cache/fontconfig/e13b20fdb08344e0e664864cc2ede53d-x86.cache-2
b66aa000-b66ad000 rw-s 00000000 00:09 2359313    /SYSV00000000 (deleted)
b66ad000-b66b1000 r-xp 00000000 08:11 7504221    /lib/tls/i686/cmov/libnss_dns-2.8.90.so
b66b1000-b66b2000 r--p 00003000 08:11 7504221    /lib/tls/i686/cmov/libnss_dns-2.8.90.so
b66b2000-b66b3000 rw-p 00004000 08:11 7504221    /lib/tls/i686/cmov/libnss_dns-2.8.90.so
b66b3000-b66b5000 r-xp 00000000 08:11 7487583    /lib/libnss_mdns4_minimal.so.2
b66b5000-b66b6000 rw-p 00001000 08:11 7487583    /lib/libnss_mdns4_minimal.so.2
b66b6000-b66b8000 rw-p b66b6000 00:00 0
b66b8000-b66b9000 r--p 00000000 08:11 15295427   /usr/lib/locale/nl_NL.utf8/LC_NUMERIC
b66b9000-b66ba000 r--p 00000000 08:11 15426937   /usr/lib/locale/nl_NL.utf8/LC_TIME
b66ba000-b679b000 r--p 00000000 08:11 15295674   /usr/lib/locale/nl_NL.utf8/LC_COLLATE
b679b000-b679c000 r--p 00000000 08:11 15426938   /usr/lib/locale/nl_NL.utf8/LC_MONETARY
b679c000-b679d000 r--p 00000000 08:11 15295227   /usr/lib/locale/nl_NL.utf8/LC_MESSAGES/SYS_LC_MESSAGES
b679d000-b67dc000 r--p 00000000 08:11 15295675   /usr/lib/locale/nl_NL.utf8/LC_C
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 11, 2009, 06:37:07 PM
Part 2:
Code: [Select]
TYPE
b67dc000-b67e0000 rw-p b67dc000 00:00 0
b67e0000-b67e4000 r-xp 00000000 08:11 15270153   /usr/lib/libXdmcp.so.6.0.0
b67e4000-b67e5000 rw-p 00003000 08:11 15270153   /usr/lib/libXdmcp.so.6.0.0
b67e5000-b67e7000 r-xp 00000000 08:11 15270151   /usr/lib/libXau.so.6.0.0
b67e7000-b67e8000 rw-p 00001000 08:11 15270151   /usr/lib/libXau.so.6.0.0
b67e8000-b67ee000 r-xp 00000000 08:11 15271817   /usr/lib/libxcb-render.so.0.0.0
b67ee000-b67ef000 r--p 00005000 08:11 15271817   /usr/lib/libxcb-render.so.0.0.0
b67ef000-b67f0000 rw-p 00006000 08:11 15271817   /usr/lib/libxcb-render.so.0.0.0
b67f0000-b67f3000 r-xp 00000000 08:11 15271819   /usr/lib/libxcb-render-util.so.0.0.0
b67f3000-b67f4000 r--p 00002000 08:11 15271819   /usr/lib/libxcb-render-util.so.0.0.0
b67f4000-b67f5000 rw-p 00003000 08:11 15271819   /usr/lib/libxcb-render-util.so.0.0.0
b67f5000-b67f6000 rw-p b67f5000 00:00 0
b67f6000-b6835000 r-xp 00000000 08:11 15271815   /usr/lib/libpixman-1.so.0.12.0
b6835000-b6837000 r--p 0003e000 08:11 15271815   /usr/lib/libpixman-1.so.0.12.0
b6837000-b6838000 rw-p 00040000 08:11 15271815   /usr/lib/libpixman-1.so.0.12.0
b6838000-b684f000 r-xp 00000000 08:11 15270845   /usr/lib/libxcb.so.1.0.0
b684f000-b6850000 r--p 00016000 08:11 15270845   /usr/lib/libxcb.so.1.0.0
b6850000-b6851000 rw-p 00017000 08:11 15270845   /usr/lib/libxcb.so.1.0.0
b6851000-b6852000 r-xp 00000000 08:11 15270854   /usr/lib/libxcb-xlib.so.0.0.0
b6852000-b6853000 r--p 00000000 08:11 15270854   /usr/lib/libxcb-xlib.so.0.0.0
b6853000-b6854000 rw-p 00001000 08:11 15270854   /usr/lib/libxcb-xlib.so.0.0.0
b6854000-b6869000 r-xp 00000000 08:11 15271181   /usr/lib/libICE.so.6.3.0
b6869000-b686a000 rw-p 00014000 08:11 15271181   /usr/lib/libICE.so.6.3.0
b686a000-b686c000 rw-p b686a000 00:00 0
b686c000-b6894000 r-xp 00000000 08:11 7487563    /lib/libpcre.so.3.12.1
b6894000-b6895000 r--p 00027000 08:11 7487563    /lib/libpcre.so.3.12.1
b6895000-b6896000 rw-p 00028000 08:11 7487563    /lib/libpcre.so.3.12.1
b6896000-b6897000 rw-p b6896000 00:00 0
b6897000-b68bb000 r-xp 00000000 08:11 15270076   /usr/lib/libexpat.so.1.5.2
b68bb000-b68bd000 r--p 00023000 08:11 15270076   /usr/lib/libexpat.so.1.5.2
b68bd000-b68be000 rw-p 00025000 08:11 15270076   /usr/lib/libexpat.so.1.5.2
b68be000-b68d6000 r-xp 00000000 08:11 7487527    /lib/libselinux.so.1
b68d6000-b68d7000 r--p 00017000 08:11 7487527    /lib/libselinux.so.1
b68d7000-b68d8000 rw-p 00018000 08:11 7487527    /lib/libselinux.so.1
b68d8000-b68e0000 r-xp 00000000 08:11 15271224   /usr/lib/libXcursor.so.1.0.2
b68e0000-b68e1000 rw-p 00007000 08:11 15271224   /usr/lib/libXcursor.so.1.0.2
b68e1000-b68e6000 r-xp 00000000 08:11 15271241   /usr/lib/libXrandr.so.2.1.0
b68e6000-b68e7000 r--p 00005000 08:11 15271241   /usr/lib/libXrandr.so.2.1.0
b68e7000-b68e8000 rw-p 00006000 08:11 15271241   /usr/lib/libXrandr.so.2.1.0
b68e8000-b68f0000 r-xp 00000000 08:11 15270301   /usr/lib/libXi.so.6.0.0
b68f0000-b68f1000 r--p 00007000 08:11 15270301   /usr/lib/libXi.so.6.0.0
b68f1000-b68f2000 rw-p 00008000 08:11 15270301   /usr/lib/libXi.so.6.0.0
b68f2000-b68f3000 rw-p b68f2000 00:00 0
b68f3000-b68fb000 r-xp 00000000 08:11 15270900   /usr/lib/libXrender.so.1.3.0
b68fb000-b68fc000 r--p 00007000 08:11 15270900   /usr/lib/libXrender.so.1.3.0
b68fc000-b68fd000 rw-p 00008000 08:11 15270900   /usr/lib/libXrender.so.1.3.0
b68fd000-b690a000 r-xp 00000000 08:11 15270035   /usr/lib/libXext.so.6.4.0
b690a000-b690c000 rw-p 0000c000 08:11 15270035   /usr/lib/libXext.so.6.4.0
b690c000-b697c000 r-xp 00000000 08:11 15271821   /usr/lib/libcairo.so.2.10800.0
b697c000-b697e000 r--p 0006f000 08:11 15271821   /usr/lib/libcairo.so.2.10800.0
b697e000-b697f000 rw-p 00071000 08:11 15271821   /usr/lib/libcairo.so.2.10800.0
b697f000-b6983000 r-xp 00000000 08:11 15271234   /usr/lib/libXfixes.so.3.1.0
b6983000-b6984000 rw-p 00003000 08:11 15271234   /usr/lib/libXfixes.so.3.1.0
b6984000-b6986000 r-xp 00000000 08:11 15271221   /usr/lib/libXdamage.so.1.1.0
b6986000-b6987000 rw-p 00001000 08:11 15271221   /usr/lib/libXdamage.so.1.1.0
b6987000-b6988000 rw-p b6987000 00:00 0
b6988000-b698a000 r-xp 00000000 08:11 15271890   /usr/lib/libXcomposite.so.1.0.0
b698a000-b698b000 r--p 00001000 08:11 15271890   /usr/lib/libXcomposite.so.1.0.0
b698b000-b698c000 rw-p 00002000 08:11 15271890   /usr/lib/libXcomposite.so.1.0.0
b698c000-b6a77000 r-xp 00000000 08:11 15270878   /usr/lib/libX11.so.6.2.0
b6a77000-b6a78000 r--p 000ea000 08:11 15270878   /usr/lib/libX11.so.6.2.0
b6a78000-b6a7a000 rw-p 000eb000 08:11 15270878   /usr/lib/libX11.so.6.2.0
b6a7a000-b6a7b000 rw-p b6a7a000 00:00 0
b6a7b000-b6a84000 r-xp 00000000 08:11 15271988   /usr/lib/libpangocairo-1.0.so.0.2202.0
b6a84000-b6a85000 r--p 00008000 08:11 15271988   /usr/lib/libpangocairo-1.0.so.0.2202.0
b6a85000-b6a86000 rw-p 00009000 08:11 15271988   /usr/lib/libpangocairo-1.0.so.0.2202.0
b6a86000-b6ad8000 r-xp 00000000 08:11 15271453   /usr/lib/libtiff.so.4.2.1
b6ad8000-b6ada000 r--p 00052000 08:11 15271453   /usr/lib/libtiff.so.4.2.1
b6ada000-b6adb000 rw-p 00054000 08:11 15271453   /usr/lib/libtiff.so.4.2.1
b6adb000-b6adc000 rw-p b6adb000 00:00 0
b6adc000-b6afb000 r-xp 00000000 08:11 15271751   /usr/lib/libjpeg.so.62.0.0
b6afb000-b6afc000 rw-p 0001e000 08:11 15271751   /usr/lib/libjpeg.so.62.0.0
b6afc000-b6b20000 r-xp 00000000 08:11 15271301   /usr/lib/libpng12.so.0.27.0
b6b20000-b6b21000 r--p 00023000 08:11 15271301   /usr/lib/libpng12.so.0.27.0
b6b21000-b6b22000 rw-p 00024000 08:11 15271301   /usr/lib/libpng12.so.0.27.0
b6b22000-b6b29000 r-xp 00000000 08:11 15270840   /usr/lib/libSM.so.6.0.0
b6b29000-b6b2a000 r--p 00006000 08:11 15270840   /usr/lib/libSM.so.6.0.0
b6b2a000-b6b2b000 rw-p 00007000 08:11 15270840   /usr/lib/libSM.so.6.0.0
b6b2b000-b6b2d000 r-xp 00000000 08:11 15271225   /usr/lib/libXinerama.so.1.0.0
b6b2d000-b6b2e000 rw-p 00001000 08:11 15271225   /usr/lib/libXinerama.so.1.0.0
b6b2e000-b6be3000 r-xp 00000000 08:11 15271534   /usr/lib/libglib-2.0.so.0.1800.2
b6be3000-b6be4000 r--p 000b4000 08:11 15271534   /usr/lib/libglib-2.0.so.0.1800.2
b6be4000-b6be5000 rw-p 000b5000 08:11 15271534   /usr/lib/libglib-2.0.so.0.1800.2
b6be5000-b6bec000 r-xp 00000000 08:11 7504264    /lib/tls/i686/cmov/librt-2.8.90.so
b6bec000-b6bed000 r--p 00007000 08:11 7504264    /lib/tls/i686/cmov/librt-2.8.90.so
b6bed000-b6bee000 rw-p 00008000 08:11 7504264    /lib/tls/i686/cmov/librt-2.8.90.so
b6bee000-b6bef000 rw-p b6bee000 00:00 0
b6bef000-b6bf3000 r-xp 00000000 08:11 15271550   /usr/lib/libgthread-2.0.so.0.1800.2
b6bf3000-b6bf4000 r--p 00003000 08:11 15271550   /usr/lib/libgthread-2.0.so.0.1800.2
b6bf4000-b6bf5000 rw-p 00004000 08:11 15271550   /usr/lib/libgthread-2.0.so.0.1800.2
b6bf5000-b6bf8000 r-xp 00000000 08:11 15271540   /usr/lib/libgmodule-2.0.so.0.1800.2
b6bf8000-b6bf9000 r--p 00002000 08:11 15271540   /usr/lib/libgmodule-2.0.so.0.1800.2
b6bf9000-b6bfa000 rw-p 00003000 08:11 15271540   /usr/lib/libgmodule-2.0.so.0.1800.2
b6bfa000-b6c36000 r-xp 00000000 08:11 15271542   /usr/lib/libgobject-2.0.so.0.1800.2
b6c36000-b6c37000 r--p 0003b000 08:11 15271542   /usr/lib/libgobject-2.0.so.0.1800.2
b6c37000-b6c38000 rw-p 0003c000 08:11 15271542   /usr/lib/libgobject-2.0.so.0.1800.2
b6c38000-b6c63000 r-xp 00000000 08:11 15270073   /usr/lib/libfontconfig.so.1.3.0
b6c63000-b6c64000 r--p 0002a000 08:11 15270073   /usr/lib/libfontconfig.so.1.3.0
b6c64000-b6c65000 rw-p 0002b000 08:11 15270073   /usr/lib/libfontconfig.so.1.3.0
b6c65000-b6cd6000 r-xp 00000000 08:11 15270721   /usr/lib/libfreetype.so.6.3.18
b6cd6000-b6cda000 r--p 00070000 08:11 15270721   /usr/lib/libfreetype.so.6.3.18
b6cda000-b6cdb000 rw-p 00074000 08:11 15270721   /usr/lib/libfreetype.so.6.3.18
b6cdb000-b6d1b000 r-xp 00000000 08:11 15271329   /usr/lib/libpango-1.0.so.0.2202.0
b6d1b000-b6d1c000 ---p 00040000 08:11 15271329   /usr/lib/libpango-1.0.so.0.2202.0
b6d1c000-b6d1d000 r--p 00040000 08:11 15271329   /usr/lib/libpango-1.0.so.0.2202.0
b6d1d000-b6d1e000 rw-p 00041000 08:11 15271329   /usr/lib/libpango-1.0.so.0.2202.0
b6d1e000-b6d1f000 rw-p b6d1e000 00:00 0
b6d1f000-b6d84000 r-xp 00000000 08:11 15271504   /usr/lib/libgio-2.0.so.0.1800.2
b6d84000-b6d85000 ---p 00065000 08:11 15271504   /usr/lib/libgio-2.0.so.0.1800.2
b6d85000-b6d86000 r--p 00065000 08:11 15271504   /usr/lib/libgio-2.0.so.0.1800.2
b6d86000-b6d87000 rw-p 00066000 08:11 15271504   /usr/lib/libgio-2.0.so.0.1800.2
b6d87000-b6d9f000 r-xp 00000000 08:11 15271669   /usr/lib/libgdk_pixbuf-2.0.so.0.1400.4
b6d9f000-b6da0000 r--p 00017000 08:11 15271669   /usr/lib/libgdk_pixbuf-2.0.so.0.1400.4
b6da0000-b6da1000 rw-p 00018000 08:11 15271669   /usr/lib/libgdk_pixbuf-2.0.so.0.1400.4
b6da1000-b6dc7000 r-xp 00000000 08:11 15271989   /usr/lib/libpangoft2-1.0.so.0.2202.0
b6dc7000-b6dc8000 r--p 00025000 08:11 15271989   /usr/lib/libpangoft2-1.0.so.0.2202.0
b6dc8000-b6dc9000 rw-p 00026000 08:11 15271989   /usr/lib/libpangoft2-1.0.so.0.2202.0
b6dc9000-b6de2000 r-xp 00000000 08:11 15270990   /usr/lib/libatk-1.0.so.0.2409.1
b6de2000-b6de4000 r--p 00018000 08:11 15270990   /usr/lib/libatk-1.0.so.0.2409.1
b6de4000-b6de5000 rw-p 0001a000 08:11 15270990   /usr/lib/libatk-1.0.so.0.2409.1
b6de5000-b6e6d000 r-xp 00000000 08:11 15271567   /usr/lib/libgdk-x11-2.0.so.0.1400.4
b6e6d000-b6e6e000 ---p 00088000 08:11 15271567   /usr/lib/libgdk-x11-2.0.so.0.1400.4
b6e6e000-b6e70000 r--p 00088000 08:11 15271567   /usr/lib/libgdk-x11-2.0.so.0.1400.4
b6e70000-b6e71000 rw-p 0008a000 08:11 15271567   /usr/lib/libgdk-x11-2.0.so.0.1400.4
b6e71000-b6e72000 rw-p b6e71000 00:00 0
b6e72000-b7207000 r-xp 00000000 08:11 15271671   /usr/lib/libgtk-x11-2.0.so.0.1400.4
b7207000-b7208000 ---p 00395000 08:11 15271671   /usr/lib/libgtk-x11-2.0.so.0.1400.4
b7208000-b720c000 r--p 00395000 08:11 15271671   /usr/lib/libgtk-x11-2.0.so.0.1400.4
b720c000-b720e000 rw-p 00399000 08:11 15271671   /usr/lib/libgtk-x11-2.0.so.0.1400.4
b720e000-b7210000 rw-p b720e000 00:00 0
b7210000-b7212000 r-xp 00000000 08:11 7504213    /lib/tls/i686/cmov/libdl-2.8.90.so
b7212000-b7213000 r--p 00001000 08:11 7504213    /lib/tls/i686/cmov/libdl-2.8.90.so
b7213000-b7214000 rw-p 00002000 08:11 7504213    /lib/tls/i686/cmov/libdl-2.8.90.so
b7214000-b736c000 r-xp 00000000 08:11 7504210    /lib/tls/i686/cmov/libc-2.8.90.so
b736c000-b736e000 r--p 00158000 08:11 7504210    /lib/tls/i686/cmov/libc-2.8.90.so
b736e000-b736f000 rw-p 0015a000 08:11 7504210    /lib/tls/i686/cmov/libc-2.8.90.so
b736f000-b7372000 rw-p b736f000 00:00 0
b7372000-b737f000 r-xp 00000000 08:11 7487509    /lib/libgcc_s.so.1
b737f000-b7380000 r--p 0000c000 08:11 7487509    /lib/libgcc_s.so.1
b7380000-b7381000 rw-p 0000d000 08:11 7487509    /lib/libgcc_s.so.1
b7381000-b73a5000 r-xp 00000000 08:11 7504214    /lib/tls/i686/cmov/libm-2.8.90.so
b73a5000-b73a6000 r--p 00023000 08:11 7504214    /lib/tls/i686/cmov/libm-2.8.90.so
b73a6000-b73a7000 rw-p 00024000 08:11 7504214    /lib/tls/i686/cmov/libm-2.8.90.so
b73a7000-b73a8000 rw-p b73a7000 00:00 0
b73a8000-b748b000 r-xp 00000000 08:11 15271202   /usr/lib/libstdc++.so.6.0.10
b748b000-b748f000 r--p 000e3000 08:11 15271202   /usr/lib/libstdc++.so.6.0.10
b748f000-b7490000 rw-p 000e7000 08:11 15271202   /usr/lib/libstdc++.so.6.0.10
b7490000-b7496000 rw-p b7490000 00:00 0
b7496000-b74bc000 r-xp 00000000 08:11 15271167   /usr/lib/libGeoIP.so.1.4.4
b74bc000-b74bd000 r--p 00025000 08:11 15271167   /usr/lib/libGeoIP.so.1.4.4
b74bd000-b74be000 rw-p 00026000 08:11 15271167   /usr/lib/libGeoIP.so.1.4.4
b74be000-b763c000 r-xp 00000000 08:11 15272509   /usr/lib/libwx_baseud-2.8.so.0.5.0
b763c000-b7640000 r--p 0017d000 08:11 15272509   /usr/lib/libwx_baseud-2.8.so.0.5.0
b7640000-b7642000 rw-p 00181000 08:11 15272509   /usr/lib/libwx_baseud-2.8.so.0.5.0
b7642000-b764a000 rw-p b7642000 00:00 0
b764a000-b7677000 r-xp 00000000 08:11 15272510   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b7677000-b7678000 ---p 0002d000 08:11 15272510   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b7678000-b7679000 r--p 0002d000 08:11 15272510   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b7679000-b767a000 rw-p 0002e000 08:11 15272510   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b767a000-b79f5000 r-xp 00000000 08:11 15271028   /usr/lib/libwx_gtk2ud_core-2.8.so.0.5.0
b79f5000-b7a1c000 r--p 0037a000 08:11 15271028   /usr/lib/libwx_gtk2ud_core-2.8.so.0.5.0
b7a1c000-b7a21000 rw-p 003a1000 08:11 15271028   /usr/lib/libwx_gtk2ud_core-2.8.so.0.5.0
b7a21000-b7a28000 rw-p b7a21000 00:00 0
b7a28000-b7ae9000 r-xp 00000000 08:11 15270699   /usr/lib/libwx_gtk2ud_adv-2.8.so.0.5.0
b7ae9000-b7af1000 r--p 000c1000 08:11 15270699   /usr/lib/libwx_gtk2ud_adv-2.8.so.0.5.0
b7af1000-b7af2000 rw-p 000c9000 08:11 15270699   /usr/lib/libwx_gtk2ud_adv-2.8.so.0.5.0
b7af2000-b7af4000 rw-p b7af2000 00:00 0
b7af4000-b7afc000 r-xp 00000000 08:11 15269911   /usr/lib/libixml.so.2.0.4
b7afc000-b7afd000 r--p 00007000 08:11 15269911   /usr/lib/libixml.so.2.0.4
b7afd000-b7afe000 rw-p 00008000 08:11 15269911   /usr/lib/libixml.so.2.0.4
b7afe000-b7b02000 r-xp 00000000 08:11 15269967   /usr/lib/libthreadutil.so.2.2.3
b7b02000-b7b03000 r--p 00003000 08:11 15269967   /usr/lib/libthreadutil.so.2.2.3
b7b03000-b7b04000 rw-p 00004000 08:11 15269967   /usr/lib/libthreadutil.so.2.2.3
b7b04000-b7b1e000 r-xp 00000000 08:11 15270052   /usr/lib/libupnp.so.3.0.5
b7b1e000-b7b1f000 r--p 00019000 08:11 15270052   /usr/lib/libupnp.so.3.0.5
b7b1f000-b7b20000 rw-p 0001a000 08:11 15270052   /usr/lib/libupnp.so.3.0.5
b7b20000-b7b21000 rw-p b7b20000 00:00 0
b7b21000-b7edc000 r-xp 00000000 08:11 15271308   /usr/lib/libcrypto++.so.7.0.0
b7edc000-b7f11000 r--p 003bb000 08:11 15271308   /usr/lib/libcrypto++.so.7.0.0
b7f11000-b7f14000 rw-p 003f0000 08:11 15271308   /usr/lib/libcrypto++.so.7.0.0
b7f14000-b7f17000 rw-p b7f14000 00:00 0
b7f17000-b7f2b000 r-xp 00000000 08:11 15270039   /usr/lib/libz.so.1.2.3.3
b7f2b000-b7f2d000 rw-p 00013000 08:11 15270039   /usr/lib/libz.so.1.2.3.3
b7f2d000-b7f2e000 rw-p b7f2d000 00:00 0
b7f2e000-b800a000 r-xp 00000000 08:11 15272892   /usr/lib/libbfd-2.18.93.20081009.so
b800a000-b8014000 r--p 000dc000 08:11 15272892   /usr/lib/libbfd-2.18.93.20081009.so
b8014000-b8016000 rw-p 000e6000 08:11 15272892   /usr/lib/libbfd-2.18.93.20081009.so
b8016000-b801a000 rw-p b8016000 00:00 0
b801a000-b802f000 r-xp 00000000 08:11 7504262    /lib/tls/i686/cmov/libpthread-2.8.90.so
b802f000-b8030000 r--p 00014000 08:11 7504262    /lib/tls/i686/cmov/libpthread-2.8.90.so
b8030000-b8031000 rw-p 00015000 08:11 7504262    /lib/tls/i686/cmov/libpthread-2.8.90.so
b8031000-b8033000 rw-p b8031000 00:00 0
b8033000-b8034000 r--p 00000000 08:11 15295681   /usr/lib/locale/nl_NL.utf8/LC_PAPER
b8034000-b8035000 r--p 00000000 08:11 15295426   /usr/lib/locale/nl_NL.utf8/LC_NAME
b8035000-b8036000 r--p 00000000 08:11 15426939   /usr/lib/locale/nl_NL.utf8/LC_ADDRESS
b8036000-b8037000 r--p 00000000 08:11 15426940   /usr/lib/locale/nl_NL.utf8/LC_TELEPHONE
b8037000-b8038000 r--p 00000000 08:11 15295677   /usr/lib/locale/nl_NL.utf8/LC_MEASUREMENT
b8038000-b8039000 r--p 00000000 08:11 15426941   /usr/lib/locale/nl_NL.utf8/LC_IDENTIFICATION
b8039000-b803b000 r-xp 00000000 08:11 15278949   /usr/lib/gconv/UTF-32.so
b803b000-b803c000 r--p 00001000 08:11 15278949   /usr/lib/gconv/UTF-32.so
b803c000-b803d000 rw-p 00002000 08:11 15278949   /usr/lib/gconv/UTF-32.so
b803d000-b8044000 r--s 00000000 08:11 15278953   /usr/lib/gconv/gconv-modules.cache
b8044000-b8046000 rw-p b8044000 00:00 0
b8046000-b8060000 r-xp 00000000 08:11 7487687    /lib/ld-2.8.90.so
b8060000-b8061000 r-xp b8060000 00:00 0          [vdso]
b8061000-b8062000 r--p 0001a000 08:11 7487687    /lib/ld-2.8.90.so
b8062000-b8063000 rw-p 0001b000 08:11 7487687    /lib/ld-2.8.90.so
bfd46000-bfd62000 rw-p bffe4000 00:00 0          [stack]
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 11, 2009, 10:14:09 PM
Are backtraces like this one still of use?
The 2.2.3 crashes where addressed in 2.2.4, right?
So that analyzing further crashes requires bt obtained from crashes by 2.2.4, right?

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb6793700 (LWP 6132)]
0xb776ebfd in _GSocket_GDK_Input (data=0xb4db6e0, source=142, condition=3)
    at ../src/gtk/gsockgtk.cpp:34
34   ../src/gtk/gsockgtk.cpp: No such file or directory.
   in ../src/gtk/gsockgtk.cpp

$ ps axl | grep amule
Code: [Select]
0  1000  3287  3242  20   0   3236   608 sync_p D+   pts/1      0:00 grep amule
0  1000  6118  6034  20   0 205576 199340 poll  S+   pts/0      0:03 gdb amule
0  1000  6132  6118  20   0 132760 78156 ptrace Tl   pts/0    178:35 /usr/bin/amule

(gdb) bt
Code: [Select]
#0  0xb776ebfd in _GSocket_GDK_Input (data=0xb4db6e0, source=142, condition=3)
    at ../src/gtk/gsockgtk.cpp:34
#1  0xb6db74af in gdk_io_invoke (source=0xafde048,
    condition=<value optimized out>, data=0xb0d5108)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
#2  0xb6b5571d in g_io_unix_dispatch (source=0xb3d79f0,
    callback=0xb6db7450 <gdk_io_invoke>, user_data=0xb0d5108)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
#3  0xb6b1e718 in IA__g_main_context_dispatch (context=0xa7eef60)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
#4  0xb6b21dc3 in g_main_context_iterate (context=0xa7eef60, block=1,
    dispatch=1, self=0xa7f0510)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
#5  0xb6b222e2 in IA__g_main_loop_run (loop=0xb5a00f68)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
#6  0xb6f503a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
#7  0xb776d10b in wxEventLoop::Run (this=0xb5a007f0)
    at ../src/gtk/evtloop.cpp:76
#8  0xb78113dc in wxAppBase::MainLoop (this=0xa7eee18)
    at ../src/common/appcmn.cpp:312
#9  0xb7811131 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
#10 0xb75063fa in wxEntry (argc=@0xb75fe6cc, argv=0xa7dd480)
---Type <return> to continue, or q <return> to quit---
    at ../src/common/init.cpp:460
#11 0xb75064b7 in wxEntry (argc=@0xbf816db0, argv=0xbf816e34)
    at ../src/common/init.cpp:472
#12 0x082c0834 in main (argc=1, argv=0xb6b9b460) at ../../src/amule-gui.cpp:94

(gdb) bt full
Code: [Select]
#0  0xb776ebfd in _GSocket_GDK_Input (data=0xb4db6e0, source=142, condition=3)
    at ../src/gtk/gsockgtk.cpp:34
No locals.
#1  0xb6db74af in gdk_io_invoke (source=0xafde048,
    condition=<value optimized out>, data=0xb0d5108)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = 3
#2  0xb6b5571d in g_io_unix_dispatch (source=0xb3d79f0,
    callback=0xb6db7450 <gdk_io_invoke>, user_data=0xb0d5108)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 0
#3  0xb6b1e718 in IA__g_main_context_dispatch (context=0xa7eef60)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#4  0xb6b21dc3 in g_main_context_iterate (context=0xa7eef60, block=1,
    dispatch=1, self=0xa7f0510)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 0
timeout = 0
some_ready = 1
nfds = 359
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xc1e8258
---Type <return> to continue, or q <return> to quit---
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#5  0xb6b222e2 in IA__g_main_loop_run (loop=0xb5a00f68)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0xa7f0510
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#6  0xb6f503a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0xb5a007f0
loop = (GMainLoop *) 0xb5a00f68
#7  0xb776d10b in wxEventLoop::Run (this=0xb5a007f0)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#8  0xb78113dc in wxAppBase::MainLoop (this=0xa7eee18)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0xb5a007f0}, m_pp = 0xa7eee58,
  m_pOld = 0x0}
#9  0xb7811131 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
No locals.
#10 0xb75063fa in wxEntry (argc=@0xb75fe6cc, argv=0xa7dd480)
    at ../src/common/init.cpp:460
---Type <return> to continue, or q <return> to quit---
No locals.
#11 0xb75064b7 in wxEntry (argc=@0xbf816db0, argv=0xbf816e34)
    at ../src/common/init.cpp:472
No locals.
#12 0x082c0834 in main (argc=1, argv=0xb6b9b460) at ../../src/amule-gui.cpp:94
No locals.

(gdb) thread apply all bt full
Code: [Select]
Thread 5 (Thread 0xb460ab90 (LWP 6174)):
#0  0xb8017430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7fdb3a2 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
   from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0xb75776e1 in wxConditionInternal::WaitTimeout (this=0xa850258,
    milliseconds=100) at ../src/unix/threadpsx.cpp:405
tspec = {tv_sec = 1239477661, tv_nsec = 592000000}
err = <value optimized out>
#3  0xb757776a in wxCondition::WaitTimeout (this=0xa850224, milliseconds=100)
    at ../include/wx/thrimpl.cpp:256
__FUNCTION__ = "WaitTimeout"
#4  0xb7579524 in wxSemaphoreInternal::WaitTimeout (this=0xa850220,
    milliseconds=100) at ../src/unix/threadpsx.cpp:552
remainingTime = -516
locker = {m_isOk = true, m_mutex = @0xa850220}
#5  0xb75795aa in wxSemaphore::WaitTimeout (this=0xb122850, milliseconds=100)
    at ../include/wx/thrimpl.cpp:320
__FUNCTION__ = "WaitTimeout"
#6  0x0840b770 in CTimerThread::Entry (this=0xb122830)
    at ../../src/Timer.cpp:64
---Type <return> to continue, or q <return> to quit---
now = 2527080244
sinceLast = 0
timeout = 100
evt = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x85efd88,
      static ms_classInfo = {m_className = 0xb75ab1a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7aa88cc, m_next = 0xb75ff8c4,
        static sm_classTable = 0xa7c13e8}, m_refData = 0x0},
    m_eventObject = 0x0, m_eventType = 10244, m_timeStamp = 0, m_id = 6128,
    m_callbackUserData = 0x0, m_propagationLevel = 0, m_skipped = false,
    m_isCommandEvent = false, static ms_classInfo = {m_className = 0xb75bc708,
      m_objectSize = 36, m_objectConstructor = 0, m_baseInfo1 = 0xb75ff858,
      m_baseInfo2 = 0x0, static sm_first = 0xb7aa88cc, m_next = 0xb7600908,
      static sm_classTable = 0xa7c13e8}}, <No data fields>}
lastEvent = 2527080244
#7  0xb757a036 in wxThreadInternal::PthreadStart (thread=0xb122830)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0xa85dc38
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#8  0xb757a13d in wxPthreadStart (ptr=0xb122830)
    at ../src/unix/threadpsx.cpp:718
---Type <return> to continue, or q <return> to quit---
No locals.
#9  0xb7fd750f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#10 0xb72aca0e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 3 (Thread 0xb560cb90 (LWP 6171)):
#0  0xb8017430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7fde906 in nanosleep () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0xb7581168 in wxMicroSleep (microseconds=0) at ../src/unix/utilsunx.cpp:191
tmReq = {tv_sec = 0, tv_nsec = 19000000}
#3  0xb7581191 in wxMilliSleep (milliseconds=19)
    at ../src/unix/utilsunx.cpp:212
No locals.
#4  0xb757741d in wxThread::Sleep (milliseconds=19)
    at ../src/unix/threadpsx.cpp:986
No locals.
#5  0x0820fd22 in UploadBandwidthThrottler::Entry (this=0xaf78e00)
    at ../../src/UploadBandwidthThrottler.cpp:320
timeSinceLastLoop = 6
minFragSize = 1300
---Type <return> to continue, or q <return> to quit---
doubleSendSize = 2600
bytesToSpend = 138240
sleepTime = 25
thisLoopTick = 2527080301
TIME_BETWEEN_UPLOAD_LOOPS = 1
lastLoopTick = 2527080301
realBytesToSpend = 87040999
allowedDataRate = 10240000
rememberedSlotCounter = 1
extraSleepTime = 25
sendLock = {m_isOk = false, m_mutex = @0xb7fe6ff4}
#6  0xb757a036 in wxThreadInternal::PthreadStart (thread=0xaf78e00)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0xaf5c200
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#7  0xb757a13d in wxPthreadStart (ptr=0xaf78e00)
    at ../src/unix/threadpsx.cpp:718
No locals.
#8  0xb7fd750f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#9  0xb72aca0e in clone () from /lib/tls/i686/cmov/libc.so.6
---Type <return> to continue, or q <return> to quit---
No symbol table info available.

Thread 1 (Thread 0xb6793700 (LWP 6132)):
#0  0xb776ebfd in _GSocket_GDK_Input (data=0xb4db6e0, source=142, condition=3)
    at ../src/gtk/gsockgtk.cpp:34
No locals.
#1  0xb6db74af in gdk_io_invoke (source=0xafde048,
    condition=<value optimized out>, data=0xb0d5108)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = 3
#2  0xb6b5571d in g_io_unix_dispatch (source=0xb3d79f0,
    callback=0xb6db7450 <gdk_io_invoke>, user_data=0xb0d5108)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 0
#3  0xb6b1e718 in IA__g_main_context_dispatch (context=0xa7eef60)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#4  0xb6b21dc3 in g_main_context_iterate (context=0xa7eef60, block=1,
    dispatch=1, self=0xa7f0510)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 0
timeout = 0
some_ready = 1
---Type <return> to continue, or q <return> to quit---
nfds = 359
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xc1e8258
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#5  0xb6b222e2 in IA__g_main_loop_run (loop=0xb5a00f68)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0xa7f0510
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#6  0xb6f503a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0xb5a007f0
loop = (GMainLoop *) 0xb5a00f68
#7  0xb776d10b in wxEventLoop::Run (this=0xb5a007f0)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#8  0xb78113dc in wxAppBase::MainLoop (this=0xa7eee18)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0xb5a007f0}, m_pp = 0xa7eee58,
  m_pOld = 0x0}
#9  0xb7811131 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
---Type <return> to continue, or q <return> to quit---
No locals.
#10 0xb75063fa in wxEntry (argc=@0xb75fe6cc, argv=0xa7dd480)
    at ../src/common/init.cpp:460
No locals.
#11 0xb75064b7 in wxEntry (argc=@0xbf816db0, argv=0xbf816e34)
    at ../src/common/init.cpp:472
No locals.
#12 0x082c0834 in main (argc=1, argv=0xb6b9b460) at ../../src/amule-gui.cpp:94
No locals.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 12, 2009, 07:10:49 AM
aMule crashes more often now.
Another high VSZ - SIGABRT crash:

$ ps axl | grep amule
Code: [Select]
0  1000  4785  4755  20   0 202268 51380 poll   S+   pts/0      0:03 gdb amule
0  1000  4800  4785  20   0 3145724 1030660 ptrace Tl pts/0   209:41 /usr/bin/amule
0  1000 16370 16309  20   0   3240   808 pipe_w S+   pts/1      0:00 grep amule

Terminated after throwing an instance of 'std::bad_alloc'
   what(): std::bad_alloc
* Could not get symbol names for backtrace
   backtrace:


Program received signal SIGABRT, Aborted.
[Switching to Thread 0xb66cf700 (LWP 4800)]
0xb7f53430 in __kernel_vsyscall ()

(gdb) bt
Code: [Select]
#0  0xb7f53430 in __kernel_vsyscall ()
#1  0xb71328a0 in raise () from /lib/tls/i686/cmov/libc.so.6
#2  0xb7134268 in abort () from /lib/tls/i686/cmov/libc.so.6
#3  0x08411c19 in OnUnhandledException ()
    at ../../../../src/libs/common/MuleDebug.cpp:103
#4  0xb7355655 in __cxxabiv1::__terminate (
    handler=0x84118a8 <OnUnhandledException()>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
#5  0xb7355692 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
#6  0xb73557ca in __cxa_throw (obj=0xb73848f0, tinfo=0x8712c8c,
    dest=0xb7355d00 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
#7  0xb7355e23 in operator new (sz=44)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
#8  0xb755c0e9 in wxSocketEvent::Clone (this=0xbfb54590)
    at ../include/wx/socket.h:314
#9  0xb74b7bb5 in wxEvtHandler::AddPendingEvent (this=0x8715600,
    event=@0xbfb54590) at ../src/common/event.cpp:1130
#10 0xb755bd58 in wxSocketBase::OnRequest (this=0xa43df98,
    notification=wxSOCKET_INPUT) at ../src/common/socket.cpp:1006
#11 0xb755be54 in wx_socket_callback (notification=GSOCK_INPUT,
    cdata=0xa43df98 "��O\b") at ../src/common/socket.cpp:942
---Type <return> to continue, or q <return> to quit---
#12 0xb756083e in GSocket::Detected_Read (this=0x9d54520)
    at ../src/unix/gsocket.cpp:1785
#13 0xb76aac00 in _GSocket_GDK_Input (data=0x9d54520, source=72, condition=3)
    at ../src/gtk/gsockgtk.cpp:34
#14 0xb6cf34af in gdk_io_invoke (source=0xb5ae9fa8,
    condition=<value optimized out>, data=0xb3088130)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
#15 0xb6a9171d in g_io_unix_dispatch (source=0xb5ae9f60,
    callback=0xb6cf3450 <gdk_io_invoke>, user_data=0xb3088130)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
#16 0xb6a5a718 in IA__g_main_context_dispatch (context=0x90c5f60)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
#17 0xb6a5ddc3 in g_main_context_iterate (context=0x90c5f60, block=1,
    dispatch=1, self=0x90c7510)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
#18 0xb6a5e2e2 in IA__g_main_loop_run (loop=0xb5a03a40)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
#19 0xb6e8c3a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
#20 0xb76a910b in wxEventLoop::Run (this=0xb5a03a20)
    at ../src/gtk/evtloop.cpp:76
#21 0xb774d3dc in wxAppBase::MainLoop (this=0x90c5e18)
    at ../src/common/appcmn.cpp:312
---Type <return> to continue, or q <return> to quit---
#22 0xb774d131 in wxAppBase::OnRun (this=0x6) at ../src/common/appcmn.cpp:367
#23 0xb74423fa in wxEntry (argc=@0xb753a6cc, argv=0x90b4480)
    at ../src/common/init.cpp:460
#24 0xb74424b7 in wxEntry (argc=@0xbfb548f0, argv=0xbfb54974)
    at ../src/common/init.cpp:472
#25 0x082c0834 in main (argc=0, argv=0x0) at ../../src/amule-gui.cpp:94

(gdb) bt full
Code: [Select]
#0  0xb7f53430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb71328a0 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0xb7134268 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0x08411c19 in OnUnhandledException ()
    at ../../../../src/libs/common/MuleDebug.cpp:103
t = (class std::type_info *) 0x8712c8c
output = (FILE *) 0xb7261560
#4  0xb7355655 in __cxxabiv1::__terminate (
    handler=0x84118a8 <OnUnhandledException()>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
No locals.
#5  0xb7355692 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
No locals.
#6  0xb73557ca in __cxa_throw (obj=0xb73848f0, tinfo=0x8712c8c,
    dest=0xb7355d00 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
header = <value optimized out>
#7  0xb7355e23 in operator new (sz=44)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
---Type <return> to continue, or q <return> to quit---
handler = <value optimized out>
p = <value optimized out>
#8  0xb755c0e9 in wxSocketEvent::Clone (this=0xbfb54590)
    at ../include/wx/socket.h:314
No locals.
#9  0xb74b7bb5 in wxEvtHandler::AddPendingEvent (this=0x8715600,
    event=@0xbfb54590) at ../src/common/event.cpp:1130
eventCopy = <value optimized out>
__FUNCTION__ = "AddPendingEvent"
#10 0xb755bd58 in wxSocketBase::OnRequest (this=0xa43df98,
    notification=wxSOCKET_INPUT) at ../src/common/socket.cpp:1006
event = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x870e668,
      static ms_classInfo = {m_className = 0xb74e71a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb79e48cc, m_next = 0xb753b8c4,
        static sm_classTable = 0x90983e8}, m_refData = 0x0},
    m_eventObject = 0xa43df98, m_eventType = 10002, m_timeStamp = 0,
    m_id = 6123, m_callbackUserData = 0x0, m_propagationLevel = 0,
    m_skipped = false, m_isCommandEvent = false, static ms_classInfo = {
      m_className = 0xb74f8708, m_objectSize = 36, m_objectConstructor = 0,
      m_baseInfo1 = 0xb753b858, m_baseInfo2 = 0x0,
      static sm_first = 0xb79e48cc, m_next = 0xb753c908,
      static sm_classTable = 0x90983e8}}, m_event = wxSOCKET_INPUT,
---Type <return> to continue, or q <return> to quit---
  m_clientData = 0x0, static ms_classInfo = {m_className = 0xb7563008,
    m_objectSize = 44,
    m_objectConstructor = 0xb7559e00 <wxSocketEvent::wxCreateObject()>,
    m_baseInfo1 = 0xb753c920, m_baseInfo2 = 0x0, static sm_first = 0xb79e48cc,
    m_next = 0xb756c54c, static sm_classTable = 0x90983e8}}
flag = <value optimized out>
#11 0xb755be54 in wx_socket_callback (notification=GSOCK_INPUT,
    cdata=0xa43df98 "��O\b") at ../src/common/socket.cpp:942
No locals.
#12 0xb756083e in GSocket::Detected_Read (this=0x9d54520)
    at ../src/unix/gsocket.cpp:1785
c = -27 '
num = <value optimized out>
#13 0xb76aac00 in _GSocket_GDK_Input (data=0x9d54520, source=72, condition=3)
    at ../src/gtk/gsockgtk.cpp:34
No locals.
#14 0xb6cf34af in gdk_io_invoke (source=0xb5ae9fa8,
    condition=<value optimized out>, data=0xb3088130)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = 3
#15 0xb6a9171d in g_io_unix_dispatch (source=0xb5ae9f60,
    callback=0xb6cf3450 <gdk_io_invoke>, user_data=0xb3088130)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
---Type <return> to continue, or q <return> to quit---
buffer_condition = 6
#16 0xb6a5a718 in IA__g_main_context_dispatch (context=0x90c5f60)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#17 0xb6a5ddc3 in g_main_context_iterate (context=0x90c5f60, block=1,
    dispatch=1, self=0x90c7510)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 110
timeout = 0
some_ready = 1
nfds = 6
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xa0a49d8
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#18 0xb6a5e2e2 in IA__g_main_loop_run (loop=0xb5a03a40)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0x90c7510
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#19 0xb6e8c3a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0xb5a03a20
---Type <return> to continue, or q <return> to quit---
loop = (GMainLoop *) 0xb5a03a40
#20 0xb76a910b in wxEventLoop::Run (this=0xb5a03a20)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#21 0xb774d3dc in wxAppBase::MainLoop (this=0x90c5e18)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0xb5a03a20}, m_pp = 0x90c5e58,
  m_pOld = 0x0}
#22 0xb774d131 in wxAppBase::OnRun (this=0x6) at ../src/common/appcmn.cpp:367
No locals.
#23 0xb74423fa in wxEntry (argc=@0xb753a6cc, argv=0x90b4480)
    at ../src/common/init.cpp:460
No locals.
#24 0xb74424b7 in wxEntry (argc=@0xbfb548f0, argv=0xbfb54974)
    at ../src/common/init.cpp:472
No locals.
#25 0x082c0834 in main (argc=0, argv=0x0) at ../../src/amule-gui.cpp:94
No locals.

(gdb) thread apply all bt full
Code: [Select]
Thread 5 (Thread 0xb4548b90 (LWP 4839)):
#0  0xb7f53430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7f173a2 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
   from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0xb74b36e1 in wxConditionInternal::WaitTimeout (this=0x99fdc48,
    milliseconds=100) at ../src/unix/threadpsx.cpp:405
tspec = {tv_sec = 1239496145, tv_nsec = 6000000}
err = <value optimized out>
#3  0xb74b376a in wxCondition::WaitTimeout (this=0x9127284, milliseconds=100)
    at ../include/wx/thrimpl.cpp:256
__FUNCTION__ = "WaitTimeout"
#4  0xb74b5524 in wxSemaphoreInternal::WaitTimeout (this=0x9127280,
    milliseconds=100) at ../src/unix/threadpsx.cpp:552
remainingTime = -516
locker = {m_isOk = true, m_mutex = @0x9127280}
#5  0xb74b55aa in wxSemaphore::WaitTimeout (this=0x9a05f68, milliseconds=100)
    at ../include/wx/thrimpl.cpp:320
__FUNCTION__ = "WaitTimeout"
#6  0x0840b770 in CTimerThread::Entry (this=0x9a05f48)
    at ../../src/Timer.cpp:64
---Type <return> to continue, or q <return> to quit---
now = 2545563658
sinceLast = 0
timeout = 100
evt = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x85efd88,
      static ms_classInfo = {m_className = 0xb74e71a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb79e48cc, m_next = 0xb753b8c4,
        static sm_classTable = 0x90983e8}, m_refData = 0x0},
    m_eventObject = 0x0, m_eventType = 10244, m_timeStamp = 0, m_id = 6128,
    m_callbackUserData = 0x0, m_propagationLevel = 0, m_skipped = false,
    m_isCommandEvent = false, static ms_classInfo = {m_className = 0xb74f8708,
      m_objectSize = 36, m_objectConstructor = 0, m_baseInfo1 = 0xb753b858,
      m_baseInfo2 = 0x0, static sm_first = 0xb79e48cc, m_next = 0xb753c908,
      static sm_classTable = 0x90983e8}}, <No data fields>}
lastEvent = 2545563658
#7  0xb74b6036 in wxThreadInternal::PthreadStart (thread=0x9a05f48)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0x9134c38
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#8  0xb74b613d in wxPthreadStart (ptr=0x9a05f48)
    at ../src/unix/threadpsx.cpp:718
---Type <return> to continue, or q <return> to quit---
No locals.
#9  0xb7f1350f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#10 0xb71e8a0e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 3 (Thread 0xb554ab90 (LWP 4837)):
#0  0xb7f53430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7f1a906 in nanosleep () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0xb74bd168 in wxMicroSleep (microseconds=0) at ../src/unix/utilsunx.cpp:191
tmReq = {tv_sec = 1, tv_nsec = 0}
#3  0xb74bd191 in wxMilliSleep (milliseconds=1000)
    at ../src/unix/utilsunx.cpp:212
No locals.
#4  0xb74b341d in wxThread::Sleep (milliseconds=1000)
    at ../src/unix/threadpsx.cpp:986
No locals.
#5  0x0820fd22 in UploadBandwidthThrottler::Entry (this=0x9866568)
    at ../../src/UploadBandwidthThrottler.cpp:320
timeSinceLastLoop = 0
minFragSize = 1300
---Type <return> to continue, or q <return> to quit---
doubleSendSize = 2600
bytesToSpend = 1696658
sleepTime = 1000
thisLoopTick = 2545563683
TIME_BETWEEN_UPLOAD_LOOPS = 1
lastLoopTick = 2545563683
realBytesToSpend = 46592999
allowedDataRate = 10240000
rememberedSlotCounter = 1
extraSleepTime = 1000
sendLock = {m_isOk = false, m_mutex = @0x0}
#6  0xb74b6036 in wxThreadInternal::PthreadStart (thread=0x9866568)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0x98adb20
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#7  0xb74b613d in wxPthreadStart (ptr=0x9866568)
    at ../src/unix/threadpsx.cpp:718
No locals.
#8  0xb7f1350f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#9  0xb71e8a0e in clone () from /lib/tls/i686/cmov/libc.so.6
---Type <return> to continue, or q <return> to quit---
No symbol table info available.

Thread 1 (Thread 0xb66cf700 (LWP 4800)):
#0  0xb7f53430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb71328a0 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0xb7134268 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0x08411c19 in OnUnhandledException ()
    at ../../../../src/libs/common/MuleDebug.cpp:103
t = (class std::type_info *) 0x8712c8c
output = (FILE *) 0xb7261560
#4  0xb7355655 in __cxxabiv1::__terminate (
    handler=0x84118a8 <OnUnhandledException()>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
No locals.
#5  0xb7355692 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
No locals.
#6  0xb73557ca in __cxa_throw (obj=0xb73848f0, tinfo=0x8712c8c,
    dest=0xb7355d00 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
---Type <return> to continue, or q <return> to quit---
header = <value optimized out>
#7  0xb7355e23 in operator new (sz=44)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
handler = <value optimized out>
p = <value optimized out>
#8  0xb755c0e9 in wxSocketEvent::Clone (this=0xbfb54590)
    at ../include/wx/socket.h:314
No locals.
#9  0xb74b7bb5 in wxEvtHandler::AddPendingEvent (this=0x8715600,
    event=@0xbfb54590) at ../src/common/event.cpp:1130
eventCopy = <value optimized out>
__FUNCTION__ = "AddPendingEvent"
#10 0xb755bd58 in wxSocketBase::OnRequest (this=0xa43df98,
    notification=wxSOCKET_INPUT) at ../src/common/socket.cpp:1006
event = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x870e668,
      static ms_classInfo = {m_className = 0xb74e71a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb79e48cc, m_next = 0xb753b8c4,
        static sm_classTable = 0x90983e8}, m_refData = 0x0},
    m_eventObject = 0xa43df98, m_eventType = 10002, m_timeStamp = 0,
    m_id = 6123, m_callbackUserData = 0x0, m_propagationLevel = 0,
    m_skipped = false, m_isCommandEvent = false, static ms_classInfo = {
      m_className = 0xb74f8708, m_objectSize = 36, m_objectConstructor = 0,
---Type <return> to continue, or q <return> to quit---
      m_baseInfo1 = 0xb753b858, m_baseInfo2 = 0x0,
      static sm_first = 0xb79e48cc, m_next = 0xb753c908,
      static sm_classTable = 0x90983e8}}, m_event = wxSOCKET_INPUT,
  m_clientData = 0x0, static ms_classInfo = {m_className = 0xb7563008,
    m_objectSize = 44,
    m_objectConstructor = 0xb7559e00 <wxSocketEvent::wxCreateObject()>,
    m_baseInfo1 = 0xb753c920, m_baseInfo2 = 0x0, static sm_first = 0xb79e48cc,
    m_next = 0xb756c54c, static sm_classTable = 0x90983e8}}
flag = <value optimized out>
#11 0xb755be54 in wx_socket_callback (notification=GSOCK_INPUT,
    cdata=0xa43df98 "��O\b") at ../src/common/socket.cpp:942
No locals.
#12 0xb756083e in GSocket::Detected_Read (this=0x9d54520)
    at ../src/unix/gsocket.cpp:1785
c = -27 '
num = <value optimized out>
#13 0xb76aac00 in _GSocket_GDK_Input (data=0x9d54520, source=72, condition=3)
    at ../src/gtk/gsockgtk.cpp:34
No locals.
#14 0xb6cf34af in gdk_io_invoke (source=0xb5ae9fa8,
    condition=<value optimized out>, data=0xb3088130)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = 3
---Type <return> to continue, or q <return> to quit---
#15 0xb6a9171d in g_io_unix_dispatch (source=0xb5ae9f60,
    callback=0xb6cf3450 <gdk_io_invoke>, user_data=0xb3088130)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 6
#16 0xb6a5a718 in IA__g_main_context_dispatch (context=0x90c5f60)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#17 0xb6a5ddc3 in g_main_context_iterate (context=0x90c5f60, block=1,
    dispatch=1, self=0x90c7510)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 110
timeout = 0
some_ready = 1
nfds = 6
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xa0a49d8
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#18 0xb6a5e2e2 in IA__g_main_loop_run (loop=0xb5a03a40)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0x90c7510
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#19 0xb6e8c3a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
---Type <return> to continue, or q <return> to quit---
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0xb5a03a20
loop = (GMainLoop *) 0xb5a03a40
#20 0xb76a910b in wxEventLoop::Run (this=0xb5a03a20)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#21 0xb774d3dc in wxAppBase::MainLoop (this=0x90c5e18)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0xb5a03a20}, m_pp = 0x90c5e58,
  m_pOld = 0x0}
#22 0xb774d131 in wxAppBase::OnRun (this=0x6) at ../src/common/appcmn.cpp:367
No locals.
#23 0xb74423fa in wxEntry (argc=@0xb753a6cc, argv=0x90b4480)
    at ../src/common/init.cpp:460
No locals.
#24 0xb74424b7 in wxEntry (argc=@0xbfb548f0, argv=0xbfb54974)
    at ../src/common/init.cpp:472
No locals.
#25 0x082c0834 in main (argc=0, argv=0x0) at ../../src/amule-gui.cpp:94
No locals.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 12, 2009, 09:47:49 PM
Another low VSZ - SIGSEGV crash:

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb67ab700 (LWP 23570)]
0xb1ef7c08 in ?? ()

(gdb) bt
Code: [Select]
#0  0xb1ef7c08 in ?? ()
#1  0xb6dcf4af in gdk_io_invoke (source=0xb30f2050,
    condition=<value optimized out>, data=0x2)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
#2  0xb6b6d71d in g_io_unix_dispatch (source=0xb30ee4f8,
    callback=0xb6dcf450 <gdk_io_invoke>, user_data=0xb32a9fd0)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
#3  0xb6b36718 in IA__g_main_context_dispatch (context=0x9af1f60)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
#4  0xb6b39dc3 in g_main_context_iterate (context=0x9af1f60, block=1,
    dispatch=1, self=0x9af3510)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
#5  0xb6b3a2e2 in IA__g_main_loop_run (loop=0x9b24848)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
#6  0xb6f683a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
#7  0xb778510b in wxEventLoop::Run (this=0xa4299d0)
    at ../src/gtk/evtloop.cpp:76
#8  0xb78293dc in wxAppBase::MainLoop (this=0x9af1e18)
    at ../src/common/appcmn.cpp:312
#9  0xb7829131 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
#10 0xb751e3fa in wxEntry (argc=@0xb76166cc, argv=0x9ae0480)
    at ../src/common/init.cpp:460
---Type <return> to continue, or q <return> to quit---
#11 0xb751e4b7 in wxEntry (argc=@0xbf9306c0, argv=0xbf930744)
    at ../src/common/init.cpp:472
#12 0x082c0834 in main (argc=1, argv=0xb6bb3460) at ../../src/amule-gui.cpp:94

(gdb) bt full
Code: [Select]
#0  0xb1ef7c08 in ?? ()
No symbol table info available.
#1  0xb6dcf4af in gdk_io_invoke (source=0xb30f2050,
    condition=<value optimized out>, data=0x2)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = 2985262088
#2  0xb6b6d71d in g_io_unix_dispatch (source=0xb30ee4f8,
    callback=0xb6dcf450 <gdk_io_invoke>, user_data=0xb32a9fd0)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 0
#3  0xb6b36718 in IA__g_main_context_dispatch (context=0x9af1f60)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#4  0xb6b39dc3 in g_main_context_iterate (context=0x9af1f60, block=1,
    dispatch=1, self=0x9af3510)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 2147483647
timeout = 8
some_ready = 1
nfds = 196
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xb3458bc0
__PRETTY_FUNCTION__ = "g_main_context_iterate"
---Type <return> to continue, or q <return> to quit---
#5  0xb6b3a2e2 in IA__g_main_loop_run (loop=0x9b24848)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0x9af3510
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#6  0xb6f683a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0xa4299d0
loop = (GMainLoop *) 0x9b24848
#7  0xb778510b in wxEventLoop::Run (this=0xa4299d0)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#8  0xb78293dc in wxAppBase::MainLoop (this=0x9af1e18)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0xa4299d0}, m_pp = 0x9af1e58,
  m_pOld = 0x0}
#9  0xb7829131 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
No locals.
#10 0xb751e3fa in wxEntry (argc=@0xb76166cc, argv=0x9ae0480)
    at ../src/common/init.cpp:460
No locals.
---Type <return> to continue, or q <return> to quit---
#11 0xb751e4b7 in wxEntry (argc=@0xbf9306c0, argv=0xbf930744)
    at ../src/common/init.cpp:472
No locals.
#12 0x082c0834 in main (argc=1, argv=0xb6bb3460) at ../../src/amule-gui.cpp:94
No locals.

(gdb) thread apply all bt full
Code: [Select]
Thread 5 (Thread 0xb4622b90 (LWP 23628)):
#0  0xb802f430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7ff33a2 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
   from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0xb758f6e1 in wxConditionInternal::WaitTimeout (this=0x9b53100,
    milliseconds=99) at ../src/unix/threadpsx.cpp:405
tspec = {tv_sec = 1239562463, tv_nsec = 470000000}
err = <value optimized out>
#3  0xb758f76a in wxCondition::WaitTimeout (this=0x9b60d9c, milliseconds=99)
    at ../include/wx/thrimpl.cpp:256
__FUNCTION__ = "WaitTimeout"
#4  0xb7591524 in wxSemaphoreInternal::WaitTimeout (this=0x9b60d98,
    milliseconds=99) at ../src/unix/threadpsx.cpp:552
remainingTime = -516
locker = {m_isOk = true, m_mutex = @0x9b60d98}
#5  0xb75915aa in wxSemaphore::WaitTimeout (this=0xa432ae8, milliseconds=99)
    at ../include/wx/thrimpl.cpp:320
__FUNCTION__ = "WaitTimeout"
#6  0x0840b770 in CTimerThread::Entry (this=0xa432ac8)
    at ../../src/Timer.cpp:64
---Type <return> to continue, or q <return> to quit---
now = 2611882123
sinceLast = 1
timeout = 99
evt = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x85efd88,
      static ms_classInfo = {m_className = 0xb75c31a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7ac08cc, m_next = 0xb76178c4,
        static sm_classTable = 0x9ac43e8}, m_refData = 0x0},
    m_eventObject = 0x0, m_eventType = 10244, m_timeStamp = 0, m_id = 6128,
    m_callbackUserData = 0x0, m_propagationLevel = 0, m_skipped = false,
    m_isCommandEvent = false, static ms_classInfo = {m_className = 0xb75d4708,
      m_objectSize = 36, m_objectConstructor = 0, m_baseInfo1 = 0xb7617858,
      m_baseInfo2 = 0x0, static sm_first = 0xb7ac08cc, m_next = 0xb7618908,
      static sm_classTable = 0x9ac43e8}}, <No data fields>}
lastEvent = 2611882122
#7  0xb7592036 in wxThreadInternal::PthreadStart (thread=0xa432ac8)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0x9b60c38
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#8  0xb759213d in wxPthreadStart (ptr=0xa432ac8)
    at ../src/unix/threadpsx.cpp:718
---Type <return> to continue, or q <return> to quit---
No locals.
#9  0xb7fef50f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#10 0xb72c4a0e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 3 (Thread 0xb5624b90 (LWP 23625)):
#0  0x08091480 in std::swap<unsigned char> (__a=@0xb3ba6609, __b=@0xb3ba669e)
    at /usr/include/c++/4.3/bits/stl_move.h:86
__tmp = 107 'k'
#1  0x08090c09 in CRC4EncryptableBuffer::RC4Crypt (this=0xb3ba659c,
    pachIn=0xb232048 "HQ-dJN�۴X\2157\177�E��\002M\215\217E\207\205����|y�x��w�\002\203Y7�WN�\213\234�\227I���GS=X4\0025��\a\210\020\n\025��x\212\b\210!mekIb.\020\2146\r�\022\214X����\rH\026pH�\231)�\024\2019\003\033!�j�\206*�\r\215Z\233O\017�ݺ�� \223\222bx9�$?,X�7�a(M\020���\030<ݦ�Q��\023\215C��+zU�L�7@�����J\205A�\233\222\\ݽ��t\n�CPj\227yp�\225���1�hC�"...,
    pachOut=0xb232048 "HQ-dJN�۴X\2157\177�E��\002M\215\217E\207\205����|y�x��w�\002\203Y7�WN�\213\234�\227I���GS=X4\0025��\a\210\020\n\025��x\212\b\210!mekIb.\020\2146\r�\022\214X����\rH\026pH�\231)�\024\2019\003\033!�j�\206*�\r\215Z\233O\017�ݺ�� \223\222bx9�$?,X�7�a(M\020���\030<ݦ�Q��\023\215C��+zU�L�7@�����J\205A�\233\222\\ݽ��t\n�CPj\227yp�\225���1�hC�"..., nLen=10703)
    at ../../src/RC4Encrypt.cpp:75
i = 4814
---Type <return> to continue, or q <return> to quit---
byX = 79 'O'
byY = 228 '
pabyState = (
    uint8 *) 0xb3ba65ba "�+�i\v�`�&\022��0��|�6\aD�V\\ Mr�o�l,>��\004\032��9L�(f�\2321z\002�g:�T�����\027��?�q2\rU\003�\221)\225t}W����k\215\201\n����s�I\237\223�\2168ʹ{\204�\001���\230S-#n*K�\205�xɾ\202\234v�'7�\b/�\024\006��E�^\035�G�\030�\210�\222\026N�J\"HjPp��[\233�\023\235\212\227Q5m��\177�!]u�\206A\207<�\016F�\037X�d�h\200\226\005\224e��\231\t\033�$C\236"...
byXorIndex = 255 '�'
__FUNCTION__ = "RC4Crypt"
#2  0x0816654d in CEncryptedStreamSocket::CryptPrepareSendData (
    this=0xb3ba63a0,
    pBuffer=0xb232048 "HQ-dJN�۴X\2157\177�E��\002M\215\217E\207\205����|y�x��w�\002\203Y7�WN�\213\234�\227I���GS=X4\0025��\a\210\020\n\025��x\212\b\210!mekIb.\020\2146\r�\022\214X����\rH\026pH�\231)�\024\2019\003\033!�j�\206*�\r\215Z\233O\017�ݺ�� \223\222bx9�$?,X�7�a(M\020���\030<ݦ�Q��\023\215C��+zU�L�7@�����J\205A�\233\222\\ݽ��t\n�CPj\227yp�\225���1�hC�"..., nLen=10703)
    at ../../src/EncryptedStreamSocket.cpp:360
__FUNCTION__ = "CryptPrepareSendData"
#3  0x08162ae2 in CEMSocket::Send (this=0xb3ba63a0,
    maxNumberOfBytesToSend=119600, minFragSize=2600,
    onlyAllowedToSendControlPacket=false) at ../../src/EMSocket.cpp:596
curPacket = (CPacket *) 0xb5ef798
---Type <return> to continue, or q <return> to quit---
bWasLongTimeSinceSend = false
lock = {m_isOk = true, m_mutex = @0xb3ba6730}
anErrorHasOccured = false
sentStandardPacketBytesThisCall = 458
sentControlPacketBytesThisCall = 0
returnVal = {success = true, sentBytesStandardPackets = 0,
  sentBytesControlPackets = 0}
__FUNCTION__ = "Send"
#4  0x08107b9a in CEMSocket::SendFileAndControlData (this=0xb3ba63a0,
    maxNumberOfBytesToSend=118784, minFragSize=2600) at ../../src/EMSocket.h:71
No locals.
#5  0x080f1e06 in CClientTCPSocket::SendFileAndControlData (this=0xb3ba63a0,
    maxNumberOfBytesToSend=118784, overchargeMaxBytesToSend=2600)
    at ../../src/ClientTCPSocket.cpp:2124
returnStatus = {success = true, sentBytesStandardPackets = 0,
  sentBytesControlPackets = 0}
returnStatus = {success = 86, sentBytesStandardPackets = 118784,
  sentBytesControlPackets = 2600}
#6  0x08210b30 in UploadBandwidthThrottler::Entry (this=0xa288198)
    at ../../src/UploadBandwidthThrottler.cpp:452
bytesToSpendTemp = 118784
socketSentBytes = {success = true, sentBytesStandardPackets = 0,
  sentBytesControlPackets = 0}
---Type <return> to continue, or q <return> to quit---
lastSpentBytes = 0
socket = (class ThrottledFileSocket *) 0xb3ba66d4
slotCounter = 30
spentBytes = 0
spentOverhead = 0
sendLock = {m_isOk = true, m_mutex = @0xa2881a8}
maxSlot = 92
timeSinceLastLoop = 7
minFragSize = 1300
doubleSendSize = 2600
bytesToSpend = 118784
sleepTime = 5
thisLoopTick = 2611882198
TIME_BETWEEN_UPLOAD_LOOPS = 1
lastLoopTick = 2611882198
realBytesToSpend = 118784999
allowedDataRate = 10240000
rememberedSlotCounter = 1
extraSleepTime = 5
sendLock = {m_isOk = false, m_mutex = @0x0}
#7  0xb7592036 in wxThreadInternal::PthreadStart (thread=0xa288198)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0xa2882e8
---Type <return> to continue, or q <return> to quit---
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#8  0xb759213d in wxPthreadStart (ptr=0xa288198)
    at ../src/unix/threadpsx.cpp:718
No locals.
#9  0xb7fef50f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#10 0xb72c4a0e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 1 (Thread 0xb67ab700 (LWP 23570)):
#0  0xb1ef7c08 in ?? ()
No symbol table info available.
#1  0xb6dcf4af in gdk_io_invoke (source=0xb30f2050,
    condition=<value optimized out>, data=0x2)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = 2985262088
#2  0xb6b6d71d in g_io_unix_dispatch (source=0xb30ee4f8,
    callback=0xb6dcf450 <gdk_io_invoke>, user_data=0xb32a9fd0)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 0
#3  0xb6b36718 in IA__g_main_context_dispatch (context=0x9af1f60)
---Type <return> to continue, or q <return> to quit---
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#4  0xb6b39dc3 in g_main_context_iterate (context=0x9af1f60, block=1,
    dispatch=1, self=0x9af3510)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 2147483647
timeout = 8
some_ready = 1
nfds = 196
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xb3458bc0
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#5  0xb6b3a2e2 in IA__g_main_loop_run (loop=0x9b24848)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0x9af3510
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#6  0xb6f683a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0xa4299d0
loop = (GMainLoop *) 0x9b24848
#7  0xb778510b in wxEventLoop::Run (this=0xa4299d0)
---Type <return> to continue, or q <return> to quit---
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#8  0xb78293dc in wxAppBase::MainLoop (this=0x9af1e18)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0xa4299d0}, m_pp = 0x9af1e58,
  m_pOld = 0x0}
#9  0xb7829131 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
No locals.
#10 0xb751e3fa in wxEntry (argc=@0xb76166cc, argv=0x9ae0480)
    at ../src/common/init.cpp:460
No locals.
#11 0xb751e4b7 in wxEntry (argc=@0xbf9306c0, argv=0xbf930744)
    at ../src/common/init.cpp:472
No locals.
#12 0x082c0834 in main (argc=1, argv=0xb6bb3460) at ../../src/amule-gui.cpp:94
No locals.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 12, 2009, 09:52:26 PM
$ ps axl | grep amule
Code: [Select]
0  1000 23555 23521  20   0 219020 214316 poll  S+   pts/0      0:03 gdb amule
0  1000 23570 23555  20   0 146596 89668 ptrace Tl   pts/0    374:23 /usr/bin/amule
0  1000 25884 25865  20   0   3236   800 pipe_w S+   pts/1      0:00 grep amule

$ cat /proc/23570/maps

Part 1:
Code: [Select]
b38ff000-b3900000 ---p b38ff000 00:00 0
b399f000-b39de000 r--p 00000000 08:11 15295283   /usr/lib/locale/en_GB.utf8/LC_CTYPE
b39de000-b3abf000 r--p 00000000 08:11 15295282   /usr/lib/locale/en_GB.utf8/LC_COLLATE
b3abf000-b3b00000 rw-p b3abf000 00:00 0
b3b00000-b3bfa000 rw-p b3b00000 00:00 0
b3bfa000-b3c00000 ---p b3bfa000 00:00 0
b3c09000-b3c4a000 rw-p b3c09000 00:00 0
b3c4a000-b3c95000 r--p 00000000 08:11 15392788   /usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif.ttf
b3c95000-b3d99000 rw-p b3c95000 00:00 0
b3d99000-b3e22000 r--p 00000000 08:11 15392785   /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-Bold.ttf
b3e22000-b3e23000 ---p b3e22000 00:00 0
b3e23000-b4623000 rw-p b3e23000 00:00 0
b4623000-b4624000 ---p b4623000 00:00 0
b4624000-b4e24000 rw-p b4624000 00:00 0
b4e24000-b4e25000 ---p b4e24000 00:00 0
b4e25000-b5625000 rw-p b4e25000 00:00 0
b5625000-b5656000 r-xp 00000000 08:11 15271619   /usr/lib/libcroco-0.6.so.3.0.1
b5656000-b5659000 rw-p 00030000 08:11 15271619   /usr/lib/libcroco-0.6.so.3.0.1
b5659000-b5671000 r-xp 00000000 08:11 25223171   /usr/lib/gio/modules/libgvfsdbus.so
b5671000-b5672000 r--p 00017000 08:11 25223171   /usr/lib/gio/modules/libgvfsdbus.so
b5672000-b5673000 rw-p 00018000 08:11 25223171   /usr/lib/gio/modules/libgvfsdbus.so
b5673000-b5680000 r-xp 00000000 08:11 15270702   /usr/lib/libgvfscommon.so.0.0.0
b5680000-b5681000 r--p 0000d000 08:11 15270702   /usr/lib/libgvfscommon.so.0.0.0
b5681000-b5682000 rw-p 0000e000 08:11 15270702   /usr/lib/libgvfscommon.so.0.0.0
b5693000-b56c9000 r-xp 00000000 08:11 7487615    /lib/libdbus-1.so.3.4.0
b56c9000-b56ca000 r--p 00035000 08:11 7487615    /lib/libdbus-1.so.3.4.0
b56ca000-b56cb000 rw-p 00036000 08:11 7487615    /lib/libdbus-1.so.3.4.0
b56d4000-b5704000 r-xp 00000000 08:11 15271251   /usr/lib/libgsf-1.so.114.0.8
b5704000-b5706000 r--p 0002f000 08:11 15271251   /usr/lib/libgsf-1.so.114.0.8
b5706000-b5707000 rw-p 00031000 08:11 15271251   /usr/lib/libgsf-1.so.114.0.8
b5707000-b5708000 rw-p b5707000 00:00 0
b5708000-b5739000 r-xp 00000000 08:11 15270040   /usr/lib/librsvg-2.so.2.22.3
b5739000-b573a000 r--p 00030000 08:11 15270040   /usr/lib/librsvg-2.so.2.22.3
b573a000-b573b000 rw-p 00031000 08:11 15270040   /usr/lib/librsvg-2.so.2.22.3
b573b000-b573d000 r-xp 00000000 08:11 7504267    /lib/tls/i686/cmov/libutil-2.8.90.so
b573d000-b573e000 r--p 00001000 08:11 7504267    /lib/tls/i686/cmov/libutil-2.8.90.so
b573e000-b573f000 rw-p 00002000 08:11 7504267    /lib/tls/i686/cmov/libutil-2.8.90.so
b5749000-b5758000 r-xp 00000000 08:11 7488081    /lib/libbz2.so.1.0.4
b5758000-b5759000 r--p 0000f000 08:11 7488081    /lib/libbz2.so.1.0.4
b5759000-b575a000 rw-p 00010000 08:11 7488081    /lib/libbz2.so.1.0.4
b575e000-b5760000 r-xp 00000000 08:11 15327948   /usr/lib/pango/1.6.0/modules/pango-hangul-fc.so
b5760000-b5761000 r--p 00001000 08:11 15327948   /usr/lib/pango/1.6.0/modules/pango-hangul-fc.so
b5761000-b5762000 rw-p 00002000 08:11 15327948   /usr/lib/pango/1.6.0/modules/pango-hangul-fc.so
b5762000-b5763000 r--p 00000000 08:11 15295288   /usr/lib/locale/en_GB.utf8/LC_NUMERIC
b5763000-b5764000 r--p 00000000 08:11 15295291   /usr/lib/locale/en_GB.utf8/LC_TIME
b5764000-b5765000 r--p 00000000 08:11 15295286   /usr/lib/locale/en_GB.utf8/LC_MONETARY
b5765000-b5766000 r--p 00000000 08:11 15295292   /usr/lib/locale/en_GB.utf8/LC_MESSAGES/SYS_LC_MESSAGES
b5766000-b5767000 r--p 00000000 08:11 15295289   /usr/lib/locale/en_GB.utf8/LC_PAPER
b5767000-b5768000 r--p 00000000 08:11 15295287   /usr/lib/locale/en_GB.utf8/LC_NAME
b5768000-b5769000 r--p 00000000 08:11 15295281   /usr/lib/locale/en_GB.utf8/LC_ADDRESS
b5769000-b576a000 r--p 00000000 08:11 15295290   /usr/lib/locale/en_GB.utf8/LC_TELEPHONE
b576a000-b576b000 r--p 00000000 08:11 15295285   /usr/lib/locale/en_GB.utf8/LC_MEASUREMENT
b576b000-b576c000 r-xp 00000000 08:11 15294815   /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so
b576c000-b576d000 r--p 00000000 08:11 15294815   /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so
b576d000-b576e000 rw-p 00001000 08:11 15294815   /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so
b576e000-b5785000 r--s 00000000 08:11 15344031   /usr/share/mime/mime.cache
b5785000-b5830000 r--p 00000000 08:11 15483943   /usr/share/icons/Tangerine/icon-theme.cache
b5830000-b5934000 rw-p b5830000 00:00 0
b5934000-b59c9000 r--p 00000000 08:11 15392784   /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf
b59c9000-b59cb000 r-xp 00000000 08:11 15327946   /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
b59cb000-b59cc000 r--p 00001000 08:11 15327946   /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
b59cc000-b59cd000 rw-p 00002000 08:11 15327946   /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
b59cd000-b59d3000 r--s 00000000 08:11 19407431   /var/cache/fontconfig/945677eb7aeaf62f1d50efc3fb3ec7d8-x86.cache-2
b59d3000-b59d6000 r--s 00000000 08:11 19408582   /var/cache/fontconfig/e383d7ea5fbe662a33d9b44caf393297-x86.cache-2
b59d6000-b59d9000 r--s 00000000 08:11 19407381   /var/cache/fontconfig/a755afe4a08bf5b97852ceb7400b47bc-x86.cache-2
b59d9000-b59dc000 r--s 00000000 08:11 19408574   /var/cache/fontconfig/6d41288fd70b0be22e8c3a91e032eec0-x86.cache-2
b59dc000-b59df000 r--s 00000000 08:11 19408573   /var/cache/fontconfig/de156ccd2eddbdc19d37a45b8b2aac9c-x86.cache-2
b59df000-b59e7000 r--s 00000000 08:11 19408570   /var/cache/fontconfig/e3de0de479f42330eadf588a55fb5bf4-x86.cache-2
b59e7000-b59f2000 r--s 00000000 08:11 19408583   /var/cache/fontconfig/0f34bcd4b6ee430af32735b75db7f02b-x86.cache-2
b59f2000-b5a52000 rw-s 00000000 00:09 3473424    /SYSV00000000 (deleted)
b5a52000-b5a58000 r-xp 00000000 08:11 15294543   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-xpm.so
b5a58000-b5a59000 r--p 00005000 08:11 15294543   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-xpm.so
b5a59000-b5a5a000 rw-p 00006000 08:11 15294543   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-xpm.so
b5a5a000-b5aba000 rw-s 00000000 00:09 3440654    /SYSV00000000 (deleted)
b5aba000-b5ad9000 r-xp 00000000 08:11 15294850   /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
b5ad9000-b5ada000 r--p 0001e000 08:11 15294850   /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
b5ada000-b5adb000 rw-p 0001f000 08:11 15294850   /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
b5adb000-b5aeb000 r-xp 00000000 08:11 7504263    /lib/tls/i686/cmov/libresolv-2.8.90.so
b5aeb000-b5aec000 r--p 0000f000 08:11 7504263    /lib/tls/i686/cmov/libresolv-2.8.90.so
b5aec000-b5aed000 rw-p 00010000 08:11 7504263    /lib/tls/i686/cmov/libresolv-2.8.90.so
b5aed000-b5aef000 rw-p b5aed000 00:00 0
b5aef000-b5af0000 r--p 00000000 08:11 15295284   /usr/lib/locale/en_GB.utf8/LC_IDENTIFICATION
b5af0000-b5af1000 rw-p b5af0000 00:00 0
b5af1000-b5af3000 r--s 00000000 08:11 19408581   /var/cache/fontconfig/c69f04ab05004e31a6d5e715764f16d8-x86.cache-2
b5af3000-b5af6000 r--s 00000000 08:11 19407400   /var/cache/fontconfig/6eb3985aa4124903f6ff08ba781cd364-x86.cache-2
b5af6000-b5af9000 r--s 00000000 08:11 19408580   /var/cache/fontconfig/de9486f0b47a4d768a594cb4198cb1c6-x86.cache-2
b5af9000-b5b00000 r--s 00000000 08:11 19406916   /var/cache/fontconfig/d52a8644073d54c13679302ca1180695-x86.cache-2
b5b00000-b5bfc000 rw-p b5b00000 00:00 0
b5bfc000-b5c00000 ---p b5bfc000 00:00 0
b5c00000-b5c01000 r--s 00000000 08:11 19408568   /var/cache/fontconfig/4c73fe0c47614734b17d736dbde7580a-x86.cache-2
b5c01000-b5c07000 r--s 00000000 08:11 19406910   /var/cache/fontconfig/089dead882dea3570ffc31a9898cfb69-x86.cache-2
b5c07000-b5c08000 ---p b5c07000 00:00 0
b5c08000-b6408000 rw-p b5c08000 00:00 0
b6408000-b640e000 r-xp 00000000 08:11 15271479   /usr/lib/libgailutil.so.18.0.1
b640e000-b640f000 r--p 00005000 08:11 15271479   /usr/lib/libgailutil.so.18.0.1
b640f000-b6410000 rw-p 00006000 08:11 15271479   /usr/lib/libgailutil.so.18.0.1
b6410000-b643f000 r-xp 00000000 08:11 15270570   /usr/lib/libgnomecanvas-2.so.0.2001.0
b643f000-b6440000 r--p 0002e000 08:11 15270570   /usr/lib/libgnomecanvas-2.so.0.2001.0
b6440000-b6441000 rw-p 0002f000 08:11 15270570   /usr/lib/libgnomecanvas-2.so.0.2001.0
b6441000-b647f000 r-xp 00000000 08:11 15271569   /usr/lib/libgnomeprintui-2-2.so.0.1.0
b647f000-b6480000 r--p 0003d000 08:11 15271569   /usr/lib/libgnomeprintui-2-2.so.0.1.0
b6480000-b6481000 rw-p 0003e000 08:11 15271569   /usr/lib/libgnomeprintui-2-2.so.0.1.0
b6481000-b65b6000 r-xp 00000000 08:11 15271020   /usr/lib/libxml2.so.2.6.32
b65b6000-b65b7000 ---p 00135000 08:11 15271020   /usr/lib/libxml2.so.2.6.32
b65b7000-b65bb000 r--p 00135000 08:11 15271020   /usr/lib/libxml2.so.2.6.32
b65bb000-b65bc000 rw-p 00139000 08:11 15271020   /usr/lib/libxml2.so.2.6.32
b65bc000-b65bd000 rw-p b65bc000 00:00 0
b65bd000-b65d2000 r-xp 00000000 08:11 15271916   /usr/lib/libart_lgpl_2.so.2.3.20
b65d2000-b65d4000 rw-p 00014000 08:11 15271916   /usr/lib/libart_lgpl_2.so.2.3.20
b65d4000-b663a000 r-xp 00000000 08:11 15272783   /usr/lib/libgnomeprint-2-2.so.0.1.0
b663a000-b663b000 ---p 00066000 08:11 15272783   /usr/lib/libgnomeprint-2-2.so.0.1.0
b663b000-b663c000 r--p 00066000 08:11 15272783   /usr/lib/libgnomeprint-2-2.so.0.1.0
b663c000-b663d000 rw-p 00067000 08:11 15272783   /usr/lib/libgnomeprint-2-2.so.0.1.0
b663d000-b6647000 r-xp 00000000 08:11 7504222    /lib/tls/i686/cmov/libnss_files-2.8.90.so
b6647000-b6648000 r--p 00009000 08:11 7504222    /lib/tls/i686/cmov/libnss_files-2.8.90.so
b6648000-b6649000 rw-p 0000a000 08:11 7504222    /lib/tls/i686/cmov/libnss_files-2.8.90.so
b6649000-b6652000 r-xp 00000000 08:11 7504259    /lib/tls/i686/cmov/libnss_nis-2.8.90.so
b6652000-b6653000 r--p 00008000 08:11 7504259    /lib/tls/i686/cmov/libnss_nis-2.8.90.so
b6653000-b6654000 rw-p 00009000 08:11 7504259    /lib/tls/i686/cmov/libnss_nis-2.8.90.so
b6654000-b6669000 r-xp 00000000 08:11 7504219    /lib/tls/i686/cmov/libnsl-2.8.90.so
b6669000-b666a000 r--p 00014000 08:11 7504219    /lib/tls/i686/cmov/libnsl-2.8.90.so
b666a000-b666b000 rw-p 00015000 08:11 7504219    /lib/tls/i686/cmov/libnsl-2.8.90.so
b666b000-b666d000 rw-p b666b000 00:00 0
b666d000-b6674000 r-xp 00000000 08:11 7504220    /lib/tls/i686/cmov/libnss_compat-2.8.90.so
b6674000-b6675000 r--p 00006000 08:11 7504220    /lib/tls/i686/cmov/libnss_compat-2.8.90.so
b6675000-b6676000 rw-p 00007000 08:11 7504220    /lib/tls/i686/cmov/libnss_compat-2.8.90.so
b6676000-b6677000 r--s 00000000 08:11 19406911   /var/cache/fontconfig/4794a0821666d79190d59a36cb4f44b5-x86.cache-2
b6677000-b6679000 r--s 00000000 08:11 19407182   /var/cache/fontconfig/e13b20fdb08344e0e664864cc2ede53d-x86.cache-2
b6679000-b667c000 rw-s 00000000 00:09 3506193    /SYSV00000000 (deleted)
b667c000-b6680000 r-xp 00000000 08:11 7504221    /lib/tls/i686/cmov/libnss_dns-2.8.90.so
b6680000-b6681000 r--p 00003000 08:11 7504221    /lib/tls/i686/cmov/libnss_dns-2.8.90.so
b6681000-b6682000 rw-p 00004000 08:11 7504221    /lib/tls/i686/cmov/libnss_dns-2.8.90.so
b6682000-b6684000 r-xp 00000000 08:11 7487583    /lib/libnss_mdns4_minimal.so.2
b6684000-b6685000 rw-p 00001000 08:11 7487583    /lib/libnss_mdns4_minimal.so.2
b6685000-b6687000 rw-p b6685000 00:00 0
b6687000-b6688000 r--p 00000000 08:11 15295427   /usr/lib/locale/nl_NL.utf8/LC_NUMERIC
b6688000-b6689000 r--p 00000000 08:11 15426937   /usr/lib/locale/nl_NL.utf8/LC_TIME
b6689000-b676a000 r--p 00000000 08:11 15295674   /usr/lib/locale/nl_NL.utf8/LC_COLLATE
b676a000-b676b000 r--p 00000000 08:11 15426938   /usr/lib/locale/nl_NL.utf8/LC_MONETARY
b676b000-b676c000 r--p 00000000 08:11 15295227   /usr/lib/locale/nl_NL.utf8/LC_MESSAGES/SYS_LC_MESSAGES
b676c000-b67ab000 r--p 00000000 08:11 15295675   /usr/lib/locale/nl_NL.utf8/LC_C
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 12, 2009, 09:53:20 PM
Part 2:
Code: [Select]
TYPE
b67ab000-b67af000 rw-p b67ab000 00:00 0
b67af000-b67b3000 r-xp 00000000 08:11 15270153   /usr/lib/libXdmcp.so.6.0.0
b67b3000-b67b4000 rw-p 00003000 08:11 15270153   /usr/lib/libXdmcp.so.6.0.0
b67b4000-b67b6000 r-xp 00000000 08:11 15270151   /usr/lib/libXau.so.6.0.0
b67b6000-b67b7000 rw-p 00001000 08:11 15270151   /usr/lib/libXau.so.6.0.0
b67b7000-b67bd000 r-xp 00000000 08:11 15271817   /usr/lib/libxcb-render.so.0.0.0
b67bd000-b67be000 r--p 00005000 08:11 15271817   /usr/lib/libxcb-render.so.0.0.0
b67be000-b67bf000 rw-p 00006000 08:11 15271817   /usr/lib/libxcb-render.so.0.0.0
b67bf000-b67c2000 r-xp 00000000 08:11 15271819   /usr/lib/libxcb-render-util.so.0.0.0
b67c2000-b67c3000 r--p 00002000 08:11 15271819   /usr/lib/libxcb-render-util.so.0.0.0
b67c3000-b67c4000 rw-p 00003000 08:11 15271819   /usr/lib/libxcb-render-util.so.0.0.0
b67c4000-b67c5000 rw-p b67c4000 00:00 0
b67c5000-b6804000 r-xp 00000000 08:11 15271815   /usr/lib/libpixman-1.so.0.12.0
b6804000-b6806000 r--p 0003e000 08:11 15271815   /usr/lib/libpixman-1.so.0.12.0
b6806000-b6807000 rw-p 00040000 08:11 15271815   /usr/lib/libpixman-1.so.0.12.0
b6807000-b681e000 r-xp 00000000 08:11 15270845   /usr/lib/libxcb.so.1.0.0
b681e000-b681f000 r--p 00016000 08:11 15270845   /usr/lib/libxcb.so.1.0.0
b681f000-b6820000 rw-p 00017000 08:11 15270845   /usr/lib/libxcb.so.1.0.0
b6820000-b6821000 r-xp 00000000 08:11 15270854   /usr/lib/libxcb-xlib.so.0.0.0
b6821000-b6822000 r--p 00000000 08:11 15270854   /usr/lib/libxcb-xlib.so.0.0.0
b6822000-b6823000 rw-p 00001000 08:11 15270854   /usr/lib/libxcb-xlib.so.0.0.0
b6823000-b6838000 r-xp 00000000 08:11 15271181   /usr/lib/libICE.so.6.3.0
b6838000-b6839000 rw-p 00014000 08:11 15271181   /usr/lib/libICE.so.6.3.0
b6839000-b683b000 rw-p b6839000 00:00 0
b683b000-b6863000 r-xp 00000000 08:11 7487563    /lib/libpcre.so.3.12.1
b6863000-b6864000 r--p 00027000 08:11 7487563    /lib/libpcre.so.3.12.1
b6864000-b6865000 rw-p 00028000 08:11 7487563    /lib/libpcre.so.3.12.1
b6865000-b6866000 rw-p b6865000 00:00 0
b6866000-b688a000 r-xp 00000000 08:11 15270076   /usr/lib/libexpat.so.1.5.2
b688a000-b688c000 r--p 00023000 08:11 15270076   /usr/lib/libexpat.so.1.5.2
b688c000-b688d000 rw-p 00025000 08:11 15270076   /usr/lib/libexpat.so.1.5.2
b688d000-b68a5000 r-xp 00000000 08:11 7487527    /lib/libselinux.so.1
b68a5000-b68a6000 r--p 00017000 08:11 7487527    /lib/libselinux.so.1
b68a6000-b68a7000 rw-p 00018000 08:11 7487527    /lib/libselinux.so.1
b68a7000-b68af000 r-xp 00000000 08:11 15271224   /usr/lib/libXcursor.so.1.0.2
b68af000-b68b0000 rw-p 00007000 08:11 15271224   /usr/lib/libXcursor.so.1.0.2
b68b0000-b68b5000 r-xp 00000000 08:11 15271241   /usr/lib/libXrandr.so.2.1.0
b68b5000-b68b6000 r--p 00005000 08:11 15271241   /usr/lib/libXrandr.so.2.1.0
b68b6000-b68b7000 rw-p 00006000 08:11 15271241   /usr/lib/libXrandr.so.2.1.0
b68b7000-b68bf000 r-xp 00000000 08:11 15270301   /usr/lib/libXi.so.6.0.0
b68bf000-b68c0000 r--p 00007000 08:11 15270301   /usr/lib/libXi.so.6.0.0
b68c0000-b68c1000 rw-p 00008000 08:11 15270301   /usr/lib/libXi.so.6.0.0
b68c1000-b68c2000 rw-p b68c1000 00:00 0
b68c2000-b68ca000 r-xp 00000000 08:11 15270900   /usr/lib/libXrender.so.1.3.0
b68ca000-b68cb000 r--p 00007000 08:11 15270900   /usr/lib/libXrender.so.1.3.0
b68cb000-b68cc000 rw-p 00008000 08:11 15270900   /usr/lib/libXrender.so.1.3.0
b68cc000-b68d9000 r-xp 00000000 08:11 15270035   /usr/lib/libXext.so.6.4.0
b68d9000-b68db000 rw-p 0000c000 08:11 15270035   /usr/lib/libXext.so.6.4.0
b68db000-b694b000 r-xp 00000000 08:11 15271821   /usr/lib/libcairo.so.2.10800.0
b694b000-b694d000 r--p 0006f000 08:11 15271821   /usr/lib/libcairo.so.2.10800.0
b694d000-b694e000 rw-p 00071000 08:11 15271821   /usr/lib/libcairo.so.2.10800.0
b694e000-b6952000 r-xp 00000000 08:11 15271234   /usr/lib/libXfixes.so.3.1.0
b6952000-b6953000 rw-p 00003000 08:11 15271234   /usr/lib/libXfixes.so.3.1.0
b6953000-b6955000 r-xp 00000000 08:11 15271221   /usr/lib/libXdamage.so.1.1.0
b6955000-b6956000 rw-p 00001000 08:11 15271221   /usr/lib/libXdamage.so.1.1.0
b6956000-b6957000 rw-p b6956000 00:00 0
b6957000-b6959000 r-xp 00000000 08:11 15271890   /usr/lib/libXcomposite.so.1.0.0
b6959000-b695a000 r--p 00001000 08:11 15271890   /usr/lib/libXcomposite.so.1.0.0
b695a000-b695b000 rw-p 00002000 08:11 15271890   /usr/lib/libXcomposite.so.1.0.0
b695b000-b6a46000 r-xp 00000000 08:11 15270878   /usr/lib/libX11.so.6.2.0
b6a46000-b6a47000 r--p 000ea000 08:11 15270878   /usr/lib/libX11.so.6.2.0
b6a47000-b6a49000 rw-p 000eb000 08:11 15270878   /usr/lib/libX11.so.6.2.0
b6a49000-b6a4a000 rw-p b6a49000 00:00 0
b6a4a000-b6a53000 r-xp 00000000 08:11 15271988   /usr/lib/libpangocairo-1.0.so.0.2202.0
b6a53000-b6a54000 r--p 00008000 08:11 15271988   /usr/lib/libpangocairo-1.0.so.0.2202.0
b6a54000-b6a55000 rw-p 00009000 08:11 15271988   /usr/lib/libpangocairo-1.0.so.0.2202.0
b6a55000-b6aa7000 r-xp 00000000 08:11 15271453   /usr/lib/libtiff.so.4.2.1
b6aa7000-b6aa9000 r--p 00052000 08:11 15271453   /usr/lib/libtiff.so.4.2.1
b6aa9000-b6aaa000 rw-p 00054000 08:11 15271453   /usr/lib/libtiff.so.4.2.1
b6aaa000-b6aab000 rw-p b6aaa000 00:00 0
b6aab000-b6aca000 r-xp 00000000 08:11 15271751   /usr/lib/libjpeg.so.62.0.0
b6aca000-b6acb000 rw-p 0001e000 08:11 15271751   /usr/lib/libjpeg.so.62.0.0
b6acb000-b6aef000 r-xp 00000000 08:11 15271301   /usr/lib/libpng12.so.0.27.0
b6aef000-b6af0000 r--p 00023000 08:11 15271301   /usr/lib/libpng12.so.0.27.0
b6af0000-b6af1000 rw-p 00024000 08:11 15271301   /usr/lib/libpng12.so.0.27.0
b6af1000-b6af8000 r-xp 00000000 08:11 15270840   /usr/lib/libSM.so.6.0.0
b6af8000-b6af9000 r--p 00006000 08:11 15270840   /usr/lib/libSM.so.6.0.0
b6af9000-b6afa000 rw-p 00007000 08:11 15270840   /usr/lib/libSM.so.6.0.0
b6afa000-b6afc000 r-xp 00000000 08:11 15271225   /usr/lib/libXinerama.so.1.0.0
b6afc000-b6afd000 rw-p 00001000 08:11 15271225   /usr/lib/libXinerama.so.1.0.0
b6afd000-b6bb2000 r-xp 00000000 08:11 15271534   /usr/lib/libglib-2.0.so.0.1800.2
b6bb2000-b6bb3000 r--p 000b4000 08:11 15271534   /usr/lib/libglib-2.0.so.0.1800.2
b6bb3000-b6bb4000 rw-p 000b5000 08:11 15271534   /usr/lib/libglib-2.0.so.0.1800.2
b6bb4000-b6bbb000 r-xp 00000000 08:11 7504264    /lib/tls/i686/cmov/librt-2.8.90.so
b6bbb000-b6bbc000 r--p 00007000 08:11 7504264    /lib/tls/i686/cmov/librt-2.8.90.so
b6bbc000-b6bbd000 rw-p 00008000 08:11 7504264    /lib/tls/i686/cmov/librt-2.8.90.so
b6bbd000-b6bbe000 rw-p b6bbd000 00:00 0
b6bbe000-b6bc2000 r-xp 00000000 08:11 15271550   /usr/lib/libgthread-2.0.so.0.1800.2
b6bc2000-b6bc3000 r--p 00003000 08:11 15271550   /usr/lib/libgthread-2.0.so.0.1800.2
b6bc3000-b6bc4000 rw-p 00004000 08:11 15271550   /usr/lib/libgthread-2.0.so.0.1800.2
b6bc4000-b6bc7000 r-xp 00000000 08:11 15271540   /usr/lib/libgmodule-2.0.so.0.1800.2
b6bc7000-b6bc8000 r--p 00002000 08:11 15271540   /usr/lib/libgmodule-2.0.so.0.1800.2
b6bc8000-b6bc9000 rw-p 00003000 08:11 15271540   /usr/lib/libgmodule-2.0.so.0.1800.2
b6bc9000-b6c05000 r-xp 00000000 08:11 15271542   /usr/lib/libgobject-2.0.so.0.1800.2
b6c05000-b6c06000 r--p 0003b000 08:11 15271542   /usr/lib/libgobject-2.0.so.0.1800.2
b6c06000-b6c07000 rw-p 0003c000 08:11 15271542   /usr/lib/libgobject-2.0.so.0.1800.2
b6c07000-b6c32000 r-xp 00000000 08:11 15270073   /usr/lib/libfontconfig.so.1.3.0
b6c32000-b6c33000 r--p 0002a000 08:11 15270073   /usr/lib/libfontconfig.so.1.3.0
b6c33000-b6c34000 rw-p 0002b000 08:11 15270073   /usr/lib/libfontconfig.so.1.3.0
b6c34000-b6ca5000 r-xp 00000000 08:11 15270721   /usr/lib/libfreetype.so.6.3.18
b6ca5000-b6ca9000 r--p 00070000 08:11 15270721   /usr/lib/libfreetype.so.6.3.18
b6ca9000-b6caa000 rw-p 00074000 08:11 15270721   /usr/lib/libfreetype.so.6.3.18
b6caa000-b6cea000 r-xp 00000000 08:11 15271329   /usr/lib/libpango-1.0.so.0.2202.0
b6cea000-b6ceb000 ---p 00040000 08:11 15271329   /usr/lib/libpango-1.0.so.0.2202.0
b6ceb000-b6cec000 r--p 00040000 08:11 15271329   /usr/lib/libpango-1.0.so.0.2202.0
b6cec000-b6ced000 rw-p 00041000 08:11 15271329   /usr/lib/libpango-1.0.so.0.2202.0
b6ced000-b6cee000 rw-p b6ced000 00:00 0
b6cee000-b6d53000 r-xp 00000000 08:11 15271504   /usr/lib/libgio-2.0.so.0.1800.2
b6d53000-b6d54000 ---p 00065000 08:11 15271504   /usr/lib/libgio-2.0.so.0.1800.2
b6d54000-b6d55000 r--p 00065000 08:11 15271504   /usr/lib/libgio-2.0.so.0.1800.2
b6d55000-b6d56000 rw-p 00066000 08:11 15271504   /usr/lib/libgio-2.0.so.0.1800.2
b6d56000-b6d6e000 r-xp 00000000 08:11 15271669   /usr/lib/libgdk_pixbuf-2.0.so.0.1400.4
b6d6e000-b6d6f000 r--p 00017000 08:11 15271669   /usr/lib/libgdk_pixbuf-2.0.so.0.1400.4
b6d6f000-b6d70000 rw-p 00018000 08:11 15271669   /usr/lib/libgdk_pixbuf-2.0.so.0.1400.4
b6d70000-b6d96000 r-xp 00000000 08:11 15271989   /usr/lib/libpangoft2-1.0.so.0.2202.0
b6d96000-b6d97000 r--p 00025000 08:11 15271989   /usr/lib/libpangoft2-1.0.so.0.2202.0
b6d97000-b6d98000 rw-p 00026000 08:11 15271989   /usr/lib/libpangoft2-1.0.so.0.2202.0
b6d98000-b6db1000 r-xp 00000000 08:11 15270990   /usr/lib/libatk-1.0.so.0.2409.1
b6db1000-b6db3000 r--p 00018000 08:11 15270990   /usr/lib/libatk-1.0.so.0.2409.1
b6db3000-b6db4000 rw-p 0001a000 08:11 15270990   /usr/lib/libatk-1.0.so.0.2409.1
b6db4000-b6e3c000 r-xp 00000000 08:11 15271567   /usr/lib/libgdk-x11-2.0.so.0.1400.4
b6e3c000-b6e3d000 ---p 00088000 08:11 15271567   /usr/lib/libgdk-x11-2.0.so.0.1400.4
b6e3d000-b6e3f000 r--p 00088000 08:11 15271567   /usr/lib/libgdk-x11-2.0.so.0.1400.4
b6e3f000-b6e40000 rw-p 0008a000 08:11 15271567   /usr/lib/libgdk-x11-2.0.so.0.1400.4
b6e40000-b6e41000 rw-p b6e40000 00:00 0
b6e41000-b71d6000 r-xp 00000000 08:11 15271671   /usr/lib/libgtk-x11-2.0.so.0.1400.4
b71d6000-b71d7000 ---p 00395000 08:11 15271671   /usr/lib/libgtk-x11-2.0.so.0.1400.4
b71d7000-b71db000 r--p 00395000 08:11 15271671   /usr/lib/libgtk-x11-2.0.so.0.1400.4
b71db000-b71dd000 rw-p 00399000 08:11 15271671   /usr/lib/libgtk-x11-2.0.so.0.1400.4
b71dd000-b71df000 rw-p b71dd000 00:00 0
b71df000-b71e1000 r-xp 00000000 08:11 7504213    /lib/tls/i686/cmov/libdl-2.8.90.so
b71e1000-b71e2000 r--p 00001000 08:11 7504213    /lib/tls/i686/cmov/libdl-2.8.90.so
b71e2000-b71e3000 rw-p 00002000 08:11 7504213    /lib/tls/i686/cmov/libdl-2.8.90.so
b71e3000-b733b000 r-xp 00000000 08:11 7504210    /lib/tls/i686/cmov/libc-2.8.90.so
b733b000-b733d000 r--p 00158000 08:11 7504210    /lib/tls/i686/cmov/libc-2.8.90.so
b733d000-b733e000 rw-p 0015a000 08:11 7504210    /lib/tls/i686/cmov/libc-2.8.90.so
b733e000-b7341000 rw-p b733e000 00:00 0
b7341000-b734e000 r-xp 00000000 08:11 7487509    /lib/libgcc_s.so.1
b734e000-b734f000 r--p 0000c000 08:11 7487509    /lib/libgcc_s.so.1
b734f000-b7350000 rw-p 0000d000 08:11 7487509    /lib/libgcc_s.so.1
b7350000-b7374000 r-xp 00000000 08:11 7504214    /lib/tls/i686/cmov/libm-2.8.90.so
b7374000-b7375000 r--p 00023000 08:11 7504214    /lib/tls/i686/cmov/libm-2.8.90.so
b7375000-b7376000 rw-p 00024000 08:11 7504214    /lib/tls/i686/cmov/libm-2.8.90.so
b7376000-b7377000 rw-p b7376000 00:00 0
b7377000-b745a000 r-xp 00000000 08:11 15271202   /usr/lib/libstdc++.so.6.0.10
b745a000-b745e000 r--p 000e3000 08:11 15271202   /usr/lib/libstdc++.so.6.0.10
b745e000-b745f000 rw-p 000e7000 08:11 15271202   /usr/lib/libstdc++.so.6.0.10
b745f000-b7465000 rw-p b745f000 00:00 0
b7465000-b748b000 r-xp 00000000 08:11 15271167   /usr/lib/libGeoIP.so.1.4.4
b748b000-b748c000 r--p 00025000 08:11 15271167   /usr/lib/libGeoIP.so.1.4.4
b748c000-b748d000 rw-p 00026000 08:11 15271167   /usr/lib/libGeoIP.so.1.4.4
b748d000-b760b000 r-xp 00000000 08:11 15272509   /usr/lib/libwx_baseud-2.8.so.0.5.0
b760b000-b760f000 r--p 0017d000 08:11 15272509   /usr/lib/libwx_baseud-2.8.so.0.5.0
b760f000-b7611000 rw-p 00181000 08:11 15272509   /usr/lib/libwx_baseud-2.8.so.0.5.0
b7611000-b7619000 rw-p b7611000 00:00 0
b7619000-b7646000 r-xp 00000000 08:11 15272510   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b7646000-b7647000 ---p 0002d000 08:11 15272510   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b7647000-b7648000 r--p 0002d000 08:11 15272510   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b7648000-b7649000 rw-p 0002e000 08:11 15272510   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b7649000-b79c4000 r-xp 00000000 08:11 15271028   /usr/lib/libwx_gtk2ud_core-2.8.so.0.5.0
b79c4000-b79eb000 r--p 0037a000 08:11 15271028   /usr/lib/libwx_gtk2ud_core-2.8.so.0.5.0
b79eb000-b79f0000 rw-p 003a1000 08:11 15271028   /usr/lib/libwx_gtk2ud_core-2.8.so.0.5.0
b79f0000-b79f7000 rw-p b79f0000 00:00 0
b79f7000-b7ab8000 r-xp 00000000 08:11 15270699   /usr/lib/libwx_gtk2ud_adv-2.8.so.0.5.0
b7ab8000-b7ac0000 r--p 000c1000 08:11 15270699   /usr/lib/libwx_gtk2ud_adv-2.8.so.0.5.0
b7ac0000-b7ac1000 rw-p 000c9000 08:11 15270699   /usr/lib/libwx_gtk2ud_adv-2.8.so.0.5.0
b7ac1000-b7ac3000 rw-p b7ac1000 00:00 0
b7ac3000-b7acb000 r-xp 00000000 08:11 15269911   /usr/lib/libixml.so.2.0.4
b7acb000-b7acc000 r--p 00007000 08:11 15269911   /usr/lib/libixml.so.2.0.4
b7acc000-b7acd000 rw-p 00008000 08:11 15269911   /usr/lib/libixml.so.2.0.4
b7acd000-b7ad1000 r-xp 00000000 08:11 15269967   /usr/lib/libthreadutil.so.2.2.3
b7ad1000-b7ad2000 r--p 00003000 08:11 15269967   /usr/lib/libthreadutil.so.2.2.3
b7ad2000-b7ad3000 rw-p 00004000 08:11 15269967   /usr/lib/libthreadutil.so.2.2.3
b7ad3000-b7aed000 r-xp 00000000 08:11 15270052   /usr/lib/libupnp.so.3.0.5
b7aed000-b7aee000 r--p 00019000 08:11 15270052   /usr/lib/libupnp.so.3.0.5
b7aee000-b7aef000 rw-p 0001a000 08:11 15270052   /usr/lib/libupnp.so.3.0.5
b7aef000-b7af0000 rw-p b7aef000 00:00 0
b7af0000-b7eab000 r-xp 00000000 08:11 15271308   /usr/lib/libcrypto++.so.7.0.0
b7eab000-b7ee0000 r--p 003bb000 08:11 15271308   /usr/lib/libcrypto++.so.7.0.0
b7ee0000-b7ee3000 rw-p 003f0000 08:11 15271308   /usr/lib/libcrypto++.so.7.0.0
b7ee3000-b7ee6000 rw-p b7ee3000 00:00 0
b7ee6000-b7efa000 r-xp 00000000 08:11 15270039   /usr/lib/libz.so.1.2.3.3
b7efa000-b7efc000 rw-p 00013000 08:11 15270039   /usr/lib/libz.so.1.2.3.3
b7efc000-b7efd000 rw-p b7efc000 00:00 0
b7efd000-b7fd9000 r-xp 00000000 08:11 15272892   /usr/lib/libbfd-2.18.93.20081009.so
b7fd9000-b7fe3000 r--p 000dc000 08:11 15272892   /usr/lib/libbfd-2.18.93.20081009.so
b7fe3000-b7fe5000 rw-p 000e6000 08:11 15272892   /usr/lib/libbfd-2.18.93.20081009.so
b7fe5000-b7fe9000 rw-p b7fe5000 00:00 0
b7fe9000-b7ffe000 r-xp 00000000 08:11 7504262    /lib/tls/i686/cmov/libpthread-2.8.90.so
b7ffe000-b7fff000 r--p 00014000 08:11 7504262    /lib/tls/i686/cmov/libpthread-2.8.90.so
b7fff000-b8000000 rw-p 00015000 08:11 7504262    /lib/tls/i686/cmov/libpthread-2.8.90.so
b8000000-b8002000 rw-p b8000000 00:00 0
b8002000-b8003000 r--p 00000000 08:11 15295681   /usr/lib/locale/nl_NL.utf8/LC_PAPER
b8003000-b8004000 r--p 00000000 08:11 15295426   /usr/lib/locale/nl_NL.utf8/LC_NAME
b8004000-b8005000 r--p 00000000 08:11 15426939   /usr/lib/locale/nl_NL.utf8/LC_ADDRESS
b8005000-b8006000 r--p 00000000 08:11 15426940   /usr/lib/locale/nl_NL.utf8/LC_TELEPHONE
b8006000-b8007000 r--p 00000000 08:11 15295677   /usr/lib/locale/nl_NL.utf8/LC_MEASUREMENT
b8007000-b8008000 r--p 00000000 08:11 15426941   /usr/lib/locale/nl_NL.utf8/LC_IDENTIFICATION
b8008000-b800a000 r-xp 00000000 08:11 15278949   /usr/lib/gconv/UTF-32.so
b800a000-b800b000 r--p 00001000 08:11 15278949   /usr/lib/gconv/UTF-32.so
b800b000-b800c000 rw-p 00002000 08:11 15278949   /usr/lib/gconv/UTF-32.so
b800c000-b8013000 r--s 00000000 08:11 15278953   /usr/lib/gconv/gconv-modules.cache
b8013000-b8015000 rw-p b8013000 00:00 0
b8015000-b802f000 r-xp 00000000 08:11 7487687    /lib/ld-2.8.90.so
b802f000-b8030000 r-xp b802f000 00:00 0          [vdso]
b8030000-b8031000 r--p 0001a000 08:11 7487687    /lib/ld-2.8.90.so
b8031000-b8032000 rw-p 0001b000 08:11 7487687    /lib/ld-2.8.90.so
bf916000-bf932000 rw-p bffe4000 00:00 0          [stack]

Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: p2k on April 21, 2009, 08:42:27 AM
Hello!

My amule crashes after a day with the notification

Current version is: aMule 2.2.3 using wxGTK2 v2.8.9
Running on: Linux 2.6.27-11-generic x86_64

[2] CamuleApp::OnFatalException() in amule [0x449cef]
[3] wxFatalSignalHandler in /usr/lib/libwx_baseu-2.8.so.0[0x7f19046aa90c]
[4] ?? in /lib/libpthread.so.0 [0x7f1905d740f0]
[5] ?? in [0x225b230]

Does somebody know what to do then?

Best regards
napterk
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 23, 2009, 06:54:40 PM
Hello napterk,

You could upgrade to 2.2.4, as they have fixed some bugs causing
(expanding virtual memory-related) crashes.
In my experience, 2.2.4 is more stable than 2.2.3.

Best regards,
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 27, 2009, 05:56:22 PM
I experienced a new type of crash:

Program received signal SIGILL, Illegal instruction.
[Switching to Thread 0xb6738700 (LWP 17090)]
0x0a33e714 in ?? ()

$ ps axl | grep amule
Code: [Select]
0  1000 16991 16940  20   0 204504 199736 poll  S+   pts/0      0:03 gdb amule
0  1000 17090 16991  20   0 271392 198936 ptrace Tl  pts/0     85:53 /usr/bin/amule
0  1000 19694 19574  20   0   3236   800 pipe_w S+   pts/1      0:00 grep amule

$ free
Code: [Select]
             total       used       free     shared    buffers     cached
Mem:       3111840    2988136     123704          0      36764    1721376
-/+ buffers/cache:    1229996    1881844
Swap:      9100780     623196    8477584

(gdb) bt
Code: [Select]
#0  0x0a33e714 in ?? ()
#1  0xb6d5c4af in gdk_io_invoke (source=0xa91c418,
    condition=<value optimized out>, data=0x2)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
#2  0xb6afa71d in g_io_unix_dispatch (source=0xa4a2a20,
    callback=0xb6d5c450 <gdk_io_invoke>, user_data=0x9e09828)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
#3  0xb6ac3718 in IA__g_main_context_dispatch (context=0x8fcff60)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
#4  0xb6ac6dc3 in g_main_context_iterate (context=0x8fcff60, block=1,
    dispatch=1, self=0x8fd1510)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
#5  0xb6ac72e2 in IA__g_main_loop_run (loop=0x99768c0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
#6  0xb6ef53a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
#7  0xb771210b in wxEventLoop::Run (this=0x99768d0)
    at ../src/gtk/evtloop.cpp:76
#8  0xb77b63dc in wxAppBase::MainLoop (this=0x8fcfe18)
    at ../src/common/appcmn.cpp:312
#9  0xb77b6131 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
#10 0xb74ab3fa in wxEntry (argc=@0xb75a36cc, argv=0x8fbe480)
    at ../src/common/init.cpp:460
---Type <return> to continue, or q <return> to quit---
#11 0xb74ab4b7 in wxEntry (argc=@0xbf9bd750, argv=0xbf9bd7d4)
    at ../src/common/init.cpp:472
#12 0x082be4c0 in main (argc=1, argv=0xb6b40460) at ../../src/amule-gui.cpp:94

(gdb) bt full
Code: [Select]
#0  0x0a33e714 in ?? ()
No symbol table info available.
#1  0xb6d5c4af in gdk_io_invoke (source=0xa91c418,
    condition=<value optimized out>, data=0x2)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = 171173488
#2  0xb6afa71d in g_io_unix_dispatch (source=0xa4a2a20,
    callback=0xb6d5c450 <gdk_io_invoke>, user_data=0x9e09828)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 0
#3  0xb6ac3718 in IA__g_main_context_dispatch (context=0x8fcff60)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#4  0xb6ac6dc3 in g_main_context_iterate (context=0x8fcff60, block=1,
    dispatch=1, self=0x8fd1510)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 0
timeout = 0
some_ready = 1
nfds = 113
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xb25b6fa0
__PRETTY_FUNCTION__ = "g_main_context_iterate"
---Type <return> to continue, or q <return> to quit---
#5  0xb6ac72e2 in IA__g_main_loop_run (loop=0x99768c0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0x8fd1510
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#6  0xb6ef53a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0x99768d0
loop = (GMainLoop *) 0x99768c0
#7  0xb771210b in wxEventLoop::Run (this=0x99768d0)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#8  0xb77b63dc in wxAppBase::MainLoop (this=0x8fcfe18)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0x99768d0}, m_pp = 0x8fcfe58,
  m_pOld = 0x0}
#9  0xb77b6131 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
No locals.
#10 0xb74ab3fa in wxEntry (argc=@0xb75a36cc, argv=0x8fbe480)
    at ../src/common/init.cpp:460
No locals.
---Type <return> to continue, or q <return> to quit---
#11 0xb74ab4b7 in wxEntry (argc=@0xbf9bd750, argv=0xbf9bd7d4)
    at ../src/common/init.cpp:472
No locals.
#12 0x082be4c0 in main (argc=1, argv=0xb6b40460) at ../../src/amule-gui.cpp:94
No locals.

(gdb) thread apply all bt full
Code: [Select]
Thread 5 (Thread 0xb45aeb90 (LWP 17154)):
#0  0xb7fbc430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7f803a2 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
   from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0xb751c6e1 in wxConditionInternal::WaitTimeout (this=0x9040388,
    milliseconds=100) at ../src/unix/threadpsx.cpp:405
tspec = {tv_sec = 1240821511, tv_nsec = 504000000}
err = <value optimized out>
#3  0xb751c76a in wxCondition::WaitTimeout (this=0x9001bf4, milliseconds=100)
    at ../include/wx/thrimpl.cpp:256
__FUNCTION__ = "WaitTimeout"
#4  0xb751e524 in wxSemaphoreInternal::WaitTimeout (this=0x9001bf0,
    milliseconds=100) at ../src/unix/threadpsx.cpp:552
remainingTime = -516
locker = {m_isOk = true, m_mutex = @0x9001bf0}
#5  0xb751e5aa in wxSemaphore::WaitTimeout (this=0x9969df0, milliseconds=100)
    at ../include/wx/thrimpl.cpp:320
__FUNCTION__ = "WaitTimeout"
#6  0x084093fc in CTimerThread::Entry (this=0x9969dd0)
    at ../../src/Timer.cpp:64
---Type <return> to continue, or q <return> to quit---
now = 3870930156
sinceLast = 0
timeout = 100
evt = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x85ed7a8,
      static ms_classInfo = {m_className = 0xb75501a4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7a4d8cc, m_next = 0xb75a48c4,
        static sm_classTable = 0x8fa23e8}, m_refData = 0x0},
    m_eventObject = 0x0, m_eventType = 10244, m_timeStamp = 0, m_id = 6128,
    m_callbackUserData = 0x0, m_propagationLevel = 0, m_skipped = false,
    m_isCommandEvent = false, static ms_classInfo = {m_className = 0xb7561708,
      m_objectSize = 36, m_objectConstructor = 0, m_baseInfo1 = 0xb75a4858,
      m_baseInfo2 = 0x0, static sm_first = 0xb7a4d8cc, m_next = 0xb75a5908,
      static sm_classTable = 0x8fa23e8}}, <No data fields>}
lastEvent = 3870930156
#7  0xb751f036 in wxThreadInternal::PthreadStart (thread=0x9969dd0)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0x996fb68
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#8  0xb751f13d in wxPthreadStart (ptr=0x9969dd0)
    at ../src/unix/threadpsx.cpp:718
---Type <return> to continue, or q <return> to quit---
No locals.
#9  0xb7f7c50f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#10 0xb7251a0e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 3 (Thread 0xb55b0b90 (LWP 17143)):
#0  0xb7fbc430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7f83906 in nanosleep () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0xb7526168 in wxMicroSleep (microseconds=0) at ../src/unix/utilsunx.cpp:191
tmReq = {tv_sec = 0, tv_nsec = 4000000}
#3  0xb7526191 in wxMilliSleep (milliseconds=4) at ../src/unix/utilsunx.cpp:212
No locals.
#4  0xb751c41d in wxThread::Sleep (milliseconds=4)
    at ../src/unix/threadpsx.cpp:986
No locals.
#5  0x0820fa9e in UploadBandwidthThrottler::Entry (this=0x979fa00)
    at ../../src/UploadBandwidthThrottler.cpp:320
timeSinceLastLoop = 1
minFragSize = 1300
doubleSendSize = 2600
---Type <return> to continue, or q <return> to quit---
bytesToSpend = 38912
sleepTime = 5
thisLoopTick = 3870930154
TIME_BETWEEN_UPLOAD_LOOPS = 1
lastLoopTick = 3870930154
realBytesToSpend = 28672999
allowedDataRate = 10240000
rememberedSlotCounter = 1
extraSleepTime = 5
sendLock = {m_isOk = false, m_mutex = @0xb7f8bff4}
#6  0xb751f036 in wxThreadInternal::PthreadStart (thread=0x979fa00)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0x97cbb70
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#7  0xb751f13d in wxPthreadStart (ptr=0x979fa00)
    at ../src/unix/threadpsx.cpp:718
No locals.
#8  0xb7f7c50f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#9  0xb7251a0e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
---Type <return> to continue, or q <return> to quit---

Thread 1 (Thread 0xb6738700 (LWP 17090)):
#0  0x0a33e714 in ?? ()
No symbol table info available.
#1  0xb6d5c4af in gdk_io_invoke (source=0xa91c418,
    condition=<value optimized out>, data=0x2)
    at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
gdk_cond = 171173488
#2  0xb6afa71d in g_io_unix_dispatch (source=0xa4a2a20,
    callback=0xb6d5c450 <gdk_io_invoke>, user_data=0x9e09828)
    at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
buffer_condition = 0
#3  0xb6ac3718 in IA__g_main_context_dispatch (context=0x8fcff60)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
No locals.
#4  0xb6ac6dc3 in g_main_context_iterate (context=0x8fcff60, block=1,
    dispatch=1, self=0x8fd1510)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
max_priority = 0
timeout = 0
some_ready = 1
nfds = 113
allocated_nfds = <value optimized out>
---Type <return> to continue, or q <return> to quit---
fds = (GPollFD *) 0xb25b6fa0
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#5  0xb6ac72e2 in IA__g_main_loop_run (loop=0x99768c0)
    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
self = (GThread *) 0x8fd1510
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#6  0xb6ef53a9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0x99768d0
loop = (GMainLoop *) 0x99768c0
#7  0xb771210b in wxEventLoop::Run (this=0x99768d0)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#8  0xb77b63dc in wxAppBase::MainLoop (this=0x8fcfe18)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0x99768d0}, m_pp = 0x8fcfe58,
  m_pOld = 0x0}
#9  0xb77b6131 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
No locals.
#10 0xb74ab3fa in wxEntry (argc=@0xb75a36cc, argv=0x8fbe480)
---Type <return> to continue, or q <return> to quit---
    at ../src/common/init.cpp:460
No locals.
#11 0xb74ab4b7 in wxEntry (argc=@0xbf9bd750, argv=0xbf9bd7d4)
    at ../src/common/init.cpp:472
No locals.
#12 0x082be4c0 in main (argc=1, argv=0xb6b40460) at ../../src/amule-gui.cpp:94
No locals.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 27, 2009, 05:57:36 PM
$ cat /proc/17090/maps
Part 1
Code: [Select]
ae900000-aeb00000 rw-p ae900000 00:00 0
aeb00000-aed00000 rw-p aeb00000 00:00 0
aed00000-aef00000 rw-p aed00000 00:00 0
aef00000-af100000 rw-p aef00000 00:00 0
af100000-af300000 rw-p af100000 00:00 0
af300000-af500000 rw-p af300000 00:00 0
af500000-af700000 rw-p af500000 00:00 0
af700000-af900000 rw-p af700000 00:00 0
af900000-afb00000 rw-p af900000 00:00 0
afb00000-afd00000 rw-p afb00000 00:00 0
afd00000-aff00000 rw-p afd00000 00:00 0
aff00000-b0100000 rw-p aff00000 00:00 0
b0100000-b0300000 rw-p b0100000 00:00 0
b0300000-b0500000 rw-p b0300000 00:00 0
b0500000-b0700000 rw-p b0500000 00:00 0
b0700000-b0900000 rw-p b0700000 00:00 0
b0900000-b0b00000 rw-p b0900000 00:00 0
b0b00000-b0d00000 rw-p b0b00000 00:00 0
b0d00000-b0f00000 rw-p b0d00000 00:00 0
b0f00000-b1100000 rw-p b0f00000 00:00 0
b1100000-b1300000 rw-p b1100000 00:00 0
b1300000-b1500000 rw-p b1300000 00:00 0
b1500000-b1700000 rw-p b1500000 00:00 0
b1700000-b1900000 rw-p b1700000 00:00 0
b1900000-b1a00000 rw-p b1900000 00:00 0
b1a00000-b1b00000 rw-p b1a00000 00:00 0
b1b00000-b1d00000 rw-p b1b00000 00:00 0
b1d00000-b1f00000 rw-p b1d00000 00:00 0
b1f00000-b2000000 rw-p b1f00000 00:00 0
b2100000-b21f8000 rw-p b2100000 00:00 0
b21f8000-b2200000 ---p b21f8000 00:00 0
b2300000-b2400000 rw-p b2300000 00:00 0
b2500000-b25fe000 rw-p b2500000 00:00 0
b25fe000-b2600000 ---p b25fe000 00:00 0
b2700000-b2800000 rw-p b2700000 00:00 0
b280c000-b3c21000 r--p 00000000 08:11 15392808   /usr/share/fonts/truetype/arphic/uming.ttc
b3c21000-b3d25000 rw-p b3c21000 00:00 0
b3d25000-b3dae000 r--p 00000000 08:11 15392785   /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-Bold.ttf
b3dae000-b3daf000 ---p b3dae000 00:00 0
b3daf000-b45af000 rw-p b3daf000 00:00 0
b45af000-b45b0000 ---p b45af000 00:00 0
b45b0000-b4db0000 rw-p b45b0000 00:00 0
b4db0000-b4db1000 ---p b4db0000 00:00 0
b4db1000-b55b1000 rw-p b4db1000 00:00 0
b55b1000-b55e2000 r-xp 00000000 08:11 15271619   /usr/lib/libcroco-0.6.so.3.0.1
b55e2000-b55e5000 rw-p 00030000 08:11 15271619   /usr/lib/libcroco-0.6.so.3.0.1
b55e5000-b55fd000 r-xp 00000000 08:11 15294697   /usr/lib/gio/modules/libgvfsdbus.so
b55fd000-b55fe000 r--p 00017000 08:11 15294697   /usr/lib/gio/modules/libgvfsdbus.so
b55fe000-b55ff000 rw-p 00018000 08:11 15294697   /usr/lib/gio/modules/libgvfsdbus.so
b55ff000-b560c000 r-xp 00000000 08:11 15270157   /usr/lib/libgvfscommon.so.0.0.0
b560c000-b560d000 r--p 0000d000 08:11 15270157   /usr/lib/libgvfscommon.so.0.0.0
b560d000-b560e000 rw-p 0000e000 08:11 15270157   /usr/lib/libgvfscommon.so.0.0.0
b561f000-b5655000 r-xp 00000000 08:11 7487615    /lib/libdbus-1.so.3.4.0
b5655000-b5656000 r--p 00035000 08:11 7487615    /lib/libdbus-1.so.3.4.0
b5656000-b5657000 rw-p 00036000 08:11 7487615    /lib/libdbus-1.so.3.4.0
b565c000-b566b000 r-xp 00000000 08:11 7488081    /lib/libbz2.so.1.0.4
b566b000-b566c000 r--p 0000f000 08:11 7488081    /lib/libbz2.so.1.0.4
b566c000-b566d000 rw-p 00010000 08:11 7488081    /lib/libbz2.so.1.0.4
b566d000-b569d000 r-xp 00000000 08:11 15271251   /usr/lib/libgsf-1.so.114.0.8
b569d000-b569f000 r--p 0002f000 08:11 15271251   /usr/lib/libgsf-1.so.114.0.8
b569f000-b56a0000 rw-p 00031000 08:11 15271251   /usr/lib/libgsf-1.so.114.0.8
b56a0000-b56a1000 rw-p b56a0000 00:00 0
b56a1000-b56d2000 r-xp 00000000 08:11 15270040   /usr/lib/librsvg-2.so.2.22.3
b56d2000-b56d3000 r--p 00030000 08:11 15270040   /usr/lib/librsvg-2.so.2.22.3
b56d3000-b56d4000 rw-p 00031000 08:11 15270040   /usr/lib/librsvg-2.so.2.22.3
b56e5000-b56fc000 r--s 00000000 08:11 15344031   /usr/share/mime/mime.cache
b56fc000-b57a7000 r--p 00000000 08:11 15483943   /usr/share/icons/Tangerine/icon-theme.cache
b57a7000-b58ab000 rw-p b57a7000 00:00 0
b58ab000-b5940000 r--p 00000000 08:11 15392784   /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf
b5940000-b59a0000 rw-s 00000000 00:09 32178196   /SYSV00000000 (deleted)
b59a0000-b5a00000 rw-s 00000000 00:09 32145424   /SYSV00000000 (deleted)
b5a00000-b5afc000 rw-p b5a00000 00:00 0
b5afc000-b5b00000 ---p b5afc000 00:00 0
b5b03000-b5b05000 r-xp 00000000 08:11 7504267    /lib/tls/i686/cmov/libutil-2.8.90.so
b5b05000-b5b06000 r--p 00001000 08:11 7504267    /lib/tls/i686/cmov/libutil-2.8.90.so
b5b06000-b5b07000 rw-p 00002000 08:11 7504267    /lib/tls/i686/cmov/libutil-2.8.90.so
b5b14000-b5b15000 rw-p b5b14000 00:00 0
b5b15000-b5b16000 r-xp 00000000 08:11 15294815   /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so
b5b16000-b5b17000 r--p 00000000 08:11 15294815   /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so
b5b17000-b5b18000 rw-p 00001000 08:11 15294815   /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so
b5b18000-b5b1a000 r-xp 00000000 08:11 15327946   /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
b5b1a000-b5b1b000 r--p 00001000 08:11 15327946   /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
b5b1b000-b5b1c000 rw-p 00002000 08:11 15327946   /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
b5b1c000-b5b22000 r--s 00000000 08:11 19407369   /var/cache/fontconfig/945677eb7aeaf62f1d50efc3fb3ec7d8-x86.cache-2
b5b22000-b5b25000 r--s 00000000 08:11 19407377   /var/cache/fontconfig/e383d7ea5fbe662a33d9b44caf393297-x86.cache-2
b5b25000-b5b28000 r--s 00000000 08:11 19407354   /var/cache/fontconfig/6eb3985aa4124903f6ff08ba781cd364-x86.cache-2
b5b28000-b5b2b000 r--s 00000000 08:11 19407373   /var/cache/fontconfig/a755afe4a08bf5b97852ceb7400b47bc-x86.cache-2
b5b2b000-b5b2e000 r--s 00000000 08:11 19407355   /var/cache/fontconfig/6d41288fd70b0be22e8c3a91e032eec0-x86.cache-2
b5b2e000-b5b31000 r--s 00000000 08:11 19407375   /var/cache/fontconfig/de156ccd2eddbdc19d37a45b8b2aac9c-x86.cache-2
b5b31000-b5b39000 r--s 00000000 08:11 19407378   /var/cache/fontconfig/e3de0de479f42330eadf588a55fb5bf4-x86.cache-2
b5b39000-b5b44000 r--s 00000000 08:11 19407374   /var/cache/fontconfig/0f34bcd4b6ee430af32735b75db7f02b-x86.cache-2
b5b44000-b5b47000 r--s 00000000 08:11 19407367   /var/cache/fontconfig/de9486f0b47a4d768a594cb4198cb1c6-x86.cache-2
b5b47000-b5b4e000 r--s 00000000 08:11 19407356   /var/cache/fontconfig/d52a8644073d54c13679302ca1180695-x86.cache-2
b5b4e000-b5b6d000 r-xp 00000000 08:11 15294850   /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
b5b6d000-b5b6e000 r--p 0001e000 08:11 15294850   /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
b5b6e000-b5b6f000 rw-p 0001f000 08:11 15294850   /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
b5b6f000-b5b7f000 r-xp 00000000 08:11 7504263    /lib/tls/i686/cmov/libresolv-2.8.90.so
b5b7f000-b5b80000 r--p 0000f000 08:11 7504263    /lib/tls/i686/cmov/libresolv-2.8.90.so
b5b80000-b5b81000 rw-p 00010000 08:11 7504263    /lib/tls/i686/cmov/libresolv-2.8.90.so
b5b81000-b5b83000 rw-p b5b81000 00:00 0
b5b83000-b5b85000 r--s 00000000 08:11 19407360   /var/cache/fontconfig/c69f04ab05004e31a6d5e715764f16d8-x86.cache-2
b5b85000-b5b86000 r--s 00000000 08:11 19407376   /var/cache/fontconfig/4c73fe0c47614734b17d736dbde7580a-x86.cache-2
b5b86000-b5b8c000 r--s 00000000 08:11 19407357   /var/cache/fontconfig/089dead882dea3570ffc31a9898cfb69-x86.cache-2
b5b8c000-b5b92000 r-xp 00000000 08:11 15294543   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-xpm.so
b5b92000-b5b93000 r--p 00005000 08:11 15294543   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-xpm.so
b5b93000-b5b94000 rw-p 00006000 08:11 15294543   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-xpm.so
b5b94000-b5b95000 ---p b5b94000 00:00 0
b5b95000-b6395000 rw-p b5b95000 00:00 0
b6395000-b639b000 r-xp 00000000 08:11 15271479   /usr/lib/libgailutil.so.18.0.1
b639b000-b639c000 r--p 00005000 08:11 15271479   /usr/lib/libgailutil.so.18.0.1
b639c000-b639d000 rw-p 00006000 08:11 15271479   /usr/lib/libgailutil.so.18.0.1
b639d000-b63cc000 r-xp 00000000 08:11 15270570   /usr/lib/libgnomecanvas-2.so.0.2001.0
b63cc000-b63cd000 r--p 0002e000 08:11 15270570   /usr/lib/libgnomecanvas-2.so.0.2001.0
b63cd000-b63ce000 rw-p 0002f000 08:11 15270570   /usr/lib/libgnomecanvas-2.so.0.2001.0
b63ce000-b640c000 r-xp 00000000 08:11 15271569   /usr/lib/libgnomeprintui-2-2.so.0.1.0
b640c000-b640d000 r--p 0003d000 08:11 15271569   /usr/lib/libgnomeprintui-2-2.so.0.1.0
b640d000-b640e000 rw-p 0003e000 08:11 15271569   /usr/lib/libgnomeprintui-2-2.so.0.1.0
b640e000-b6543000 r-xp 00000000 08:11 15271020   /usr/lib/libxml2.so.2.6.32
b6543000-b6544000 ---p 00135000 08:11 15271020   /usr/lib/libxml2.so.2.6.32
b6544000-b6548000 r--p 00135000 08:11 15271020   /usr/lib/libxml2.so.2.6.32
b6548000-b6549000 rw-p 00139000 08:11 15271020   /usr/lib/libxml2.so.2.6.32
b6549000-b654a000 rw-p b6549000 00:00 0
b654a000-b655f000 r-xp 00000000 08:11 15271916   /usr/lib/libart_lgpl_2.so.2.3.20
b655f000-b6561000 rw-p 00014000 08:11 15271916   /usr/lib/libart_lgpl_2.so.2.3.20
b6561000-b65c7000 r-xp 00000000 08:11 15272783   /usr/lib/libgnomeprint-2-2.so.0.1.0
b65c7000-b65c8000 ---p 00066000 08:11 15272783   /usr/lib/libgnomeprint-2-2.so.0.1.0
b65c8000-b65c9000 r--p 00066000 08:11 15272783   /usr/lib/libgnomeprint-2-2.so.0.1.0
b65c9000-b65ca000 rw-p 00067000 08:11 15272783   /usr/lib/libgnomeprint-2-2.so.0.1.0
b65ca000-b65d4000 r-xp 00000000 08:11 7504222    /lib/tls/i686/cmov/libnss_files-2.8.90.so
b65d4000-b65d5000 r--p 00009000 08:11 7504222    /lib/tls/i686/cmov/libnss_files-2.8.90.so
b65d5000-b65d6000 rw-p 0000a000 08:11 7504222    /lib/tls/i686/cmov/libnss_files-2.8.90.so
b65d6000-b65df000 r-xp 00000000 08:11 7504259    /lib/tls/i686/cmov/libnss_nis-2.8.90.so
b65df000-b65e0000 r--p 00008000 08:11 7504259    /lib/tls/i686/cmov/libnss_nis-2.8.90.so
b65e0000-b65e1000 rw-p 00009000 08:11 7504259    /lib/tls/i686/cmov/libnss_nis-2.8.90.so
b65e1000-b65f6000 r-xp 00000000 08:11 7504219    /lib/tls/i686/cmov/libnsl-2.8.90.so
b65f6000-b65f7000 r--p 00014000 08:11 7504219    /lib/tls/i686/cmov/libnsl-2.8.90.so
b65f7000-b65f8000 rw-p 00015000 08:11 7504219    /lib/tls/i686/cmov/libnsl-2.8.90.so
b65f8000-b65fa000 rw-p b65f8000 00:00 0
b65fa000-b6601000 r-xp 00000000 08:11 7504220    /lib/tls/i686/cmov/libnss_compat-2.8.90.so
b6601000-b6602000 r--p 00006000 08:11 7504220    /lib/tls/i686/cmov/libnss_compat-2.8.90.so
b6602000-b6603000 rw-p 00007000 08:11 7504220    /lib/tls/i686/cmov/libnss_compat-2.8.90.so
b6603000-b6604000 r--s 00000000 08:11 19406911   /var/cache/fontconfig/4794a0821666d79190d59a36cb4f44b5-x86.cache-2
b6604000-b6606000 r--s 00000000 08:11 19407340   /var/cache/fontconfig/e13b20fdb08344e0e664864cc2ede53d-x86.cache-2
b6606000-b6609000 rw-s 00000000 00:09 32210965   /SYSV00000000 (deleted)
b6609000-b660d000 r-xp 00000000 08:11 7504221    /lib/tls/i686/cmov/libnss_dns-2.8.90.so
b660d000-b660e000 r--p 00003000 08:11 7504221    /lib/tls/i686/cmov/libnss_dns-2.8.90.so
b660e000-b660f000 rw-p 00004000 08:11 7504221    /lib/tls/i686/cmov/libnss_dns-2.8.90.so
b660f000-b6611000 r-xp 00000000 08:11 7487583    /lib/libnss_mdns4_minimal.so.2
b6611000-b6612000 rw-p 00001000 08:11 7487583    /lib/libnss_mdns4_minimal.so.2
b6612000-b6614000 rw-p b6612000 00:00 0
b6614000-b6615000 r--p 00000000 08:11 15295427   /usr/lib/locale/nl_NL.utf8/LC_NUMERIC
b6615000-b6616000 r--p 00000000 08:11 15426937   /usr/lib/locale/nl_NL.utf8/LC_TIME
b6616000-b66f7000 r--p 00000000 08:11 15295674   /usr/lib/locale/nl_NL.utf8/LC_COLLATE
b66f7000-b66f8000 r--p 00000000 08:11 15426938   /usr/lib/locale/nl_NL.utf8/LC_MONETARY
b66f8000-b66f9000 r--p 00000000 08:11 15295227   /usr/lib/locale/nl_NL.utf8/LC_MESSAGES/SYS_LC_MESSAGES
b66f9000-b6738000 r--p 00000000 08:11 15295675   /usr/lib/locale/nl_NL.utf8/LC_C


Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 27, 2009, 05:57:53 PM
Part 2
Code: [Select]
TYPE
b6738000-b673c000 rw-p b6738000 00:00 0
b673c000-b6740000 r-xp 00000000 08:11 15270153   /usr/lib/libXdmcp.so.6.0.0
b6740000-b6741000 rw-p 00003000 08:11 15270153   /usr/lib/libXdmcp.so.6.0.0
b6741000-b6743000 r-xp 00000000 08:11 15270151   /usr/lib/libXau.so.6.0.0
b6743000-b6744000 rw-p 00001000 08:11 15270151   /usr/lib/libXau.so.6.0.0
b6744000-b674a000 r-xp 00000000 08:11 15271817   /usr/lib/libxcb-render.so.0.0.0
b674a000-b674b000 r--p 00005000 08:11 15271817   /usr/lib/libxcb-render.so.0.0.0
b674b000-b674c000 rw-p 00006000 08:11 15271817   /usr/lib/libxcb-render.so.0.0.0
b674c000-b674f000 r-xp 00000000 08:11 15271819   /usr/lib/libxcb-render-util.so.0.0.0
b674f000-b6750000 r--p 00002000 08:11 15271819   /usr/lib/libxcb-render-util.so.0.0.0
b6750000-b6751000 rw-p 00003000 08:11 15271819   /usr/lib/libxcb-render-util.so.0.0.0
b6751000-b6752000 rw-p b6751000 00:00 0
b6752000-b6791000 r-xp 00000000 08:11 15271815   /usr/lib/libpixman-1.so.0.12.0
b6791000-b6793000 r--p 0003e000 08:11 15271815   /usr/lib/libpixman-1.so.0.12.0
b6793000-b6794000 rw-p 00040000 08:11 15271815   /usr/lib/libpixman-1.so.0.12.0
b6794000-b67ab000 r-xp 00000000 08:11 15270845   /usr/lib/libxcb.so.1.0.0
b67ab000-b67ac000 r--p 00016000 08:11 15270845   /usr/lib/libxcb.so.1.0.0
b67ac000-b67ad000 rw-p 00017000 08:11 15270845   /usr/lib/libxcb.so.1.0.0
b67ad000-b67ae000 r-xp 00000000 08:11 15270854   /usr/lib/libxcb-xlib.so.0.0.0
b67ae000-b67af000 r--p 00000000 08:11 15270854   /usr/lib/libxcb-xlib.so.0.0.0
b67af000-b67b0000 rw-p 00001000 08:11 15270854   /usr/lib/libxcb-xlib.so.0.0.0
b67b0000-b67c5000 r-xp 00000000 08:11 15271181   /usr/lib/libICE.so.6.3.0
b67c5000-b67c6000 rw-p 00014000 08:11 15271181   /usr/lib/libICE.so.6.3.0
b67c6000-b67c8000 rw-p b67c6000 00:00 0
b67c8000-b67f0000 r-xp 00000000 08:11 7487563    /lib/libpcre.so.3.12.1
b67f0000-b67f1000 r--p 00027000 08:11 7487563    /lib/libpcre.so.3.12.1
b67f1000-b67f2000 rw-p 00028000 08:11 7487563    /lib/libpcre.so.3.12.1
b67f2000-b67f3000 rw-p b67f2000 00:00 0
b67f3000-b6817000 r-xp 00000000 08:11 15270076   /usr/lib/libexpat.so.1.5.2
b6817000-b6819000 r--p 00023000 08:11 15270076   /usr/lib/libexpat.so.1.5.2
b6819000-b681a000 rw-p 00025000 08:11 15270076   /usr/lib/libexpat.so.1.5.2
b681a000-b6832000 r-xp 00000000 08:11 7487527    /lib/libselinux.so.1
b6832000-b6833000 r--p 00017000 08:11 7487527    /lib/libselinux.so.1
b6833000-b6834000 rw-p 00018000 08:11 7487527    /lib/libselinux.so.1
b6834000-b683c000 r-xp 00000000 08:11 15271224   /usr/lib/libXcursor.so.1.0.2
b683c000-b683d000 rw-p 00007000 08:11 15271224   /usr/lib/libXcursor.so.1.0.2
b683d000-b6842000 r-xp 00000000 08:11 15271241   /usr/lib/libXrandr.so.2.1.0
b6842000-b6843000 r--p 00005000 08:11 15271241   /usr/lib/libXrandr.so.2.1.0
b6843000-b6844000 rw-p 00006000 08:11 15271241   /usr/lib/libXrandr.so.2.1.0
b6844000-b684c000 r-xp 00000000 08:11 15270301   /usr/lib/libXi.so.6.0.0
b684c000-b684d000 r--p 00007000 08:11 15270301   /usr/lib/libXi.so.6.0.0
b684d000-b684e000 rw-p 00008000 08:11 15270301   /usr/lib/libXi.so.6.0.0
b684e000-b684f000 rw-p b684e000 00:00 0
b684f000-b6857000 r-xp 00000000 08:11 15270900   /usr/lib/libXrender.so.1.3.0
b6857000-b6858000 r--p 00007000 08:11 15270900   /usr/lib/libXrender.so.1.3.0
b6858000-b6859000 rw-p 00008000 08:11 15270900   /usr/lib/libXrender.so.1.3.0
b6859000-b6866000 r-xp 00000000 08:11 15270035   /usr/lib/libXext.so.6.4.0
b6866000-b6868000 rw-p 0000c000 08:11 15270035   /usr/lib/libXext.so.6.4.0
b6868000-b68d8000 r-xp 00000000 08:11 15271821   /usr/lib/libcairo.so.2.10800.0
b68d8000-b68da000 r--p 0006f000 08:11 15271821   /usr/lib/libcairo.so.2.10800.0
b68da000-b68db000 rw-p 00071000 08:11 15271821   /usr/lib/libcairo.so.2.10800.0
b68db000-b68df000 r-xp 00000000 08:11 15271234   /usr/lib/libXfixes.so.3.1.0
b68df000-b68e0000 rw-p 00003000 08:11 15271234   /usr/lib/libXfixes.so.3.1.0
b68e0000-b68e2000 r-xp 00000000 08:11 15271221   /usr/lib/libXdamage.so.1.1.0
b68e2000-b68e3000 rw-p 00001000 08:11 15271221   /usr/lib/libXdamage.so.1.1.0
b68e3000-b68e4000 rw-p b68e3000 00:00 0
b68e4000-b68e6000 r-xp 00000000 08:11 15271890   /usr/lib/libXcomposite.so.1.0.0
b68e6000-b68e7000 r--p 00001000 08:11 15271890   /usr/lib/libXcomposite.so.1.0.0
b68e7000-b68e8000 rw-p 00002000 08:11 15271890   /usr/lib/libXcomposite.so.1.0.0
b68e8000-b69d3000 r-xp 00000000 08:11 15270878   /usr/lib/libX11.so.6.2.0
b69d3000-b69d4000 r--p 000ea000 08:11 15270878   /usr/lib/libX11.so.6.2.0
b69d4000-b69d6000 rw-p 000eb000 08:11 15270878   /usr/lib/libX11.so.6.2.0
b69d6000-b69d7000 rw-p b69d6000 00:00 0
b69d7000-b69e0000 r-xp 00000000 08:11 15271988   /usr/lib/libpangocairo-1.0.so.0.2202.0
b69e0000-b69e1000 r--p 00008000 08:11 15271988   /usr/lib/libpangocairo-1.0.so.0.2202.0
b69e1000-b69e2000 rw-p 00009000 08:11 15271988   /usr/lib/libpangocairo-1.0.so.0.2202.0
b69e2000-b6a34000 r-xp 00000000 08:11 15271453   /usr/lib/libtiff.so.4.2.1
b6a34000-b6a36000 r--p 00052000 08:11 15271453   /usr/lib/libtiff.so.4.2.1
b6a36000-b6a37000 rw-p 00054000 08:11 15271453   /usr/lib/libtiff.so.4.2.1
b6a37000-b6a38000 rw-p b6a37000 00:00 0
b6a38000-b6a57000 r-xp 00000000 08:11 15271751   /usr/lib/libjpeg.so.62.0.0
b6a57000-b6a58000 rw-p 0001e000 08:11 15271751   /usr/lib/libjpeg.so.62.0.0
b6a58000-b6a7c000 r-xp 00000000 08:11 15271301   /usr/lib/libpng12.so.0.27.0
b6a7c000-b6a7d000 r--p 00023000 08:11 15271301   /usr/lib/libpng12.so.0.27.0
b6a7d000-b6a7e000 rw-p 00024000 08:11 15271301   /usr/lib/libpng12.so.0.27.0
b6a7e000-b6a85000 r-xp 00000000 08:11 15270840   /usr/lib/libSM.so.6.0.0
b6a85000-b6a86000 r--p 00006000 08:11 15270840   /usr/lib/libSM.so.6.0.0
b6a86000-b6a87000 rw-p 00007000 08:11 15270840   /usr/lib/libSM.so.6.0.0
b6a87000-b6a89000 r-xp 00000000 08:11 15271225   /usr/lib/libXinerama.so.1.0.0
b6a89000-b6a8a000 rw-p 00001000 08:11 15271225   /usr/lib/libXinerama.so.1.0.0
b6a8a000-b6b3f000 r-xp 00000000 08:11 15271534   /usr/lib/libglib-2.0.so.0.1800.2
b6b3f000-b6b40000 r--p 000b4000 08:11 15271534   /usr/lib/libglib-2.0.so.0.1800.2
b6b40000-b6b41000 rw-p 000b5000 08:11 15271534   /usr/lib/libglib-2.0.so.0.1800.2
b6b41000-b6b48000 r-xp 00000000 08:11 7504264    /lib/tls/i686/cmov/librt-2.8.90.so
b6b48000-b6b49000 r--p 00007000 08:11 7504264    /lib/tls/i686/cmov/librt-2.8.90.so
b6b49000-b6b4a000 rw-p 00008000 08:11 7504264    /lib/tls/i686/cmov/librt-2.8.90.so
b6b4a000-b6b4b000 rw-p b6b4a000 00:00 0
b6b4b000-b6b4f000 r-xp 00000000 08:11 15271550   /usr/lib/libgthread-2.0.so.0.1800.2
b6b4f000-b6b50000 r--p 00003000 08:11 15271550   /usr/lib/libgthread-2.0.so.0.1800.2
b6b50000-b6b51000 rw-p 00004000 08:11 15271550   /usr/lib/libgthread-2.0.so.0.1800.2
b6b51000-b6b54000 r-xp 00000000 08:11 15271540   /usr/lib/libgmodule-2.0.so.0.1800.2
b6b54000-b6b55000 r--p 00002000 08:11 15271540   /usr/lib/libgmodule-2.0.so.0.1800.2
b6b55000-b6b56000 rw-p 00003000 08:11 15271540   /usr/lib/libgmodule-2.0.so.0.1800.2
b6b56000-b6b92000 r-xp 00000000 08:11 15271542   /usr/lib/libgobject-2.0.so.0.1800.2
b6b92000-b6b93000 r--p 0003b000 08:11 15271542   /usr/lib/libgobject-2.0.so.0.1800.2
b6b93000-b6b94000 rw-p 0003c000 08:11 15271542   /usr/lib/libgobject-2.0.so.0.1800.2
b6b94000-b6bbf000 r-xp 00000000 08:11 15270073   /usr/lib/libfontconfig.so.1.3.0
b6bbf000-b6bc0000 r--p 0002a000 08:11 15270073   /usr/lib/libfontconfig.so.1.3.0
b6bc0000-b6bc1000 rw-p 0002b000 08:11 15270073   /usr/lib/libfontconfig.so.1.3.0
b6bc1000-b6c32000 r-xp 00000000 08:11 15270721   /usr/lib/libfreetype.so.6.3.18
b6c32000-b6c36000 r--p 00070000 08:11 15270721   /usr/lib/libfreetype.so.6.3.18
b6c36000-b6c37000 rw-p 00074000 08:11 15270721   /usr/lib/libfreetype.so.6.3.18
b6c37000-b6c77000 r-xp 00000000 08:11 15271329   /usr/lib/libpango-1.0.so.0.2202.0
b6c77000-b6c78000 ---p 00040000 08:11 15271329   /usr/lib/libpango-1.0.so.0.2202.0
b6c78000-b6c79000 r--p 00040000 08:11 15271329   /usr/lib/libpango-1.0.so.0.2202.0
b6c79000-b6c7a000 rw-p 00041000 08:11 15271329   /usr/lib/libpango-1.0.so.0.2202.0
b6c7a000-b6c7b000 rw-p b6c7a000 00:00 0
b6c7b000-b6ce0000 r-xp 00000000 08:11 15271504   /usr/lib/libgio-2.0.so.0.1800.2
b6ce0000-b6ce1000 ---p 00065000 08:11 15271504   /usr/lib/libgio-2.0.so.0.1800.2
b6ce1000-b6ce2000 r--p 00065000 08:11 15271504   /usr/lib/libgio-2.0.so.0.1800.2
b6ce2000-b6ce3000 rw-p 00066000 08:11 15271504   /usr/lib/libgio-2.0.so.0.1800.2
b6ce3000-b6cfb000 r-xp 00000000 08:11 15271669   /usr/lib/libgdk_pixbuf-2.0.so.0.1400.4
b6cfb000-b6cfc000 r--p 00017000 08:11 15271669   /usr/lib/libgdk_pixbuf-2.0.so.0.1400.4
b6cfc000-b6cfd000 rw-p 00018000 08:11 15271669   /usr/lib/libgdk_pixbuf-2.0.so.0.1400.4
b6cfd000-b6d23000 r-xp 00000000 08:11 15271989   /usr/lib/libpangoft2-1.0.so.0.2202.0
b6d23000-b6d24000 r--p 00025000 08:11 15271989   /usr/lib/libpangoft2-1.0.so.0.2202.0
b6d24000-b6d25000 rw-p 00026000 08:11 15271989   /usr/lib/libpangoft2-1.0.so.0.2202.0
b6d25000-b6d3e000 r-xp 00000000 08:11 15270990   /usr/lib/libatk-1.0.so.0.2409.1
b6d3e000-b6d40000 r--p 00018000 08:11 15270990   /usr/lib/libatk-1.0.so.0.2409.1
b6d40000-b6d41000 rw-p 0001a000 08:11 15270990   /usr/lib/libatk-1.0.so.0.2409.1
b6d41000-b6dc9000 r-xp 00000000 08:11 15271567   /usr/lib/libgdk-x11-2.0.so.0.1400.4
b6dc9000-b6dca000 ---p 00088000 08:11 15271567   /usr/lib/libgdk-x11-2.0.so.0.1400.4
b6dca000-b6dcc000 r--p 00088000 08:11 15271567   /usr/lib/libgdk-x11-2.0.so.0.1400.4
b6dcc000-b6dcd000 rw-p 0008a000 08:11 15271567   /usr/lib/libgdk-x11-2.0.so.0.1400.4
b6dcd000-b6dce000 rw-p b6dcd000 00:00 0
b6dce000-b7163000 r-xp 00000000 08:11 15271671   /usr/lib/libgtk-x11-2.0.so.0.1400.4
b7163000-b7164000 ---p 00395000 08:11 15271671   /usr/lib/libgtk-x11-2.0.so.0.1400.4
b7164000-b7168000 r--p 00395000 08:11 15271671   /usr/lib/libgtk-x11-2.0.so.0.1400.4
b7168000-b716a000 rw-p 00399000 08:11 15271671   /usr/lib/libgtk-x11-2.0.so.0.1400.4
b716a000-b716c000 rw-p b716a000 00:00 0
b716c000-b716e000 r-xp 00000000 08:11 7504213    /lib/tls/i686/cmov/libdl-2.8.90.so
b716e000-b716f000 r--p 00001000 08:11 7504213    /lib/tls/i686/cmov/libdl-2.8.90.so
b716f000-b7170000 rw-p 00002000 08:11 7504213    /lib/tls/i686/cmov/libdl-2.8.90.so
b7170000-b72c8000 r-xp 00000000 08:11 7504210    /lib/tls/i686/cmov/libc-2.8.90.so
b72c8000-b72ca000 r--p 00158000 08:11 7504210    /lib/tls/i686/cmov/libc-2.8.90.so
b72ca000-b72cb000 rw-p 0015a000 08:11 7504210    /lib/tls/i686/cmov/libc-2.8.90.so
b72cb000-b72ce000 rw-p b72cb000 00:00 0
b72ce000-b72db000 r-xp 00000000 08:11 7487509    /lib/libgcc_s.so.1
b72db000-b72dc000 r--p 0000c000 08:11 7487509    /lib/libgcc_s.so.1
b72dc000-b72dd000 rw-p 0000d000 08:11 7487509    /lib/libgcc_s.so.1
b72dd000-b7301000 r-xp 00000000 08:11 7504214    /lib/tls/i686/cmov/libm-2.8.90.so
b7301000-b7302000 r--p 00023000 08:11 7504214    /lib/tls/i686/cmov/libm-2.8.90.so
b7302000-b7303000 rw-p 00024000 08:11 7504214    /lib/tls/i686/cmov/libm-2.8.90.so
b7303000-b7304000 rw-p b7303000 00:00 0
b7304000-b73e7000 r-xp 00000000 08:11 15271202   /usr/lib/libstdc++.so.6.0.10
b73e7000-b73eb000 r--p 000e3000 08:11 15271202   /usr/lib/libstdc++.so.6.0.10
b73eb000-b73ec000 rw-p 000e7000 08:11 15271202   /usr/lib/libstdc++.so.6.0.10
b73ec000-b73f2000 rw-p b73ec000 00:00 0
b73f2000-b7418000 r-xp 00000000 08:11 15271167   /usr/lib/libGeoIP.so.1.4.4
b7418000-b7419000 r--p 00025000 08:11 15271167   /usr/lib/libGeoIP.so.1.4.4
b7419000-b741a000 rw-p 00026000 08:11 15271167   /usr/lib/libGeoIP.so.1.4.4
b741a000-b7598000 r-xp 00000000 08:11 15272509   /usr/lib/libwx_baseud-2.8.so.0.5.0
b7598000-b759c000 r--p 0017d000 08:11 15272509   /usr/lib/libwx_baseud-2.8.so.0.5.0
b759c000-b759e000 rw-p 00181000 08:11 15272509   /usr/lib/libwx_baseud-2.8.so.0.5.0
b759e000-b75a6000 rw-p b759e000 00:00 0
b75a6000-b75d3000 r-xp 00000000 08:11 15272510   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b75d3000-b75d4000 ---p 0002d000 08:11 15272510   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b75d4000-b75d5000 r--p 0002d000 08:11 15272510   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b75d5000-b75d6000 rw-p 0002e000 08:11 15272510   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b75d6000-b7951000 r-xp 00000000 08:11 15271028   /usr/lib/libwx_gtk2ud_core-2.8.so.0.5.0
b7951000-b7978000 r--p 0037a000 08:11 15271028   /usr/lib/libwx_gtk2ud_core-2.8.so.0.5.0
b7978000-b797d000 rw-p 003a1000 08:11 15271028   /usr/lib/libwx_gtk2ud_core-2.8.so.0.5.0
b797d000-b7984000 rw-p b797d000 00:00 0
b7984000-b7a45000 r-xp 00000000 08:11 15270699   /usr/lib/libwx_gtk2ud_adv-2.8.so.0.5.0
b7a45000-b7a4d000 r--p 000c1000 08:11 15270699   /usr/lib/libwx_gtk2ud_adv-2.8.so.0.5.0
b7a4d000-b7a4e000 rw-p 000c9000 08:11 15270699   /usr/lib/libwx_gtk2ud_adv-2.8.so.0.5.0
b7a4e000-b7a50000 rw-p b7a4e000 00:00 0
b7a50000-b7a58000 r-xp 00000000 08:11 15269911   /usr/lib/libixml.so.2.0.4
b7a58000-b7a59000 r--p 00007000 08:11 15269911   /usr/lib/libixml.so.2.0.4
b7a59000-b7a5a000 rw-p 00008000 08:11 15269911   /usr/lib/libixml.so.2.0.4
b7a5a000-b7a5e000 r-xp 00000000 08:11 15269967   /usr/lib/libthreadutil.so.2.2.3
b7a5e000-b7a5f000 r--p 00003000 08:11 15269967   /usr/lib/libthreadutil.so.2.2.3
b7a5f000-b7a60000 rw-p 00004000 08:11 15269967   /usr/lib/libthreadutil.so.2.2.3
b7a60000-b7a7a000 r-xp 00000000 08:11 15270052   /usr/lib/libupnp.so.3.0.5
b7a7a000-b7a7b000 r--p 00019000 08:11 15270052   /usr/lib/libupnp.so.3.0.5
b7a7b000-b7a7c000 rw-p 0001a000 08:11 15270052   /usr/lib/libupnp.so.3.0.5
b7a7c000-b7a7d000 rw-p b7a7c000 00:00 0
b7a7d000-b7e38000 r-xp 00000000 08:11 15271308   /usr/lib/libcrypto++.so.7.0.0
b7e38000-b7e6d000 r--p 003bb000 08:11 15271308   /usr/lib/libcrypto++.so.7.0.0
b7e6d000-b7e70000 rw-p 003f0000 08:11 15271308   /usr/lib/libcrypto++.so.7.0.0
b7e70000-b7e73000 rw-p b7e70000 00:00 0
b7e73000-b7e87000 r-xp 00000000 08:11 15270039   /usr/lib/libz.so.1.2.3.3
b7e87000-b7e89000 rw-p 00013000 08:11 15270039   /usr/lib/libz.so.1.2.3.3
b7e89000-b7e8a000 rw-p b7e89000 00:00 0
b7e8a000-b7f66000 r-xp 00000000 08:11 15272892   /usr/lib/libbfd-2.18.93.20081009.so
b7f66000-b7f70000 r--p 000dc000 08:11 15272892   /usr/lib/libbfd-2.18.93.20081009.so
b7f70000-b7f72000 rw-p 000e6000 08:11 15272892   /usr/lib/libbfd-2.18.93.20081009.so
b7f72000-b7f76000 rw-p b7f72000 00:00 0
b7f76000-b7f8b000 r-xp 00000000 08:11 7504262    /lib/tls/i686/cmov/libpthread-2.8.90.so
b7f8b000-b7f8c000 r--p 00014000 08:11 7504262    /lib/tls/i686/cmov/libpthread-2.8.90.so
b7f8c000-b7f8d000 rw-p 00015000 08:11 7504262    /lib/tls/i686/cmov/libpthread-2.8.90.so
b7f8d000-b7f8f000 rw-p b7f8d000 00:00 0
b7f8f000-b7f90000 r--p 00000000 08:11 15295681   /usr/lib/locale/nl_NL.utf8/LC_PAPER
b7f90000-b7f91000 r--p 00000000 08:11 15295426   /usr/lib/locale/nl_NL.utf8/LC_NAME
b7f91000-b7f92000 r--p 00000000 08:11 15426939   /usr/lib/locale/nl_NL.utf8/LC_ADDRESS
b7f92000-b7f93000 r--p 00000000 08:11 15426940   /usr/lib/locale/nl_NL.utf8/LC_TELEPHONE
b7f93000-b7f94000 r--p 00000000 08:11 15295677   /usr/lib/locale/nl_NL.utf8/LC_MEASUREMENT
b7f94000-b7f95000 r--p 00000000 08:11 15426941   /usr/lib/locale/nl_NL.utf8/LC_IDENTIFICATION
b7f95000-b7f97000 r-xp 00000000 08:11 15278949   /usr/lib/gconv/UTF-32.so
b7f97000-b7f98000 r--p 00001000 08:11 15278949   /usr/lib/gconv/UTF-32.so
b7f98000-b7f99000 rw-p 00002000 08:11 15278949   /usr/lib/gconv/UTF-32.so
b7f99000-b7fa0000 r--s 00000000 08:11 15278953   /usr/lib/gconv/gconv-modules.cache
b7fa0000-b7fa2000 rw-p b7fa0000 00:00 0
b7fa2000-b7fbc000 r-xp 00000000 08:11 7487687    /lib/ld-2.8.90.so
b7fbc000-b7fbd000 r-xp b7fbc000 00:00 0          [vdso]
b7fbd000-b7fbe000 r--p 0001a000 08:11 7487687    /lib/ld-2.8.90.so
b7fbe000-b7fbf000 rw-p 0001b000 08:11 7487687    /lib/ld-2.8.90.so
bf9a3000-bf9bf000 rw-p bffe4000 00:00 0          [stack]
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 28, 2009, 10:11:08 AM
Jaunty - Rev 9578 crashed:

Program received signal SIGABRT, Aborted.
[Switching to Thread 0xb67a2750 (LWP 15526)]
0xb80ce430 in __kernel_vsyscall ()

$ ps axl | grep amule
Code: [Select]
0  1000  7814  7768  20   0   3336   800 pipe_w S+   pts/1      0:00 grep amule
0  1000 15231 14575  20   0 227904 65192 poll   S+   pts/0      0:03 gdb amule
0  1000 15526 15231  20   0 3145724 1621980 ptrace Tl pts/0    18:41 /usr/bin/amule
$ free
Code: [Select]
             total       used       free     shared    buffers     cached
Mem:       3096856    2967148     129708          0      35052     736584
-/+ buffers/cache:    2195512     901344
Swap:      9100780    1842980    7257800

(gdb) bt
Code: [Select]
#0  0xb80ce430 in __kernel_vsyscall ()
#1  0xb72bd6d0 in *__GI_raise (sig=6)
    at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#2  0xb72bf098 in *__GI_abort () at abort.c:88
#3  0x0840fb3d in OnUnhandledException ()
    at ../../../../src/libs/common/MuleDebug.cpp:103
#4  0xb74e57d5 in __cxxabiv1::__terminate (
    handler=0x840f7cc <OnUnhandledException()>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
#5  0xb74e5812 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
#6  0xb74e594a in __cxa_throw (obj=0xb7515930, tinfo=0x8710c8c,
    dest=0xb74e5e80 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
#7  0xb74e5fa3 in operator new (sz=44)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
#8  0xb76ee149 in wxSocketEvent::Clone (this=0xbf8ebad0)
    at ../include/wx/socket.h:314
#9  0xb764a025 in wxEvtHandler::AddPendingEvent (this=0x8713600,
    event=@0xbf8ebad0) at ../src/common/event.cpp:1131
#10 0xb76eddb8 in wxSocketBase::OnRequest (this=0xaa391f8,
    notification=wxSOCKET_OUTPUT) at ../src/common/socket.cpp:1006
#11 0xb76edeb4 in wx_socket_callback (notification=GSOCK_OUTPUT,
---Type <return> to continue, or q <return> to quit---
    cdata=0xaa391f8 "\210\210O\b") at ../src/common/socket.cpp:942
#12 0xb76f272b in GSocket::Detected_Write (this=0xac69dc8)
    at ../src/unix/gsocket.cpp:1836
#13 0xb783cef7 in _GSocket_GDK_Input (data=0xac69dc8, source=43,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
#14 0xb6e6ac4f in gdk_io_invoke (source=0xaabff78,
    condition=<value optimized out>, data=0xac77e80)
    at /build/buildd/gtk+2.0-2.16.1/gdk/gdkevents.c:1013
#15 0xb6c00dad in g_io_unix_dispatch (source=0xa5cee70,
    callback=0xb6e6abf0 <gdk_io_invoke>, user_data=0xac77e80)
    at /build/buildd/glib2.0-2.20.1/glib/giounix.c:162
#16 0xb6bc9b88 in IA__g_main_context_dispatch (context=0x9ca1ff8)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:1814
#17 0xb6bcd0eb in g_main_context_iterate (context=0x9ca1ff8, block=1,
    dispatch=1, self=0x9ca3570)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2448
#18 0xb6bcd5ba in IA__g_main_loop_run (loop=0xa6b4678)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2656
#19 0xb700d7d9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.16.1/gtk/gtkmain.c:1205
#20 0xb783b41b in wxEventLoop::Run (this=0xa651360)
    at ../src/gtk/evtloop.cpp:76
#21 0xb78dfb3c in wxAppBase::MainLoop (this=0x9ca1e40)
---Type <return> to continue, or q <return> to quit---
    at ../src/common/appcmn.cpp:312
#22 0xb78df891 in wxAppBase::OnRun (this=0x6) at ../src/common/appcmn.cpp:367
#23 0xb75d37ca in wxEntry (argc=@0xb76cc6cc, argv=0x9c90480)
    at ../src/common/init.cpp:460
#24 0xb75d3887 in wxEntry (argc=@0xbf8ebe40, argv=0xbf8ebec4)
    at ../src/common/init.cpp:472
#25 0x082be768 in main (argc=0, argv=0x0) at ../../src/amule-gui.cpp:94

(gdb) bt full
Code: [Select]
#0  0xb80ce430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb72bd6d0 in *__GI_raise (sig=6)
    at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
resultvar = <value optimized out>
pid = -1220603916
selftid = 15526
#2  0xb72bf098 in *__GI_abort () at abort.c:88
act = {__sigaction_handler = {sa_handler = 0, sa_sigaction = 0},
  sa_mask = {__val = {0, 1, 1, 3077040056, 3213801712, 3213801700, 3077363992,
      4294967295, 2234848932, 3213801776, 3087976048, 134737372, 3213801624,
      0, 0, 0, 5, 3077328884, 3077328884, 1, 3213801672, 3076460707,
      3077363992, 3047229184, 4, 3077040052, 4294967295, 3213801888,
      3073387636, 4, 4, 4}}, sa_flags = -1081165592,
  sa_restorer = 0xb730352e <*__GI___libc_free+14>}
sigs = {__val = {32, 0 <repeats 31 times>}}
#3  0x0840fb3d in OnUnhandledException ()
    at ../../../../src/libs/common/MuleDebug.cpp:103
t = (class std::type_info *) 0x8710c8c
output = (FILE *) 0xb73f1560
#4  0xb74e57d5 in __cxxabiv1::__terminate (
    handler=0x840f7cc <OnUnhandledException()>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
---Type <return> to continue, or q <return> to quit---
No locals.
#5  0xb74e5812 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
No locals.
#6  0xb74e594a in __cxa_throw (obj=0xb7515930, tinfo=0x8710c8c,
    dest=0xb74e5e80 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
header = <value optimized out>
#7  0xb74e5fa3 in operator new (sz=44)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
handler = <value optimized out>
p = <value optimized out>
#8  0xb76ee149 in wxSocketEvent::Clone (this=0xbf8ebad0)
    at ../include/wx/socket.h:314
No locals.
#9  0xb764a025 in wxEvtHandler::AddPendingEvent (this=0x8713600,
    event=@0xbf8ebad0) at ../src/common/event.cpp:1131
eventCopy = <value optimized out>
__FUNCTION__ = "AddPendingEvent"
#10 0xb76eddb8 in wxSocketBase::OnRequest (this=0xaa391f8,
    notification=wxSOCKET_OUTPUT) at ../src/common/socket.cpp:1006
event = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x870c668,
      static ms_classInfo = {m_className = 0xb76796c4, m_objectSize = 8,
---Type <return> to continue, or q <return> to quit---
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7b778cc, m_next = 0xb76cd8c4,
        static sm_classTable = 0x9c743e8}, m_refData = 0x0},
    m_eventObject = 0xaa391f8, m_eventType = 10002, m_timeStamp = 0,
    m_id = 6123, m_callbackUserData = 0x0, m_propagationLevel = 0,
    m_skipped = false, m_isCommandEvent = false, static ms_classInfo = {
      m_className = 0xb768aef0, m_objectSize = 36, m_objectConstructor = 0,
      m_baseInfo1 = 0xb76cd858, m_baseInfo2 = 0x0,
      static sm_first = 0xb7b778cc, m_next = 0xb76ce908,
      static sm_classTable = 0x9c743e8}}, m_event = wxSOCKET_OUTPUT,
  m_clientData = 0x0, static ms_classInfo = {m_className = 0xb76f5068,
    m_objectSize = 44,
    m_objectConstructor = 0xb76ebe60 <wxSocketEvent::wxCreateObject()>,
    m_baseInfo1 = 0xb76ce920, m_baseInfo2 = 0x0, static sm_first = 0xb7b778cc,
    m_next = 0xb76fe54c, static sm_classTable = 0x9c743e8}}
flag = <value optimized out>
#11 0xb76edeb4 in wx_socket_callback (notification=GSOCK_OUTPUT,
    cdata=0xaa391f8 "\210\210O\b") at ../src/common/socket.cpp:942
No locals.
#12 0xb76f272b in GSocket::Detected_Write (this=0xac69dc8)
    at ../src/unix/gsocket.cpp:1836
No locals.
#13 0xb783cef7 in _GSocket_GDK_Input (data=0xac69dc8, source=43,
---Type <return> to continue, or q <return> to quit---
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
No locals.
#14 0xb6e6ac4f in gdk_io_invoke (source=0xaabff78,
    condition=<value optimized out>, data=0xac77e80)
    at /build/buildd/gtk+2.0-2.16.1/gdk/gdkevents.c:1013
gdk_cond = GDK_INPUT_WRITE
#15 0xb6c00dad in g_io_unix_dispatch (source=0xa5cee70,
    callback=0xb6e6abf0 <gdk_io_invoke>, user_data=0xac77e80)
    at /build/buildd/glib2.0-2.20.1/glib/giounix.c:162
buffer_condition = 6
#16 0xb6bc9b88 in IA__g_main_context_dispatch (context=0x9ca1ff8)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:1814
No locals.
#17 0xb6bcd0eb in g_main_context_iterate (context=0x9ca1ff8, block=1,
    dispatch=1, self=0x9ca3570)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2448
max_priority = 110
timeout = 0
some_ready = 1
nfds = 8
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xb00b208
__PRETTY_FUNCTION__ = "g_main_context_iterate"
---Type <return> to continue, or q <return> to quit---
#18 0xb6bcd5ba in IA__g_main_loop_run (loop=0xa6b4678)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2656
self = (GThread *) 0x9ca3570
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#19 0xb700d7d9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.16.1/gtk/gtkmain.c:1205
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0xa651360
loop = (GMainLoop *) 0xa6b4678
#20 0xb783b41b in wxEventLoop::Run (this=0xa651360)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#21 0xb78dfb3c in wxAppBase::MainLoop (this=0x9ca1e40)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0xa651360}, m_pp = 0x9ca1e80,
  m_pOld = 0x0}
#22 0xb78df891 in wxAppBase::OnRun (this=0x6) at ../src/common/appcmn.cpp:367
No locals.
#23 0xb75d37ca in wxEntry (argc=@0xb76cc6cc, argv=0x9c90480)
    at ../src/common/init.cpp:460
No locals.
---Type <return> to continue, or q <return> to quit---
#24 0xb75d3887 in wxEntry (argc=@0xbf8ebe40, argv=0xbf8ebec4)
    at ../src/common/init.cpp:472
No locals.
#25 0x082be768 in main (argc=0, argv=0x0) at ../../src/amule-gui.cpp:94
No locals.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 28, 2009, 10:12:43 AM
(gdb) thread apply all bt full
Code: [Select]
Thread 5 (Thread 0xb4694b90 (LWP 15575)):
#0  0xb80ce430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb80ab412 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
    at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_timedwait.S:179
No locals.
#2  0xb7645b51 in wxConditionInternal::WaitTimeout (this=0x9d2d2a0,
    milliseconds=100) at ../src/unix/threadpsx.cpp:405
tspec = {tv_sec = 1240864911, tv_nsec = 535000000}
err = <value optimized out>
#3  0xb7645bda in wxCondition::WaitTimeout (this=0xa689cfc, milliseconds=100)
    at ../include/wx/thrimpl.cpp:256
__FUNCTION__ = "WaitTimeout"
#4  0xb7647994 in wxSemaphoreInternal::WaitTimeout (this=0xa689cf8,
    milliseconds=100) at ../src/unix/threadpsx.cpp:552
remainingTime = -516
locker = {m_isOk = true, m_mutex = @0xa689cf8}
#5  0xb7647a1a in wxSemaphore::WaitTimeout (this=0xa6b4670, milliseconds=100)
    at ../include/wx/thrimpl.cpp:320
__FUNCTION__ = "WaitTimeout"
#6  0x08409694 in CTimerThread::Entry (this=0xa6b4650)
---Type <return> to continue, or q <return> to quit---
    at ../../src/Timer.cpp:64
now = 3914330187
sinceLast = 0
timeout = 100
evt = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x85edd48,
      static ms_classInfo = {m_className = 0xb76796c4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7b778cc, m_next = 0xb76cd8c4,
        static sm_classTable = 0x9c743e8}, m_refData = 0x0},
    m_eventObject = 0x0, m_eventType = 10244, m_timeStamp = 0, m_id = 6128,
    m_callbackUserData = 0x0, m_propagationLevel = 0, m_skipped = false,
    m_isCommandEvent = false, static ms_classInfo = {m_className = 0xb768aef0,
      m_objectSize = 36, m_objectConstructor = 0, m_baseInfo1 = 0xb76cd858,
      m_baseInfo2 = 0x0, static sm_first = 0xb7b778cc, m_next = 0xb76ce908,
      static sm_classTable = 0x9c743e8}}, <No data fields>}
lastEvent = 3914330187
#7  0xb76484a6 in wxThreadInternal::PthreadStart (thread=0xa6b4650)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0xa657b28
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#8  0xb76485ad in wxPthreadStart (ptr=0xa6b4650)
---Type <return> to continue, or q <return> to quit---
    at ../src/unix/threadpsx.cpp:718
No locals.
#9  0xb80a74ff in start_thread (arg=0xb4694b90) at pthread_create.c:297
__res = <value optimized out>
__ignore1 = <value optimized out>
__ignore2 = <value optimized out>
pd = (struct pthread *) 0xb4694b90
now = <value optimized out>
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {-1207209996, 0, 0,
        -1268169688, -1196701598, 2126829178}, mask_was_saved = 0}}, priv = {
    pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0,
      canceltype = 0}}}
not_first_call = <value optimized out>
robust = <value optimized out>
#10 0xb737649e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
No locals.

Thread 3 (Thread 0xb5696b90 (LWP 15573)):
#0  0xb80ce430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb80ae8f6 in nanosleep () from /lib/tls/i686/cmov/libpthread.so.0
No locals.
#2  0xb764f5d8 in wxMicroSleep (microseconds=0) at ../src/unix/utilsunx.cpp:191
---Type <return> to continue, or q <return> to quit---
tmReq = {tv_sec = 1, tv_nsec = 0}
#3  0xb764f601 in wxMilliSleep (milliseconds=1000)
    at ../src/unix/utilsunx.cpp:212
No locals.
#4  0xb764588d in wxThread::Sleep (milliseconds=1000)
    at ../src/unix/threadpsx.cpp:986
No locals.
#5  0x0820fd46 in UploadBandwidthThrottler::Entry (this=0xa495610)
    at ../../src/UploadBandwidthThrottler.cpp:320
timeSinceLastLoop = 0
minFragSize = 1300
doubleSendSize = 2600
bytesToSpend = 1681298
sleepTime = 1000
thisLoopTick = 3914329347
TIME_BETWEEN_UPLOAD_LOOPS = 1
lastLoopTick = 3914329347
realBytesToSpend = 31232999
allowedDataRate = 10240000
rememberedSlotCounter = 1
extraSleepTime = 1000
sendLock = {m_isOk = false, m_mutex = @0x0}
#6  0xb76484a6 in wxThreadInternal::PthreadStart (thread=0xa495610)
---Type <return> to continue, or q <return> to quit---
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0xa47dac8
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#7  0xb76485ad in wxPthreadStart (ptr=0xa495610)
    at ../src/unix/threadpsx.cpp:718
No locals.
#8  0xb80a74ff in start_thread (arg=0xb5696b90) at pthread_create.c:297
__res = <value optimized out>
__ignore1 = <value optimized out>
__ignore2 = <value optimized out>
pd = (struct pthread *) 0xb5696b90
now = <value optimized out>
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {-1207209996, 0, 0,
        -1251384280, -1192507296, 2126829178}, mask_was_saved = 0}}, priv = {
    pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0,
      canceltype = 0}}}
not_first_call = <value optimized out>
robust = <value optimized out>
#9  0xb737649e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
No locals.

---Type <return> to continue, or q <return> to quit---
Thread 1 (Thread 0xb67a2750 (LWP 15526)):
#0  0xb80ce430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb72bd6d0 in *__GI_raise (sig=6)
    at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
resultvar = <value optimized out>
pid = -1220603916
selftid = 15526
#2  0xb72bf098 in *__GI_abort () at abort.c:88
act = {__sigaction_handler = {sa_handler = 0, sa_sigaction = 0},
  sa_mask = {__val = {0, 1, 1, 3077040056, 3213801712, 3213801700, 3077363992,
      4294967295, 2234848932, 3213801776, 3087976048, 134737372, 3213801624,
      0, 0, 0, 5, 3077328884, 3077328884, 1, 3213801672, 3076460707,
      3077363992, 3047229184, 4, 3077040052, 4294967295, 3213801888,
      3073387636, 4, 4, 4}}, sa_flags = -1081165592,
  sa_restorer = 0xb730352e <*__GI___libc_free+14>}
sigs = {__val = {32, 0 <repeats 31 times>}}
#3  0x0840fb3d in OnUnhandledException ()
    at ../../../../src/libs/common/MuleDebug.cpp:103
t = (class std::type_info *) 0x8710c8c
output = (FILE *) 0xb73f1560
#4  0xb74e57d5 in __cxxabiv1::__terminate (
    handler=0x840f7cc <OnUnhandledException()>)
---Type <return> to continue, or q <return> to quit---
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
No locals.
#5  0xb74e5812 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
No locals.
#6  0xb74e594a in __cxa_throw (obj=0xb7515930, tinfo=0x8710c8c,
    dest=0xb74e5e80 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
header = <value optimized out>
#7  0xb74e5fa3 in operator new (sz=44)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
handler = <value optimized out>
p = <value optimized out>
#8  0xb76ee149 in wxSocketEvent::Clone (this=0xbf8ebad0)
    at ../include/wx/socket.h:314
No locals.
#9  0xb764a025 in wxEvtHandler::AddPendingEvent (this=0x8713600,
    event=@0xbf8ebad0) at ../src/common/event.cpp:1131
eventCopy = <value optimized out>
__FUNCTION__ = "AddPendingEvent"
#10 0xb76eddb8 in wxSocketBase::OnRequest (this=0xaa391f8,
    notification=wxSOCKET_OUTPUT) at ../src/common/socket.cpp:1006
event = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x870c668,
---Type <return> to continue, or q <return> to quit---
      static ms_classInfo = {m_className = 0xb76796c4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7b778cc, m_next = 0xb76cd8c4,
        static sm_classTable = 0x9c743e8}, m_refData = 0x0},
    m_eventObject = 0xaa391f8, m_eventType = 10002, m_timeStamp = 0,
    m_id = 6123, m_callbackUserData = 0x0, m_propagationLevel = 0,
    m_skipped = false, m_isCommandEvent = false, static ms_classInfo = {
      m_className = 0xb768aef0, m_objectSize = 36, m_objectConstructor = 0,
      m_baseInfo1 = 0xb76cd858, m_baseInfo2 = 0x0,
      static sm_first = 0xb7b778cc, m_next = 0xb76ce908,
      static sm_classTable = 0x9c743e8}}, m_event = wxSOCKET_OUTPUT,
  m_clientData = 0x0, static ms_classInfo = {m_className = 0xb76f5068,
    m_objectSize = 44,
    m_objectConstructor = 0xb76ebe60 <wxSocketEvent::wxCreateObject()>,
    m_baseInfo1 = 0xb76ce920, m_baseInfo2 = 0x0, static sm_first = 0xb7b778cc,
    m_next = 0xb76fe54c, static sm_classTable = 0x9c743e8}}
flag = <value optimized out>
#11 0xb76edeb4 in wx_socket_callback (notification=GSOCK_OUTPUT,
    cdata=0xaa391f8 "\210\210O\b") at ../src/common/socket.cpp:942
No locals.
#12 0xb76f272b in GSocket::Detected_Write (this=0xac69dc8)
    at ../src/unix/gsocket.cpp:1836
No locals.
---Type <return> to continue, or q <return> to quit---
#13 0xb783cef7 in _GSocket_GDK_Input (data=0xac69dc8, source=43,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
No locals.
#14 0xb6e6ac4f in gdk_io_invoke (source=0xaabff78,
    condition=<value optimized out>, data=0xac77e80)
    at /build/buildd/gtk+2.0-2.16.1/gdk/gdkevents.c:1013
gdk_cond = GDK_INPUT_WRITE
#15 0xb6c00dad in g_io_unix_dispatch (source=0xa5cee70,
    callback=0xb6e6abf0 <gdk_io_invoke>, user_data=0xac77e80)
    at /build/buildd/glib2.0-2.20.1/glib/giounix.c:162
buffer_condition = 6
#16 0xb6bc9b88 in IA__g_main_context_dispatch (context=0x9ca1ff8)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:1814
No locals.
#17 0xb6bcd0eb in g_main_context_iterate (context=0x9ca1ff8, block=1,
    dispatch=1, self=0x9ca3570)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2448
max_priority = 110
timeout = 0
some_ready = 1
nfds = 8
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xb00b208
---Type <return> to continue, or q <return> to quit---
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#18 0xb6bcd5ba in IA__g_main_loop_run (loop=0xa6b4678)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2656
self = (GThread *) 0x9ca3570
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#19 0xb700d7d9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.16.1/gtk/gtkmain.c:1205
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0xa651360
loop = (GMainLoop *) 0xa6b4678
#20 0xb783b41b in wxEventLoop::Run (this=0xa651360)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#21 0xb78dfb3c in wxAppBase::MainLoop (this=0x9ca1e40)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0xa651360}, m_pp = 0x9ca1e80,
  m_pOld = 0x0}
#22 0xb78df891 in wxAppBase::OnRun (this=0x6) at ../src/common/appcmn.cpp:367
No locals.
#23 0xb75d37ca in wxEntry (argc=@0xb76cc6cc, argv=0x9c90480)
    at ../src/common/init.cpp:460
---Type <return> to continue, or q <return> to quit---
No locals.
#24 0xb75d3887 in wxEntry (argc=@0xbf8ebe40, argv=0xbf8ebec4)
    at ../src/common/init.cpp:472
No locals.
#25 0x082be768 in main (argc=0, argv=0x0) at ../../src/amule-gui.cpp:94
No locals.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 28, 2009, 02:51:18 PM
Another Jaunty - rev. 9578 crash:

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb65c7750 (LWP 23947)]
0x0babc390 in ?? ()

$ ps axl | grep amule
Code: [Select]
0  1000  3604  3517  20   0   3336   800 pipe_w S+   pts/1      0:00 grep amule
0  1000 23914 23887  20   0 223400 217688 poll  S+   pts/0      0:03 gdb amule
0  1000 23947 23914  20   0 105620 35208 ptrace Tl   pts/0      9:59 /usr/bin/amule

(gdb) bt
Code: [Select]
#0  0x0babc390 in ?? ()
#1  0xb6c8fc4f in gdk_io_invoke (source=0xb3903cb0,
    condition=<value optimized out>, data=0x3)
    at /build/buildd/gtk+2.0-2.16.1/gdk/gdkevents.c:1013
#2  0xb6a25dad in g_io_unix_dispatch (source=0xb3903cf8,
    callback=0xb6c8fbf0 <gdk_io_invoke>, user_data=0xb3903d40)
    at /build/buildd/glib2.0-2.20.1/glib/giounix.c:162
#3  0xb69eeb88 in IA__g_main_context_dispatch (context=0xa635ff8)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:1814
#4  0xb69f20eb in g_main_context_iterate (context=0xa635ff8, block=1,
    dispatch=1, self=0xa637570)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2448
#5  0xb69f25ba in IA__g_main_loop_run (loop=0xb01f7a8)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2656
#6  0xb6e327d9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.16.1/gtk/gtkmain.c:1205
#7  0xb766041b in wxEventLoop::Run (this=0xafea680)
    at ../src/gtk/evtloop.cpp:76
#8  0xb7704b3c in wxAppBase::MainLoop (this=0xa635e40)
    at ../src/common/appcmn.cpp:312
#9  0xb7704891 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
#10 0xb73f87ca in wxEntry (argc=@0xb74f16cc, argv=0xa624480)
    at ../src/common/init.cpp:460
---Type <return> to continue, or q <return> to quit---
#11 0xb73f8887 in wxEntry (argc=@0xbf910670, argv=0xbf9106f4)
    at ../src/common/init.cpp:472
#12 0x082be768 in main (argc=1, argv=0xb6a6c460) at ../../src/amule-gui.cpp:94

(gdb) bt full
Code: [Select]
#0  0x0babc390 in ?? ()
No symbol table info available.
#1  0xb6c8fc4f in gdk_io_invoke (source=0xb3903cb0,
    condition=<value optimized out>, data=0x3)
    at /build/buildd/gtk+2.0-2.16.1/gdk/gdkevents.c:1013
gdk_cond = 186915888
#2  0xb6a25dad in g_io_unix_dispatch (source=0xb3903cf8,
    callback=0xb6c8fbf0 <gdk_io_invoke>, user_data=0xb3903d40)
    at /build/buildd/glib2.0-2.20.1/glib/giounix.c:162
buffer_condition = 0
#3  0xb69eeb88 in IA__g_main_context_dispatch (context=0xa635ff8)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:1814
No locals.
#4  0xb69f20eb in g_main_context_iterate (context=0xa635ff8, block=1,
    dispatch=1, self=0xa637570)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2448
max_priority = 2147483647
timeout = 7
some_ready = 1
nfds = 120
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xb792dc0
__PRETTY_FUNCTION__ = "g_main_context_iterate"
---Type <return> to continue, or q <return> to quit---
#5  0xb69f25ba in IA__g_main_loop_run (loop=0xb01f7a8)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2656
self = (GThread *) 0xa637570
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#6  0xb6e327d9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.16.1/gtk/gtkmain.c:1205
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0xafea680
loop = (GMainLoop *) 0xb01f7a8
#7  0xb766041b in wxEventLoop::Run (this=0xafea680)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#8  0xb7704b3c in wxAppBase::MainLoop (this=0xa635e40)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0xafea680}, m_pp = 0xa635e80,
  m_pOld = 0x0}
#9  0xb7704891 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
No locals.
#10 0xb73f87ca in wxEntry (argc=@0xb74f16cc, argv=0xa624480)
    at ../src/common/init.cpp:460
No locals.
---Type <return> to continue, or q <return> to quit---
#11 0xb73f8887 in wxEntry (argc=@0xbf910670, argv=0xbf9106f4)
    at ../src/common/init.cpp:472
No locals.
#12 0x082be768 in main (argc=1, argv=0xb6a6c460) at ../../src/amule-gui.cpp:94
No locals.

(gdb) thread apply all bt full
Code: [Select]
Thread 5 (Thread 0xb44c1b90 (LWP 23993)):
#0  0xb7ef3430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7ed0412 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
    at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_timedwait.S:179
No locals.
#2  0xb746ab51 in wxConditionInternal::WaitTimeout (this=0xa6c1270,
    milliseconds=100) at ../src/unix/threadpsx.cpp:405
tspec = {tv_sec = 1240913665, tv_nsec = 820000000}
err = <value optimized out>
#3  0xb746abda in wxCondition::WaitTimeout (this=0xa6c118c, milliseconds=100)
    at ../include/wx/thrimpl.cpp:256
__FUNCTION__ = "WaitTimeout"
#4  0xb746c994 in wxSemaphoreInternal::WaitTimeout (this=0xa6c1188,
    milliseconds=100) at ../src/unix/threadpsx.cpp:552
remainingTime = -516
locker = {m_isOk = true, m_mutex = @0xa6c1188}
#5  0xb746ca1a in wxSemaphore::WaitTimeout (this=0xb01f6b8, milliseconds=100)
    at ../include/wx/thrimpl.cpp:320
__FUNCTION__ = "WaitTimeout"
#6  0x08409694 in CTimerThread::Entry (this=0xb01f698)
---Type <return> to continue, or q <return> to quit---
    at ../../src/Timer.cpp:64
now = 3963084472
sinceLast = 0
timeout = 100
evt = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x85edd48,
      static ms_classInfo = {m_className = 0xb749e6c4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb799c8cc, m_next = 0xb74f28c4,
        static sm_classTable = 0xa6083e8}, m_refData = 0x0},
    m_eventObject = 0x0, m_eventType = 10244, m_timeStamp = 0, m_id = 6128,
    m_callbackUserData = 0x0, m_propagationLevel = 0, m_skipped = false,
    m_isCommandEvent = false, static ms_classInfo = {m_className = 0xb74afef0,
      m_objectSize = 36, m_objectConstructor = 0, m_baseInfo1 = 0xb74f2858,
      m_baseInfo2 = 0x0, static sm_first = 0xb799c8cc, m_next = 0xb74f3908,
      static sm_classTable = 0xa6083e8}}, <No data fields>}
lastEvent = 3963084472
#7  0xb746d4a6 in wxThreadInternal::PthreadStart (thread=0xb01f698)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0xb01f780
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#8  0xb746d5ad in wxPthreadStart (ptr=0xb01f698)
---Type <return> to continue, or q <return> to quit---
    at ../src/unix/threadpsx.cpp:718
No locals.
#9  0xb7ecc4ff in start_thread (arg=0xb44c1b90) at pthread_create.c:297
__res = <value optimized out>
__ignore1 = <value optimized out>
__ignore2 = <value optimized out>
pd = (struct pthread *) 0xb44c1b90
now = <value optimized out>
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {-1209155596, 0, 0,
        -1270082520, -577875915, -1675538894}, mask_was_saved = 0}}, priv = {
    pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0,
      canceltype = 0}}}
not_first_call = <value optimized out>
robust = <value optimized out>
#10 0xb719b49e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
No locals.

Thread 3 (Thread 0xb54c3b90 (LWP 23990)):
#0  0xb7ef3430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7ed38f6 in nanosleep () from /lib/tls/i686/cmov/libpthread.so.0
No locals.
#2  0xb74745d8 in wxMicroSleep (microseconds=0) at ../src/unix/utilsunx.cpp:191
---Type <return> to continue, or q <return> to quit---
tmReq = {tv_sec = 0, tv_nsec = 4000000}
#3  0xb7474601 in wxMilliSleep (milliseconds=4) at ../src/unix/utilsunx.cpp:212
No locals.
#4  0xb746a88d in wxThread::Sleep (milliseconds=4)
    at ../src/unix/threadpsx.cpp:986
No locals.
#5  0x0820fd46 in UploadBandwidthThrottler::Entry (this=0xae29038)
    at ../../src/UploadBandwidthThrottler.cpp:320
timeSinceLastLoop = 1
minFragSize = 1300
doubleSendSize = 2600
bytesToSpend = 38912
sleepTime = 5
thisLoopTick = 3963084506
TIME_BETWEEN_UPLOAD_LOOPS = 1
lastLoopTick = 3963084506
realBytesToSpend = 28672999
allowedDataRate = 10240000
rememberedSlotCounter = 1
extraSleepTime = 5
sendLock = {m_isOk = false, m_mutex = @0xb7edbff4}
#6  0xb746d4a6 in wxThreadInternal::PthreadStart (thread=0xae29038)
    at ../src/unix/threadpsx.cpp:766
---Type <return> to continue, or q <return> to quit---
pthread = (wxThreadInternal *) 0xae106e0
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#7  0xb746d5ad in wxPthreadStart (ptr=0xae29038)
    at ../src/unix/threadpsx.cpp:718
No locals.
#8  0xb7ecc4ff in start_thread (arg=0xb54c3b90) at pthread_create.c:297
__res = <value optimized out>
__ignore1 = <value optimized out>
__ignore2 = <value optimized out>
pd = (struct pthread *) 0xb54c3b90
now = <value optimized out>
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {-1209155596, 0, 0,
        -1253297112, -573681609, -1675538894}, mask_was_saved = 0}}, priv = {
    pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0,
      canceltype = 0}}}
not_first_call = <value optimized out>
robust = <value optimized out>
#9  0xb719b49e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
No locals.

Thread 1 (Thread 0xb65c7750 (LWP 23947)):
---Type <return> to continue, or q <return> to quit---
#0  0x0babc390 in ?? ()
No symbol table info available.
#1  0xb6c8fc4f in gdk_io_invoke (source=0xb3903cb0,
    condition=<value optimized out>, data=0x3)
    at /build/buildd/gtk+2.0-2.16.1/gdk/gdkevents.c:1013
gdk_cond = 186915888
#2  0xb6a25dad in g_io_unix_dispatch (source=0xb3903cf8,
    callback=0xb6c8fbf0 <gdk_io_invoke>, user_data=0xb3903d40)
    at /build/buildd/glib2.0-2.20.1/glib/giounix.c:162
buffer_condition = 0
#3  0xb69eeb88 in IA__g_main_context_dispatch (context=0xa635ff8)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:1814
No locals.
#4  0xb69f20eb in g_main_context_iterate (context=0xa635ff8, block=1,
    dispatch=1, self=0xa637570)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2448
max_priority = 2147483647
timeout = 7
some_ready = 1
nfds = 120
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xb792dc0
__PRETTY_FUNCTION__ = "g_main_context_iterate"
---Type <return> to continue, or q <return> to quit---
#5  0xb69f25ba in IA__g_main_loop_run (loop=0xb01f7a8)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2656
self = (GThread *) 0xa637570
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#6  0xb6e327d9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.16.1/gtk/gtkmain.c:1205
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0xafea680
loop = (GMainLoop *) 0xb01f7a8
#7  0xb766041b in wxEventLoop::Run (this=0xafea680)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#8  0xb7704b3c in wxAppBase::MainLoop (this=0xa635e40)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0xafea680}, m_pp = 0xa635e80,
  m_pOld = 0x0}
#9  0xb7704891 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
No locals.
#10 0xb73f87ca in wxEntry (argc=@0xb74f16cc, argv=0xa624480)
    at ../src/common/init.cpp:460
No locals.
---Type <return> to continue, or q <return> to quit---
#11 0xb73f8887 in wxEntry (argc=@0xbf910670, argv=0xbf9106f4)
    at ../src/common/init.cpp:472
No locals.
#12 0x082be768 in main (argc=1, argv=0xb6a6c460) at ../../src/amule-gui.cpp:94
No locals.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 28, 2009, 02:52:00 PM
$ cat /proc/23947/maps
Part 1:
Code: [Select]
b3be3000-b3be4000 r--p 00000000 08:11 15294568   /usr/lib/locale/en_GB.utf8/LC_IDENTIFICATION
b3be4000-b3c35000 r--p 00000000 08:11 15392777   /usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif.ttf
b3c35000-b3cc1000 r--p 00000000 08:11 15392774   /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-Bold.ttf
b3cc1000-b3cc2000 ---p b3cc1000 00:00 0
b3cc2000-b44c2000 rw-p b3cc2000 00:00 0
b44c2000-b44c3000 ---p b44c2000 00:00 0
b44c3000-b4cc3000 rw-p b44c3000 00:00 0
b4cc3000-b4cc4000 ---p b4cc3000 00:00 0
b4cc4000-b54c4000 rw-p b4cc4000 00:00 0
b54c4000-b54f5000 r-xp 00000000 08:11 15271619   /usr/lib/libcroco-0.6.so.3.0.1
b54f5000-b54f8000 rw-p 00030000 08:11 15271619   /usr/lib/libcroco-0.6.so.3.0.1
b54f8000-b5512000 r-xp 00000000 08:11 15294480   /usr/lib/gio/modules/libgvfsdbus.so
b5512000-b5513000 r--p 00019000 08:11 15294480   /usr/lib/gio/modules/libgvfsdbus.so
b5513000-b5514000 rw-p 0001a000 08:11 15294480   /usr/lib/gio/modules/libgvfsdbus.so
b5514000-b5526000 r-xp 00000000 08:11 15271487   /usr/lib/libgvfscommon.so.0.0.0
b5526000-b5527000 r--p 00012000 08:11 15271487   /usr/lib/libgvfscommon.so.0.0.0
b5527000-b5528000 rw-p 00013000 08:11 15271487   /usr/lib/libgvfscommon.so.0.0.0
b5529000-b5538000 r-xp 00000000 08:11 7487657    /lib/libbz2.so.1.0.4
b5538000-b5539000 r--p 0000f000 08:11 7487657    /lib/libbz2.so.1.0.4
b5539000-b553a000 rw-p 00010000 08:11 7487657    /lib/libbz2.so.1.0.4
b553a000-b5570000 r-xp 00000000 08:11 7487507    /lib/libdbus-1.so.3.4.0
b5570000-b5571000 r--p 00035000 08:11 7487507    /lib/libdbus-1.so.3.4.0
b5571000-b5572000 rw-p 00036000 08:11 7487507    /lib/libdbus-1.so.3.4.0
b5581000-b55b4000 r-xp 00000000 08:11 15272476   /usr/lib/libgsf-1.so.114.0.11
b55b4000-b55b5000 ---p 00033000 08:11 15272476   /usr/lib/libgsf-1.so.114.0.11
b55b5000-b55b7000 r--p 00033000 08:11 15272476   /usr/lib/libgsf-1.so.114.0.11
b55b7000-b55b8000 rw-p 00035000 08:11 15272476   /usr/lib/libgsf-1.so.114.0.11
b55b8000-b55b9000 rw-p b55b8000 00:00 0
b55b9000-b55ea000 r-xp 00000000 08:11 15272301   /usr/lib/librsvg-2.so.2.26.0
b55ea000-b55eb000 r--p 00031000 08:11 15272301   /usr/lib/librsvg-2.so.2.26.0
b55eb000-b55ec000 rw-p 00032000 08:11 15272301   /usr/lib/librsvg-2.so.2.26.0
b55fb000-b55fe000 rw-s 00000000 00:09 1933328    /SYSV00000000 (deleted)
b55fe000-b5616000 r--s 00000000 08:11 15344212   /usr/share/mime/mime.cache
b5616000-b5625000 r-xp 00000000 08:11 15294479   /usr/lib/gio/modules/libgioremote-volume-monitor.so
b5625000-b5626000 r--p 0000e000 08:11 15294479   /usr/lib/gio/modules/libgioremote-volume-monitor.so
b5626000-b5627000 rw-p 0000f000 08:11 15294479   /usr/lib/gio/modules/libgioremote-volume-monitor.so
b5627000-b5628000 r-xp 00000000 08:11 29917199   /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so
b5628000-b5629000 r--p 00000000 08:11 29917199   /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so
b5629000-b562a000 rw-p 00001000 08:11 29917199   /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so
b562a000-b56d5000 r--p 00000000 08:11 15483528   /usr/share/icons/Tangerine/icon-theme.cache
b56d5000-b576d000 r--p 00000000 08:11 15392773   /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf
b576d000-b576f000 r-xp 00000000 08:11 15327311   /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
b576f000-b5770000 r--p 00001000 08:11 15327311   /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
b5770000-b5771000 rw-p 00002000 08:11 15327311   /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
b5771000-b5777000 r--s 00000000 08:11 19408576   /var/cache/fontconfig/945677eb7aeaf62f1d50efc3fb3ec7d8-x86.cache-2
b5777000-b577a000 r--s 00000000 08:11 19408671   /var/cache/fontconfig/e383d7ea5fbe662a33d9b44caf393297-x86.cache-2
b577a000-b577d000 r--s 00000000 08:11 19408668   /var/cache/fontconfig/a755afe4a08bf5b97852ceb7400b47bc-x86.cache-2
b577d000-b5780000 r--s 00000000 08:11 19408663   /var/cache/fontconfig/6d41288fd70b0be22e8c3a91e032eec0-x86.cache-2
b5780000-b5783000 r--s 00000000 08:11 19408666   /var/cache/fontconfig/de156ccd2eddbdc19d37a45b8b2aac9c-x86.cache-2
b5783000-b578b000 r--s 00000000 08:11 19408662   /var/cache/fontconfig/e3de0de479f42330eadf588a55fb5bf4-x86.cache-2
b578b000-b5796000 r--s 00000000 08:11 19408658   /var/cache/fontconfig/0f34bcd4b6ee430af32735b75db7f02b-x86.cache-2
b5796000-b5799000 r--s 00000000 08:11 19408679   /var/cache/fontconfig/de9486f0b47a4d768a594cb4198cb1c6-x86.cache-2
b5799000-b57a0000 r--s 00000000 08:11 19408670   /var/cache/fontconfig/d52a8644073d54c13679302ca1180695-x86.cache-2
b57a0000-b5800000 rw-s 00000000 00:09 1900559    /SYSV00000000 (deleted)
b5800000-b5900000 rw-p b5800000 00:00 0
b5901000-b5902000 rw-p b5901000 00:00 0
b5902000-b5904000 r--s 00000000 08:11 19408667   /var/cache/fontconfig/c69f04ab05004e31a6d5e715764f16d8-x86.cache-2
b5904000-b5916000 r-xp 00000000 08:11 7504343    /lib/tls/i686/cmov/libresolv-2.9.so
b5916000-b5917000 r--p 00011000 08:11 7504343    /lib/tls/i686/cmov/libresolv-2.9.so
b5917000-b5918000 rw-p 00012000 08:11 7504343    /lib/tls/i686/cmov/libresolv-2.9.so
b5918000-b591a000 rw-p b5918000 00:00 0
b591a000-b597a000 rw-s 00000000 00:09 1867790    /SYSV00000000 (deleted)
b597a000-b597d000 r--s 00000000 08:11 19408659   /var/cache/fontconfig/6eb3985aa4124903f6ff08ba781cd364-x86.cache-2
b597d000-b597e000 r--s 00000000 08:11 19408661   /var/cache/fontconfig/4c73fe0c47614734b17d736dbde7580a-x86.cache-2
b597e000-b5984000 r--s 00000000 08:11 19408678   /var/cache/fontconfig/089dead882dea3570ffc31a9898cfb69-x86.cache-2
b5984000-b598a000 r-xp 00000000 08:11 29917198   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-xpm.so
b598a000-b598b000 r--p 00005000 08:11 29917198   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-xpm.so
b598b000-b598c000 rw-p 00006000 08:11 29917198   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-xpm.so
b598c000-b598d000 ---p b598c000 00:00 0
b598d000-b618d000 rw-p b598d000 00:00 0
b618d000-b6193000 r-xp 00000000 08:11 15271122   /usr/lib/libgailutil.so.18.0.1
b6193000-b6194000 r--p 00005000 08:11 15271122   /usr/lib/libgailutil.so.18.0.1
b6194000-b6195000 rw-p 00006000 08:11 15271122   /usr/lib/libgailutil.so.18.0.1
b6195000-b61c4000 r-xp 00000000 08:11 15271662   /usr/lib/libgnomecanvas-2.so.0.2600.0
b61c4000-b61c5000 r--p 0002e000 08:11 15271662   /usr/lib/libgnomecanvas-2.so.0.2600.0
b61c5000-b61c6000 rw-p 0002f000 08:11 15271662   /usr/lib/libgnomecanvas-2.so.0.2600.0
b61c6000-b6204000 r-xp 00000000 08:11 15271576   /usr/lib/libgnomeprintui-2-2.so.0.1.0
b6204000-b6205000 r--p 0003d000 08:11 15271576   /usr/lib/libgnomeprintui-2-2.so.0.1.0
b6205000-b6206000 rw-p 0003e000 08:11 15271576   /usr/lib/libgnomeprintui-2-2.so.0.1.0
b6206000-b633b000 r-xp 00000000 08:11 15272620   /usr/lib/libxml2.so.2.6.32
b633b000-b633c000 ---p 00135000 08:11 15272620   /usr/lib/libxml2.so.2.6.32
b633c000-b6340000 r--p 00135000 08:11 15272620   /usr/lib/libxml2.so.2.6.32
b6340000-b6341000 rw-p 00139000 08:11 15272620   /usr/lib/libxml2.so.2.6.32
b6341000-b6342000 rw-p b6341000 00:00 0
b6342000-b6357000 r-xp 00000000 08:11 15271916   /usr/lib/libart_lgpl_2.so.2.3.20
b6357000-b6359000 rw-p 00014000 08:11 15271916   /usr/lib/libart_lgpl_2.so.2.3.20
b6359000-b63bf000 r-xp 00000000 08:11 15271142   /usr/lib/libgnomeprint-2-2.so.0.1.0
b63bf000-b63c0000 ---p 00066000 08:11 15271142   /usr/lib/libgnomeprint-2-2.so.0.1.0
b63c0000-b63c1000 r--p 00066000 08:11 15271142   /usr/lib/libgnomeprint-2-2.so.0.1.0
b63c1000-b63c2000 rw-p 00067000 08:11 15271142   /usr/lib/libgnomeprint-2-2.so.0.1.0
b63c2000-b63e2000 r-xp 00000000 08:11 15294468   /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
b63e2000-b63e3000 r--p 00020000 08:11 15294468   /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
b63e3000-b63e4000 rw-p 00021000 08:11 15294468   /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
b63e4000-b63eb000 r-xp 00000000 08:11 15269940   /usr/lib/libltdl.so.7.2.0
b63eb000-b63ec000 r--p 00006000 08:11 15269940   /usr/lib/libltdl.so.7.2.0
b63ec000-b63ed000 rw-p 00007000 08:11 15269940   /usr/lib/libltdl.so.7.2.0
b63ed000-b63f9000 r-xp 00000000 08:11 15272264   /usr/lib/libtdb.so.1.1.3
b63f9000-b63fa000 r--p 0000b000 08:11 15272264   /usr/lib/libtdb.so.1.1.3
b63fa000-b63fb000 rw-p 0000c000 08:11 15272264   /usr/lib/libtdb.so.1.1.3
b63fb000-b6416000 r-xp 00000000 08:11 15270963   /usr/lib/libvorbis.so.0.4.0
b6416000-b6417000 r--p 0001a000 08:11 15270963   /usr/lib/libvorbis.so.0.4.0
b6417000-b6425000 rw-p 0001b000 08:11 15270963   /usr/lib/libvorbis.so.0.4.0
b6425000-b642c000 r-xp 00000000 08:11 15270972   /usr/lib/libvorbisfile.so.3.2.0
b642c000-b642d000 r--p 00006000 08:11 15270972   /usr/lib/libvorbisfile.so.3.2.0
b642d000-b642e000 rw-p 00007000 08:11 15270972   /usr/lib/libvorbisfile.so.3.2.0
b642e000-b643b000 r-xp 00000000 08:11 15272321   /usr/lib/libcanberra.so.0.1.4
b643b000-b643c000 r--p 0000d000 08:11 15272321   /usr/lib/libcanberra.so.0.1.4
b643c000-b643d000 rw-p 0000e000 08:11 15272321   /usr/lib/libcanberra.so.0.1.4
b643d000-b643f000 r--s 00000000 08:11 19407465   /var/cache/fontconfig/ddd4086aec35a5275babba44bb759c3c-x86.cache-2
b643f000-b6441000 r--s 00000000 08:11 19407458   /var/cache/fontconfig/e13b20fdb08344e0e664864cc2ede53d-x86.cache-2
b6441000-b6443000 r--s 00000000 08:11 19408575   /var/cache/fontconfig/7ef2298fde41cc6eeb7af42e48b7d293-x86.cache-2
b6443000-b6448000 r-xp 00000000 08:11 7504333    /lib/tls/i686/cmov/libnss_dns-2.9.so
b6448000-b6449000 r--p 00004000 08:11 7504333    /lib/tls/i686/cmov/libnss_dns-2.9.so
b6449000-b644a000 rw-p 00005000 08:11 7504333    /lib/tls/i686/cmov/libnss_dns-2.9.so
b644a000-b644c000 r-xp 00000000 08:11 7487583    /lib/libnss_mdns4_minimal.so.2
b644c000-b644d000 rw-p 00001000 08:11 7487583    /lib/libnss_mdns4_minimal.so.2
b644d000-b644f000 rw-p b644d000 00:00 0
b644f000-b6459000 r-xp 00000000 08:11 7504334    /lib/tls/i686/cmov/libnss_files-2.9.so
b6459000-b645a000 r--p 00009000 08:11 7504334    /lib/tls/i686/cmov/libnss_files-2.9.so
b645a000-b645b000 rw-p 0000a000 08:11 7504334    /lib/tls/i686/cmov/libnss_files-2.9.so
b645b000-b6464000 r-xp 00000000 08:11 7504338    /lib/tls/i686/cmov/libnss_nis-2.9.so
b6464000-b6465000 r--p 00008000 08:11 7504338    /lib/tls/i686/cmov/libnss_nis-2.9.so
b6465000-b6466000 rw-p 00009000 08:11 7504338    /lib/tls/i686/cmov/libnss_nis-2.9.so
b6466000-b647b000 r-xp 00000000 08:11 7504330    /lib/tls/i686/cmov/libnsl-2.9.so
b647b000-b647c000 r--p 00014000 08:11 7504330    /lib/tls/i686/cmov/libnsl-2.9.so
b647c000-b647d000 rw-p 00015000 08:11 7504330    /lib/tls/i686/cmov/libnsl-2.9.so
b647d000-b647f000 rw-p b647d000 00:00 0
b647f000-b6486000 r-xp 00000000 08:11 7504332    /lib/tls/i686/cmov/libnss_compat-2.9.so
b6486000-b6487000 r--p 00006000 08:11 7504332    /lib/tls/i686/cmov/libnss_compat-2.9.so
b6487000-b6488000 rw-p 00007000 08:11 7504332    /lib/tls/i686/cmov/libnss_compat-2.9.so
b6488000-b6489000 r--s 00000000 08:11 19408672   /var/cache/fontconfig/4794a0821666d79190d59a36cb4f44b5-x86.cache-2
b6489000-b648d000 r-xp 00000000 08:11 15270961   /usr/lib/libogg.so.0.5.3
b648d000-b648e000 r--p 00003000 08:11 15270961   /usr/lib/libogg.so.0.5.3
b648e000-b648f000 rw-p 00004000 08:11 15270961   /usr/lib/libogg.so.0.5.3
b648f000-b6492000 r-xp 00000000 08:11 15269925   /usr/lib/libcanberra-gtk.so.0.0.4
b6492000-b6493000 r--p 00002000 08:11 15269925   /usr/lib/libcanberra-gtk.so.0.0.4
b6493000-b6494000 rw-p 00003000 08:11 15269925   /usr/lib/libcanberra-gtk.so.0.0.4
b6494000-b6498000 r-xp 00000000 08:11 15294557   /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so
b6498000-b6499000 r--p 00003000 08:11 15294557   /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so
b6499000-b649a000 rw-p 00004000 08:11 15294557   /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so
b649a000-b649b000 r--p 00000000 08:11 15425570   /usr/lib/locale/nl_NL.utf8/LC_NUMERIC
b649b000-b649c000 r--p 00000000 08:11 15425571   /usr/lib/locale/nl_NL.utf8/LC_TIME
b649c000-b6587000 r--p 00000000 08:11 27918339   /usr/lib/locale/nl_NL.utf8/LC_COLLATE
b6587000-b6588000 r--p 00000000 08:11 15425572   /usr/lib/locale/nl_NL.utf8/LC_MONETARY
b6588000-b65c7000 r--p 00000000 08:11 27918337   /usr/lib/locale/nl_NL.utf8/LC_CTYPE
b65c7000-b65cb000 rw-p b65c7000 00:00 0
b65cb000-b65cf000 r-xp 00000000 08:11 15270153   /usr/lib/libXdmcp.so.6.0.0
b65cf000-b65d0000 rw-p 00003000 08:11 15270153   /usr/lib/libXdmcp.so.6.0.0
b65d0000-b65d6000 r-xp 00000000 08:11 15272122   /usr/lib/libxcb-render.so.0.0.0
b65d6000-b65d7000 r--p 00005000 08:11 15272122   /usr/lib/libxcb-render.so.0.0.0
b65d7000-b65d8000 rw-p 00006000 08:11 15272122   /usr/lib/libxcb-render.so.0.0.0
b65d8000-b65db000 r-xp 00000000 08:11 15272416   /usr/lib/libxcb-render-util.so.0.0.0
b65db000-b65dc000 r--p 00002000 08:11 15272416   /usr/lib/libxcb-render-util.so.0.0.0
b65dc000-b65dd000 rw-p 00003000 08:11 15272416   /usr/lib/libxcb-render-util.so.0.0.0
b65dd000-b65de000 rw-p b65dd000 00:00 0
b65de000-b65f1000 r-xp 00000000 08:11 15270302   /usr/lib/libdirect-1.0.so.0.1.0
b65f1000-b65f2000 r--p 00012000 08:11 15270302   /usr/lib/libdirect-1.0.so.0.1.0
b65f2000-b65f3000 rw-p 00013000 08:11 15270302   /usr/lib/libdirect-1.0.so.0.1.0
b65f3000-b65fa000 r-xp 00000000 08:11 1040393    /usr/lib/libfusion-1.0.so.0.1.0
b65fa000-b65fb000 r--p 00006000 08:11 1040393    /usr/lib/libfusion-1.0.so.0.1.0
b65fb000-b65fc000 rw-p 00007000 08:11 1040393    /usr/lib/libfusion-1.0.so.0.1.0
b65fc000-b6660000 r-xp 00000000 08:11 1040392    /usr/lib/libdirectfb-1.0.so.0.1.0
b6660000-b6661000 r--p 00063000 08:11 1040392    /usr/lib/libdirectfb-1.0.so.0.1.0
b6661000-b6662000 rw-p 00064000 08:11 1040392    /usr/lib/libdirectfb-1.0.so.0.1.0
b6662000-b66a2000 r-xp 00000000 08:11 15271924   /usr/lib/libpixman-1.so.0.13.2
b66a2000-b66a4000 r--p 0003f000 08:11 15271924   /usr/lib/libpixman-1.so.0.13.2
b66a4000-b66a5000 rw-p 00041000 08:11 15271924   /usr/lib/libpixman-1.so.0.13.2
b66a5000-b66bd000 r-xp 00000000 08:11 15270899   /usr/lib/libxcb.so.1.1.0
b66bd000-b66be000 r--p 00017000 08:11 15270899   /usr/lib/libxcb.so.1.1.0
b66be000-b66bf000 rw-p 00018000 08:11 15270899   /usr/lib/libxcb.so.1.1.0
b66bf000-b66c0000 rw-p b66bf000 00:00 0
b66c0000-b66c2000 r-xp 00000000 08:11 15270132   /usr/lib/libXau.so.6.0.0
b66c2000-b66c3000 r--p 00001000 08:11 15270132   /usr/lib/libXau.so.6.0.0
b66c3000-b66c4000 rw-p 00002000 08:11 15270132   /usr/lib/libXau.so.6.0.0
b66c4000-b66c7000 r-xp 00000000 08:11 7487564    /lib/libuuid.so.1.2
b66c7000-b66c8000 r--p 00002000 08:11 7487564    /lib/libuuid.so.1.2
b66c8000-b66c9000 rw-p 00003000 08:11 7487564    /lib/libuuid.so.1.2
b66c9000-b66de000 r-xp 00000000 08:11 15271181   /usr/lib/libICE.so.6.3.0
b66de000-b66df000 rw-p 00014000 08:11 15271181   /usr/lib/libICE.so.6.3.0
b66df000-b66e1000 rw-p b66df000 00:00 0
b66e1000-b6705000 r-xp 00000000 08:11 15270076   /usr/lib/libexpat.so.1.5.2
b6705000-b6707000 r--p 00023000 08:11 15270076   /usr/lib/libexpat.so.1.5.2
b6707000-b6708000 rw-p 00025000 08:11 15270076   /usr/lib/libexpat.so.1.5.2
b6708000-b6709000 rw-p b6708000 00:00 0
b6709000-b6721000 r-xp 00000000 08:11 7487552    /lib/libselinux.so.1
b6721000-b6722000 r--p 00017000 08:11 7487552    /lib/libselinux.so.1
b6722000-b6723000 rw-p 00018000 08:11 7487552    /lib/libselinux.so.1
b6723000-b6753000 r-xp 00000000 08:11 7487821    /lib/libpcre.so.3.12.1
b6753000-b6754000 r--p 0002f000 08:11 7487821    /lib/libpcre.so.3.12.1
b6754000-b6755000 rw-p 00030000 08:11 7487821    /lib/libpcre.so.3.12.1
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 28, 2009, 02:52:13 PM
Part2:
Code: [Select]
b6755000-b67cc000 r-xp 00000000 08:11 15272420   /usr/lib/libcairo.so.2.10800.6
b67cc000-b67ce000 r--p 00076000 08:11 15272420   /usr/lib/libcairo.so.2.10800.6
b67ce000-b67cf000 rw-p 00078000 08:11 15272420   /usr/lib/libcairo.so.2.10800.6
b67cf000-b67d3000 r-xp 00000000 08:11 15271234   /usr/lib/libXfixes.so.3.1.0
b67d3000-b67d4000 rw-p 00003000 08:11 15271234   /usr/lib/libXfixes.so.3.1.0
b67d4000-b67d6000 r-xp 00000000 08:11 15271221   /usr/lib/libXdamage.so.1.1.0
b67d6000-b67d7000 rw-p 00001000 08:11 15271221   /usr/lib/libXdamage.so.1.1.0
b67d7000-b67d8000 rw-p b67d7000 00:00 0
b67d8000-b67da000 r-xp 00000000 08:11 15271890   /usr/lib/libXcomposite.so.1.0.0
b67da000-b67db000 r--p 00001000 08:11 15271890   /usr/lib/libXcomposite.so.1.0.0
b67db000-b67dc000 rw-p 00002000 08:11 15271890   /usr/lib/libXcomposite.so.1.0.0
b67dc000-b68c6000 r-xp 00000000 08:11 15270133   /usr/lib/libX11.so.6.2.0
b68c6000-b68c7000 ---p 000ea000 08:11 15270133   /usr/lib/libX11.so.6.2.0
b68c7000-b68c8000 r--p 000ea000 08:11 15270133   /usr/lib/libX11.so.6.2.0
b68c8000-b68ca000 rw-p 000eb000 08:11 15270133   /usr/lib/libX11.so.6.2.0
b68ca000-b68cb000 rw-p b68ca000 00:00 0
b68cb000-b68d5000 r-xp 00000000 08:11 15270843   /usr/lib/libpangocairo-1.0.so.0.2400.1
b68d5000-b68d6000 r--p 00009000 08:11 15270843   /usr/lib/libpangocairo-1.0.so.0.2400.1
b68d6000-b68d7000 rw-p 0000a000 08:11 15270843   /usr/lib/libpangocairo-1.0.so.0.2400.1
b68d7000-b68df000 r-xp 00000000 08:11 15271224   /usr/lib/libXcursor.so.1.0.2
b68df000-b68e0000 rw-p 00007000 08:11 15271224   /usr/lib/libXcursor.so.1.0.2
b68e0000-b68e6000 r-xp 00000000 08:11 15272020   /usr/lib/libXrandr.so.2.2.0
b68e6000-b68e7000 r--p 00006000 08:11 15272020   /usr/lib/libXrandr.so.2.2.0
b68e7000-b68e8000 rw-p 00007000 08:11 15272020   /usr/lib/libXrandr.so.2.2.0
b68e8000-b68f0000 r-xp 00000000 08:11 15270753   /usr/lib/libXi.so.6.0.0
b68f0000-b68f1000 r--p 00007000 08:11 15270753   /usr/lib/libXi.so.6.0.0
b68f1000-b68f2000 rw-p 00008000 08:11 15270753   /usr/lib/libXi.so.6.0.0
b68f2000-b68f3000 rw-p b68f2000 00:00 0
b68f3000-b68fb000 r-xp 00000000 08:11 15270900   /usr/lib/libXrender.so.1.3.0
b68fb000-b68fc000 r--p 00007000 08:11 15270900   /usr/lib/libXrender.so.1.3.0
b68fc000-b68fd000 rw-p 00008000 08:11 15270900   /usr/lib/libXrender.so.1.3.0
b68fd000-b690b000 r-xp 00000000 08:11 15270017   /usr/lib/libXext.so.6.4.0
b690b000-b690c000 r--p 0000d000 08:11 15270017   /usr/lib/libXext.so.6.4.0
b690c000-b690d000 rw-p 0000e000 08:11 15270017   /usr/lib/libXext.so.6.4.0
b690d000-b695f000 r-xp 00000000 08:11 15271453   /usr/lib/libtiff.so.4.2.1
b695f000-b6961000 r--p 00052000 08:11 15271453   /usr/lib/libtiff.so.4.2.1
b6961000-b6962000 rw-p 00054000 08:11 15271453   /usr/lib/libtiff.so.4.2.1
b6962000-b6981000 r-xp 00000000 08:11 15271751   /usr/lib/libjpeg.so.62.0.0
b6981000-b6982000 rw-p 0001e000 08:11 15271751   /usr/lib/libjpeg.so.62.0.0
b6982000-b6983000 rw-p b6982000 00:00 0
b6983000-b69a7000 r-xp 00000000 08:11 1040386    /usr/lib/libpng12.so.0.27.0
b69a7000-b69a8000 r--p 00023000 08:11 1040386    /usr/lib/libpng12.so.0.27.0
b69a8000-b69a9000 rw-p 00024000 08:11 1040386    /usr/lib/libpng12.so.0.27.0
b69a9000-b69b0000 r-xp 00000000 08:11 15270825   /usr/lib/libSM.so.6.0.0
b69b0000-b69b1000 r--p 00006000 08:11 15270825   /usr/lib/libSM.so.6.0.0
b69b1000-b69b2000 rw-p 00007000 08:11 15270825   /usr/lib/libSM.so.6.0.0
b69b2000-b69b4000 r-xp 00000000 08:11 15271225   /usr/lib/libXinerama.so.1.0.0
b69b4000-b69b5000 rw-p 00001000 08:11 15271225   /usr/lib/libXinerama.so.1.0.0
b69b5000-b6a6b000 r-xp 00000000 08:11 15273257   /usr/lib/libglib-2.0.so.0.2000.1
b6a6b000-b6a6c000 r--p 000b5000 08:11 15273257   /usr/lib/libglib-2.0.so.0.2000.1
b6a6c000-b6a6d000 rw-p 000b6000 08:11 15273257   /usr/lib/libglib-2.0.so.0.2000.1
b6a6d000-b6a74000 r-xp 00000000 08:11 7504344    /lib/tls/i686/cmov/librt-2.9.so
b6a74000-b6a75000 r--p 00006000 08:11 7504344    /lib/tls/i686/cmov/librt-2.9.so
b6a75000-b6a76000 rw-p 00007000 08:11 7504344    /lib/tls/i686/cmov/librt-2.9.so
b6a76000-b6a7a000 r-xp 00000000 08:11 15273273   /usr/lib/libgthread-2.0.so.0.2000.1
b6a7a000-b6a7b000 r--p 00003000 08:11 15273273   /usr/lib/libgthread-2.0.so.0.2000.1
b6a7b000-b6a7c000 rw-p 00004000 08:11 15273273   /usr/lib/libgthread-2.0.so.0.2000.1
b6a7c000-b6a7d000 rw-p b6a7c000 00:00 0
b6a7d000-b6a80000 r-xp 00000000 08:11 15273271   /usr/lib/libgmodule-2.0.so.0.2000.1
b6a80000-b6a81000 r--p 00002000 08:11 15273271   /usr/lib/libgmodule-2.0.so.0.2000.1
b6a81000-b6a82000 rw-p 00003000 08:11 15273271   /usr/lib/libgmodule-2.0.so.0.2000.1
b6a82000-b6abe000 r-xp 00000000 08:11 15273272   /usr/lib/libgobject-2.0.so.0.2000.1
b6abe000-b6abf000 r--p 0003b000 08:11 15273272   /usr/lib/libgobject-2.0.so.0.2000.1
b6abf000-b6ac0000 rw-p 0003c000 08:11 15273272   /usr/lib/libgobject-2.0.so.0.2000.1
b6ac0000-b6aeb000 r-xp 00000000 08:11 15271282   /usr/lib/libfontconfig.so.1.3.0
b6aeb000-b6aec000 r--p 0002a000 08:11 15271282   /usr/lib/libfontconfig.so.1.3.0
b6aec000-b6aed000 rw-p 0002b000 08:11 15271282   /usr/lib/libfontconfig.so.1.3.0
b6aed000-b6b5f000 r-xp 00000000 08:11 15270073   /usr/lib/libfreetype.so.6.3.20
b6b5f000-b6b63000 r--p 00071000 08:11 15270073   /usr/lib/libfreetype.so.6.3.20
b6b63000-b6b64000 rw-p 00075000 08:11 15270073   /usr/lib/libfreetype.so.6.3.20
b6b64000-b6ba4000 r-xp 00000000 08:11 15270827   /usr/lib/libpango-1.0.so.0.2400.1
b6ba4000-b6ba5000 ---p 00040000 08:11 15270827   /usr/lib/libpango-1.0.so.0.2400.1
b6ba5000-b6ba6000 r--p 00040000 08:11 15270827   /usr/lib/libpango-1.0.so.0.2400.1
b6ba6000-b6ba7000 rw-p 00041000 08:11 15270827   /usr/lib/libpango-1.0.so.0.2400.1
b6ba7000-b6ba8000 rw-p b6ba7000 00:00 0
b6ba8000-b6c13000 r-xp 00000000 08:11 15271588   /usr/lib/libgio-2.0.so.0.2000.1
b6c13000-b6c14000 ---p 0006b000 08:11 15271588   /usr/lib/libgio-2.0.so.0.2000.1
b6c14000-b6c15000 r--p 0006b000 08:11 15271588   /usr/lib/libgio-2.0.so.0.2000.1
b6c15000-b6c16000 rw-p 0006c000 08:11 15271588   /usr/lib/libgio-2.0.so.0.2000.1
b6c16000-b6c2e000 r-xp 00000000 08:11 15272696   /usr/lib/libgdk_pixbuf-2.0.so.0.1600.1
b6c2e000-b6c2f000 r--p 00017000 08:11 15272696   /usr/lib/libgdk_pixbuf-2.0.so.0.1600.1
b6c2f000-b6c30000 rw-p 00018000 08:11 15272696   /usr/lib/libgdk_pixbuf-2.0.so.0.1600.1
b6c30000-b6c57000 r-xp 00000000 08:11 15270844   /usr/lib/libpangoft2-1.0.so.0.2400.1
b6c57000-b6c58000 r--p 00026000 08:11 15270844   /usr/lib/libpangoft2-1.0.so.0.2400.1
b6c58000-b6c59000 rw-p 00027000 08:11 15270844   /usr/lib/libpangoft2-1.0.so.0.2400.1
b6c59000-b6c72000 r-xp 00000000 08:11 15273099   /usr/lib/libatk-1.0.so.0.2609.1
b6c72000-b6c73000 r--p 00019000 08:11 15273099   /usr/lib/libatk-1.0.so.0.2609.1
b6c73000-b6c74000 rw-p 0001a000 08:11 15273099   /usr/lib/libatk-1.0.so.0.2609.1
b6c74000-b6cfd000 r-xp 00000000 08:11 15272694   /usr/lib/libgdk-x11-2.0.so.0.1600.1
b6cfd000-b6cfe000 ---p 00089000 08:11 15272694   /usr/lib/libgdk-x11-2.0.so.0.1600.1
b6cfe000-b6d00000 r--p 00089000 08:11 15272694   /usr/lib/libgdk-x11-2.0.so.0.1600.1
b6d00000-b6d01000 rw-p 0008b000 08:11 15272694   /usr/lib/libgdk-x11-2.0.so.0.1600.1
b6d01000-b6d02000 rw-p b6d01000 00:00 0
b6d02000-b70ab000 r-xp 00000000 08:11 15272692   /usr/lib/libgtk-x11-2.0.so.0.1600.1
b70ab000-b70af000 r--p 003a8000 08:11 15272692   /usr/lib/libgtk-x11-2.0.so.0.1600.1
b70af000-b70b1000 rw-p 003ac000 08:11 15272692   /usr/lib/libgtk-x11-2.0.so.0.1600.1
b70b1000-b70b3000 rw-p b70b1000 00:00 0
b70b3000-b70b5000 r-xp 00000000 08:11 7504327    /lib/tls/i686/cmov/libdl-2.9.so
b70b5000-b70b6000 r--p 00001000 08:11 7504327    /lib/tls/i686/cmov/libdl-2.9.so
b70b6000-b70b7000 rw-p 00002000 08:11 7504327    /lib/tls/i686/cmov/libdl-2.9.so
b70b7000-b7213000 r-xp 00000000 08:11 7504322    /lib/tls/i686/cmov/libc-2.9.so
b7213000-b7214000 ---p 0015c000 08:11 7504322    /lib/tls/i686/cmov/libc-2.9.so
b7214000-b7216000 r--p 0015c000 08:11 7504322    /lib/tls/i686/cmov/libc-2.9.so
b7216000-b7217000 rw-p 0015e000 08:11 7504322    /lib/tls/i686/cmov/libc-2.9.so
b7217000-b721a000 rw-p b7217000 00:00 0
b721a000-b7227000 r-xp 00000000 08:11 7487622    /lib/libgcc_s.so.1
b7227000-b7228000 r--p 0000c000 08:11 7487622    /lib/libgcc_s.so.1
b7228000-b7229000 rw-p 0000d000 08:11 7487622    /lib/libgcc_s.so.1
b7229000-b724d000 r-xp 00000000 08:11 7504328    /lib/tls/i686/cmov/libm-2.9.so
b724d000-b724e000 r--p 00023000 08:11 7504328    /lib/tls/i686/cmov/libm-2.9.so
b724e000-b724f000 rw-p 00024000 08:11 7504328    /lib/tls/i686/cmov/libm-2.9.so
b724f000-b7250000 rw-p b724f000 00:00 0
b7250000-b7334000 r-xp 00000000 08:11 15270186   /usr/lib/libstdc++.so.6.0.10
b7334000-b7338000 r--p 000e3000 08:11 15270186   /usr/lib/libstdc++.so.6.0.10
b7338000-b7339000 rw-p 000e7000 08:11 15270186   /usr/lib/libstdc++.so.6.0.10
b7339000-b733f000 rw-p b7339000 00:00 0
b733f000-b7365000 r-xp 00000000 08:11 15271462   /usr/lib/libGeoIP.so.1.4.4
b7365000-b7366000 r--p 00025000 08:11 15271462   /usr/lib/libGeoIP.so.1.4.4
b7366000-b7367000 rw-p 00026000 08:11 15271462   /usr/lib/libGeoIP.so.1.4.4
b7367000-b74e6000 r-xp 00000000 08:11 15270438   /usr/lib/libwx_baseud-2.8.so.0.5.0
b74e6000-b74ea000 r--p 0017f000 08:11 15270438   /usr/lib/libwx_baseud-2.8.so.0.5.0
b74ea000-b74ec000 rw-p 00183000 08:11 15270438   /usr/lib/libwx_baseud-2.8.so.0.5.0
b74ec000-b74f4000 rw-p b74ec000 00:00 0
b74f4000-b7521000 r-xp 00000000 08:11 15270529   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b7521000-b7522000 ---p 0002d000 08:11 15270529   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b7522000-b7523000 r--p 0002d000 08:11 15270529   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b7523000-b7524000 rw-p 0002e000 08:11 15270529   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b7524000-b78a0000 r-xp 00000000 08:11 15271958   /usr/lib/libwx_gtk2ud_core-2.8.so.0.5.0
b78a0000-b78c7000 r--p 0037b000 08:11 15271958   /usr/lib/libwx_gtk2ud_core-2.8.so.0.5.0
b78c7000-b78cc000 rw-p 003a2000 08:11 15271958   /usr/lib/libwx_gtk2ud_core-2.8.so.0.5.0
b78cc000-b78d2000 rw-p b78cc000 00:00 0
b78d2000-b7994000 r-xp 00000000 08:11 15271856   /usr/lib/libwx_gtk2ud_adv-2.8.so.0.5.0
b7994000-b799c000 r--p 000c1000 08:11 15271856   /usr/lib/libwx_gtk2ud_adv-2.8.so.0.5.0
b799c000-b799d000 rw-p 000c9000 08:11 15271856   /usr/lib/libwx_gtk2ud_adv-2.8.so.0.5.0
b799d000-b79a0000 rw-p b799d000 00:00 0
b79a0000-b79a8000 r-xp 00000000 08:11 15269911   /usr/lib/libixml.so.2.0.4
b79a8000-b79a9000 r--p 00007000 08:11 15269911   /usr/lib/libixml.so.2.0.4
b79a9000-b79aa000 rw-p 00008000 08:11 15269911   /usr/lib/libixml.so.2.0.4
b79aa000-b79ae000 r-xp 00000000 08:11 15269967   /usr/lib/libthreadutil.so.2.2.3
b79ae000-b79af000 r--p 00003000 08:11 15269967   /usr/lib/libthreadutil.so.2.2.3
b79af000-b79b0000 rw-p 00004000 08:11 15269967   /usr/lib/libthreadutil.so.2.2.3
b79b0000-b79ca000 r-xp 00000000 08:11 15270052   /usr/lib/libupnp.so.3.0.5
b79ca000-b79cb000 r--p 00019000 08:11 15270052   /usr/lib/libupnp.so.3.0.5
b79cb000-b79cc000 rw-p 0001a000 08:11 15270052   /usr/lib/libupnp.so.3.0.5
b79cc000-b79cd000 rw-p b79cc000 00:00 0
b79cd000-b7d88000 r-xp 00000000 08:11 15271308   /usr/lib/libcrypto++.so.7.0.0
b7d88000-b7dbd000 r--p 003bb000 08:11 15271308   /usr/lib/libcrypto++.so.7.0.0
b7dbd000-b7dc0000 rw-p 003f0000 08:11 15271308   /usr/lib/libcrypto++.so.7.0.0
b7dc0000-b7dc3000 rw-p b7dc0000 00:00 0
b7dc3000-b7dd7000 r-xp 00000000 08:11 7487688    /lib/libz.so.1.2.3.3
b7dd7000-b7dd8000 r--p 00013000 08:11 7487688    /lib/libz.so.1.2.3.3
b7dd8000-b7dd9000 rw-p 00014000 08:11 7487688    /lib/libz.so.1.2.3.3
b7dd9000-b7dda000 rw-p b7dd9000 00:00 0
b7dda000-b7eb6000 r-xp 00000000 08:11 15270600   /usr/lib/libbfd-2.19.1.so
b7eb6000-b7ec0000 r--p 000dc000 08:11 15270600   /usr/lib/libbfd-2.19.1.so
b7ec0000-b7ec2000 rw-p 000e6000 08:11 15270600   /usr/lib/libbfd-2.19.1.so
b7ec2000-b7ec6000 rw-p b7ec2000 00:00 0
b7ec6000-b7edb000 r-xp 00000000 08:11 7504341    /lib/tls/i686/cmov/libpthread-2.9.so
b7edb000-b7edc000 r--p 00014000 08:11 7504341    /lib/tls/i686/cmov/libpthread-2.9.so
b7edc000-b7edd000 rw-p 00015000 08:11 7504341    /lib/tls/i686/cmov/libpthread-2.9.so
b7edd000-b7edf000 rw-p b7edd000 00:00 0
b7edf000-b7ee0000 r--p 00000000 08:11 15443006   /usr/lib/locale/nl_NL.utf8/LC_MESSAGES/SYS_LC_MESSAGES
b7ee0000-b7ee1000 r--p 00000000 08:11 15295302   /usr/lib/locale/nl_NL.utf8/LC_PAPER
b7ee1000-b7ee2000 r--p 00000000 08:11 15295404   /usr/lib/locale/nl_NL.utf8/LC_NAME
b7ee2000-b7ee3000 r--p 00000000 08:11 15425573   /usr/lib/locale/nl_NL.utf8/LC_ADDRESS
b7ee3000-b7ee4000 r--p 00000000 08:11 15425574   /usr/lib/locale/nl_NL.utf8/LC_TELEPHONE
b7ee4000-b7ee5000 r--p 00000000 08:11 15295298   /usr/lib/locale/nl_NL.utf8/LC_MEASUREMENT
b7ee5000-b7ee6000 r--p 00000000 08:11 15425575   /usr/lib/locale/nl_NL.utf8/LC_IDENTIFICATION
b7ee6000-b7ee8000 r-xp 00000000 08:11 9609462    /usr/lib/gconv/UTF-32.so
b7ee8000-b7ee9000 r--p 00001000 08:11 9609462    /usr/lib/gconv/UTF-32.so
b7ee9000-b7eea000 rw-p 00002000 08:11 9609462    /usr/lib/gconv/UTF-32.so
b7eea000-b7ef1000 r--s 00000000 08:11 15278206   /usr/lib/gconv/gconv-modules.cache
b7ef1000-b7ef3000 rw-p b7ef1000 00:00 0
b7ef3000-b7ef4000 r-xp b7ef3000 00:00 0          [vdso]
b7ef4000-b7f10000 r-xp 00000000 08:11 7487604    /lib/ld-2.9.so
b7f10000-b7f11000 r--p 0001b000 08:11 7487604    /lib/ld-2.9.so
b7f11000-b7f12000 rw-p 0001c000 08:11 7487604    /lib/ld-2.9.so
bf8f6000-bf912000 rw-p bffe4000 00:00 0          [stack]
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on April 28, 2009, 04:12:21 PM
Dear RRM,

unfortunately I've been very busy for the past few days and I'll be this way until May.

I guess the last crash is caused by the same bug in aMule.

Two things are sure:

Regards!
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 28, 2009, 05:20:31 PM
Dear Bill,

Please take your time.
Time is on our side; no deadline to meet!  ;D

Regards,
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 28, 2009, 07:57:02 PM
Another Jaunty - rev. 9578 crash:

$ ps axl | grep amule
Code: [Select]
0  1000  3737  3696  20   0 228512 65532 poll   S+   pts/0      0:03 gdb amule
0  1000  3738  3737  20   0 3145724 2288364 ptrace Tl pts/0    94:08 /usr/bin/amule
0  1000  4452  4428  20   0   3336   804 pipe_w S+   pts/1      0:00 grep amule

Program received signal SIGABRT, Aborted.
[Switching to Thread 0xb65c8750 (LWP 3738)]
0xb7ef4430 in __kernel_vsyscall ()

(gdb) bt
Code: [Select]
#0  0xb7ef4430 in __kernel_vsyscall ()
#1  0xb70e36d0 in *__GI_raise (sig=6)
    at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#2  0xb70e5098 in *__GI_abort () at abort.c:88
#3  0x0840fb3d in OnUnhandledException ()
    at ../../../../src/libs/common/MuleDebug.cpp:103
#4  0xb730b7d5 in __cxxabiv1::__terminate (
    handler=0x840f7cc <OnUnhandledException()>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
#5  0xb730b812 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
#6  0xb730b94a in __cxa_throw (obj=0xb733b930, tinfo=0x8710c8c,
    dest=0xb730be80 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
#7  0xb730bfa3 in operator new (sz=44)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
#8  0xb7514149 in wxSocketEvent::Clone (this=0xbfd11f00)
    at ../include/wx/socket.h:314
#9  0xb7470025 in wxEvtHandler::AddPendingEvent (this=0x8713600,
    event=@0xbfd11f00) at ../src/common/event.cpp:1131
#10 0xb7513db8 in wxSocketBase::OnRequest (this=0xa10c270,
    notification=wxSOCKET_OUTPUT) at ../src/common/socket.cpp:1006
#11 0xb7513eb4 in wx_socket_callback (notification=GSOCK_OUTPUT,
---Type <return> to continue, or q <return> to quit---
    cdata=0xa10c270 "\210\210O\b") at ../src/common/socket.cpp:942
#12 0xb751872b in GSocket::Detected_Write (this=0xa298d68)
    at ../src/unix/gsocket.cpp:1836
#13 0xb7662ef7 in _GSocket_GDK_Input (data=0xa298d68, source=35,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
#14 0xb6c90c4f in gdk_io_invoke (source=0x9202740,
    condition=<value optimized out>, data=0xa54d1b0)
    at /build/buildd/gtk+2.0-2.16.1/gdk/gdkevents.c:1013
#15 0xb6a26dad in g_io_unix_dispatch (source=0x9b756f0,
    callback=0xb6c90bf0 <gdk_io_invoke>, user_data=0xa54d1b0)
    at /build/buildd/glib2.0-2.20.1/glib/giounix.c:162
#16 0xb69efb88 in IA__g_main_context_dispatch (context=0x8f2dff8)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:1814
#17 0xb69f30eb in g_main_context_iterate (context=0x8f2dff8, block=1,
    dispatch=1, self=0x8f2f570)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2448
#18 0xb69f35ba in IA__g_main_loop_run (loop=0x9912c78)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2656
#19 0xb6e337d9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.16.1/gtk/gtkmain.c:1205
#20 0xb766141b in wxEventLoop::Run (this=0x98dc8f8)
    at ../src/gtk/evtloop.cpp:76
#21 0xb7705b3c in wxAppBase::MainLoop (this=0x8f2de40)
---Type <return> to continue, or q <return> to quit---
    at ../src/common/appcmn.cpp:312
#22 0xb7705891 in wxAppBase::OnRun (this=0x6) at ../src/common/appcmn.cpp:367
#23 0xb73f97ca in wxEntry (argc=@0xb74f26cc, argv=0x8f1c480)
    at ../src/common/init.cpp:460
#24 0xb73f9887 in wxEntry (argc=@0xbfd12270, argv=0xbfd122f4)
    at ../src/common/init.cpp:472
#25 0x082be768 in main (argc=Cannot access memory at address 0xe9a
) at ../../src/amule-gui.cpp:94

(gdb) bt full
Code: [Select]
#0  0xb7ef4430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb70e36d0 in *__GI_raise (sig=6)
    at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
resultvar = <value optimized out>
pid = -1222545420
selftid = 3738
#2  0xb70e5098 in *__GI_abort () at abort.c:88
act = {__sigaction_handler = {sa_handler = 0, sa_sigaction = 0},
  sa_mask = {__val = {0, 1, 1, 3075098552, 3218152736, 3218152724, 3075422488,
      4294967295, 2986528773, 3218152800, 3086034544, 134737372, 3218152648,
      0, 0, 0, 5, 3075387380, 3075387380, 1, 3218152696, 3074519203,
      3075422488, 3003778640, 4, 3075098548, 4294967295, 3218152912,
      3071446132, 4, 4, 4}}, sa_flags = -1076814568,
  sa_restorer = 0xb712952e <*__GI___libc_free+14>}
sigs = {__val = {32, 0 <repeats 31 times>}}
#3  0x0840fb3d in OnUnhandledException ()
    at ../../../../src/libs/common/MuleDebug.cpp:103
t = (class std::type_info *) 0x8710c8c
output = (FILE *) 0xb7217560
#4  0xb730b7d5 in __cxxabiv1::__terminate (
    handler=0x840f7cc <OnUnhandledException()>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
---Type <return> to continue, or q <return> to quit---
No locals.
#5  0xb730b812 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
No locals.
#6  0xb730b94a in __cxa_throw (obj=0xb733b930, tinfo=0x8710c8c,
    dest=0xb730be80 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
header = <value optimized out>
#7  0xb730bfa3 in operator new (sz=44)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
handler = <value optimized out>
p = <value optimized out>
#8  0xb7514149 in wxSocketEvent::Clone (this=0xbfd11f00)
    at ../include/wx/socket.h:314
No locals.
#9  0xb7470025 in wxEvtHandler::AddPendingEvent (this=0x8713600,
    event=@0xbfd11f00) at ../src/common/event.cpp:1131
eventCopy = <value optimized out>
__FUNCTION__ = "AddPendingEvent"
#10 0xb7513db8 in wxSocketBase::OnRequest (this=0xa10c270,
    notification=wxSOCKET_OUTPUT) at ../src/common/socket.cpp:1006
event = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x870c668,
      static ms_classInfo = {m_className = 0xb749f6c4, m_objectSize = 8,
---Type <return> to continue, or q <return> to quit---
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb799d8cc, m_next = 0xb74f38c4,
        static sm_classTable = 0x8f003e8}, m_refData = 0x0},
    m_eventObject = 0xa10c270, m_eventType = 10002, m_timeStamp = 0,
    m_id = 6123, m_callbackUserData = 0x0, m_propagationLevel = 0,
    m_skipped = false, m_isCommandEvent = false, static ms_classInfo = {
      m_className = 0xb74b0ef0, m_objectSize = 36, m_objectConstructor = 0,
      m_baseInfo1 = 0xb74f3858, m_baseInfo2 = 0x0,
      static sm_first = 0xb799d8cc, m_next = 0xb74f4908,
      static sm_classTable = 0x8f003e8}}, m_event = wxSOCKET_OUTPUT,
  m_clientData = 0x0, static ms_classInfo = {m_className = 0xb751b068,
    m_objectSize = 44,
    m_objectConstructor = 0xb7511e60 <wxSocketEvent::wxCreateObject()>,
    m_baseInfo1 = 0xb74f4920, m_baseInfo2 = 0x0, static sm_first = 0xb799d8cc,
    m_next = 0xb752454c, static sm_classTable = 0x8f003e8}}
flag = <value optimized out>
#11 0xb7513eb4 in wx_socket_callback (notification=GSOCK_OUTPUT,
    cdata=0xa10c270 "\210\210O\b") at ../src/common/socket.cpp:942
No locals.
#12 0xb751872b in GSocket::Detected_Write (this=0xa298d68)
    at ../src/unix/gsocket.cpp:1836
No locals.
#13 0xb7662ef7 in _GSocket_GDK_Input (data=0xa298d68, source=35,
---Type <return> to continue, or q <return> to quit---
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
No locals.
#14 0xb6c90c4f in gdk_io_invoke (source=0x9202740,
    condition=<value optimized out>, data=0xa54d1b0)
    at /build/buildd/gtk+2.0-2.16.1/gdk/gdkevents.c:1013
gdk_cond = GDK_INPUT_WRITE
#15 0xb6a26dad in g_io_unix_dispatch (source=0x9b756f0,
    callback=0xb6c90bf0 <gdk_io_invoke>, user_data=0xa54d1b0)
    at /build/buildd/glib2.0-2.20.1/glib/giounix.c:162
buffer_condition = 6
#16 0xb69efb88 in IA__g_main_context_dispatch (context=0x8f2dff8)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:1814
No locals.
#17 0xb69f30eb in g_main_context_iterate (context=0x8f2dff8, block=1,
    dispatch=1, self=0x8f2f570)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2448
max_priority = 110
timeout = 0
some_ready = 1
nfds = 10
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0x9ecf088
__PRETTY_FUNCTION__ = "g_main_context_iterate"
---Type <return> to continue, or q <return> to quit---
#18 0xb69f35ba in IA__g_main_loop_run (loop=0x9912c78)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2656
self = (GThread *) 0x8f2f570
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#19 0xb6e337d9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.16.1/gtk/gtkmain.c:1205
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0x98dc8f8
loop = (GMainLoop *) 0x9912c78
#20 0xb766141b in wxEventLoop::Run (this=0x98dc8f8)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#21 0xb7705b3c in wxAppBase::MainLoop (this=0x8f2de40)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0x98dc8f8}, m_pp = 0x8f2de80,
  m_pOld = 0x0}
#22 0xb7705891 in wxAppBase::OnRun (this=0x6) at ../src/common/appcmn.cpp:367
No locals.
#23 0xb73f97ca in wxEntry (argc=@0xb74f26cc, argv=0x8f1c480)
    at ../src/common/init.cpp:460
No locals.
---Type <return> to continue, or q <return> to quit---
#24 0xb73f9887 in wxEntry (argc=@0xbfd12270, argv=0xbfd122f4)
    at ../src/common/init.cpp:472
No locals.
#25 0x082be768 in main (argc=Cannot access memory at address 0xe9a
) at ../../src/amule-gui.cpp:94
No locals.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 28, 2009, 07:57:30 PM
(gdb) thread apply all bt full
Code: [Select]
Thread 5 (Thread 0xb4491b90 (LWP 3854)):
#0  0xb7ef4430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7ed1412 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
    at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_timedwait.S:179
No locals.
#2  0xb746bb51 in wxConditionInternal::WaitTimeout (this=0x8fb9250,
    milliseconds=100) at ../src/unix/threadpsx.cpp:405
tspec = {tv_sec = 1240939564, tv_nsec = 284000000}
err = <value optimized out>
#3  0xb746bbda in wxCondition::WaitTimeout (this=0x93066dc, milliseconds=100)
    at ../include/wx/thrimpl.cpp:256
__FUNCTION__ = "WaitTimeout"
#4  0xb746d994 in wxSemaphoreInternal::WaitTimeout (this=0x93066d8,
    milliseconds=100) at ../src/unix/threadpsx.cpp:552
remainingTime = -516
locker = {m_isOk = true, m_mutex = @0x93066d8}
#5  0xb746da1a in wxSemaphore::WaitTimeout (this=0x9912c50, milliseconds=100)
    at ../include/wx/thrimpl.cpp:320
__FUNCTION__ = "WaitTimeout"
#6  0x08409694 in CTimerThread::Entry (this=0x9912c30)
---Type <return> to continue, or q <return> to quit---
    at ../../src/Timer.cpp:64
now = 3988982936
sinceLast = 0
timeout = 100
evt = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x85edd48,
      static ms_classInfo = {m_className = 0xb749f6c4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb799d8cc, m_next = 0xb74f38c4,
        static sm_classTable = 0x8f003e8}, m_refData = 0x0},
    m_eventObject = 0x0, m_eventType = 10244, m_timeStamp = 0, m_id = 6128,
    m_callbackUserData = 0x0, m_propagationLevel = 0, m_skipped = false,
    m_isCommandEvent = false, static ms_classInfo = {m_className = 0xb74b0ef0,
      m_objectSize = 36, m_objectConstructor = 0, m_baseInfo1 = 0xb74f3858,
      m_baseInfo2 = 0x0, static sm_first = 0xb799d8cc, m_next = 0xb74f4908,
      static sm_classTable = 0x8f003e8}}, <No data fields>}
lastEvent = 3988982936
#7  0xb746e4a6 in wxThreadInternal::PthreadStart (thread=0x9912c30)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0x98de998
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#8  0xb746e5ad in wxPthreadStart (ptr=0x9912c30)
---Type <return> to continue, or q <return> to quit---
    at ../src/unix/threadpsx.cpp:718
No locals.
#9  0xb7ecd4ff in start_thread (arg=0xb4491b90) at pthread_create.c:297
__res = <value optimized out>
__ignore1 = <value optimized out>
__ignore2 = <value optimized out>
pd = (struct pthread *) 0xb4491b90
now = <value optimized out>
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {-1209151500, 0, 0,
        -1270279128, -1752790516, -603352053}, mask_was_saved = 0}}, priv = {
    pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0,
      canceltype = 0}}}
not_first_call = <value optimized out>
robust = <value optimized out>
#10 0xb719c49e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
No locals.

Thread 3 (Thread 0xb5493b90 (LWP 3843)):
#0  0xb7ef4430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7ed48f6 in nanosleep () from /lib/tls/i686/cmov/libpthread.so.0
No locals.
#2  0xb74755d8 in wxMicroSleep (microseconds=0) at ../src/unix/utilsunx.cpp:191
---Type <return> to continue, or q <return> to quit---
tmReq = {tv_sec = 1, tv_nsec = 0}
#3  0xb7475601 in wxMilliSleep (milliseconds=1000)
    at ../src/unix/utilsunx.cpp:212
No locals.
#4  0xb746b88d in wxThread::Sleep (milliseconds=1000)
    at ../src/unix/threadpsx.cpp:986
No locals.
#5  0x0820fd46 in UploadBandwidthThrottler::Entry (this=0x971a4c8)
    at ../../src/UploadBandwidthThrottler.cpp:320
timeSinceLastLoop = 0
minFragSize = 1300
doubleSendSize = 2600
bytesToSpend = 1671570
sleepTime = 1000
thisLoopTick = 3988982531
TIME_BETWEEN_UPLOAD_LOOPS = 1
lastLoopTick = 3988982531
realBytesToSpend = 21504999
allowedDataRate = 10240000
rememberedSlotCounter = 1
extraSleepTime = 1000
sendLock = {m_isOk = false, m_mutex = @0x0}
#6  0xb746e4a6 in wxThreadInternal::PthreadStart (thread=0x971a4c8)
---Type <return> to continue, or q <return> to quit---
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0x9742118
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#7  0xb746e5ad in wxPthreadStart (ptr=0x971a4c8)
    at ../src/unix/threadpsx.cpp:718
No locals.
#8  0xb7ecd4ff in start_thread (arg=0xb5493b90) at pthread_create.c:297
__res = <value optimized out>
__ignore1 = <value optimized out>
__ignore2 = <value optimized out>
pd = (struct pthread *) 0xb5493b90
now = <value optimized out>
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {-1209151500, 0, 0,
        -1253493720, -1748596210, -603352053}, mask_was_saved = 0}}, priv = {
    pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0,
      canceltype = 0}}}
not_first_call = <value optimized out>
robust = <value optimized out>
#9  0xb719c49e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
No locals.

---Type <return> to continue, or q <return> to quit---
Thread 1 (Thread 0xb65c8750 (LWP 3738)):
#0  0xb7ef4430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb70e36d0 in *__GI_raise (sig=6)
    at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
resultvar = <value optimized out>
pid = -1222545420
selftid = 3738
#2  0xb70e5098 in *__GI_abort () at abort.c:88
act = {__sigaction_handler = {sa_handler = 0, sa_sigaction = 0},
  sa_mask = {__val = {0, 1, 1, 3075098552, 3218152736, 3218152724, 3075422488,
      4294967295, 2986528773, 3218152800, 3086034544, 134737372, 3218152648,
      0, 0, 0, 5, 3075387380, 3075387380, 1, 3218152696, 3074519203,
      3075422488, 3003778640, 4, 3075098548, 4294967295, 3218152912,
      3071446132, 4, 4, 4}}, sa_flags = -1076814568,
  sa_restorer = 0xb712952e <*__GI___libc_free+14>}
sigs = {__val = {32, 0 <repeats 31 times>}}
#3  0x0840fb3d in OnUnhandledException ()
    at ../../../../src/libs/common/MuleDebug.cpp:103
t = (class std::type_info *) 0x8710c8c
output = (FILE *) 0xb7217560
#4  0xb730b7d5 in __cxxabiv1::__terminate (
    handler=0x840f7cc <OnUnhandledException()>)
---Type <return> to continue, or q <return> to quit---
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
No locals.
#5  0xb730b812 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
No locals.
#6  0xb730b94a in __cxa_throw (obj=0xb733b930, tinfo=0x8710c8c,
    dest=0xb730be80 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
header = <value optimized out>
#7  0xb730bfa3 in operator new (sz=44)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
handler = <value optimized out>
p = <value optimized out>
#8  0xb7514149 in wxSocketEvent::Clone (this=0xbfd11f00)
    at ../include/wx/socket.h:314
No locals.
#9  0xb7470025 in wxEvtHandler::AddPendingEvent (this=0x8713600,
    event=@0xbfd11f00) at ../src/common/event.cpp:1131
eventCopy = <value optimized out>
__FUNCTION__ = "AddPendingEvent"
#10 0xb7513db8 in wxSocketBase::OnRequest (this=0xa10c270,
    notification=wxSOCKET_OUTPUT) at ../src/common/socket.cpp:1006
event = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x870c668,
---Type <return> to continue, or q <return> to quit---
      static ms_classInfo = {m_className = 0xb749f6c4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb799d8cc, m_next = 0xb74f38c4,
        static sm_classTable = 0x8f003e8}, m_refData = 0x0},
    m_eventObject = 0xa10c270, m_eventType = 10002, m_timeStamp = 0,
    m_id = 6123, m_callbackUserData = 0x0, m_propagationLevel = 0,
    m_skipped = false, m_isCommandEvent = false, static ms_classInfo = {
      m_className = 0xb74b0ef0, m_objectSize = 36, m_objectConstructor = 0,
      m_baseInfo1 = 0xb74f3858, m_baseInfo2 = 0x0,
      static sm_first = 0xb799d8cc, m_next = 0xb74f4908,
      static sm_classTable = 0x8f003e8}}, m_event = wxSOCKET_OUTPUT,
  m_clientData = 0x0, static ms_classInfo = {m_className = 0xb751b068,
    m_objectSize = 44,
    m_objectConstructor = 0xb7511e60 <wxSocketEvent::wxCreateObject()>,
    m_baseInfo1 = 0xb74f4920, m_baseInfo2 = 0x0, static sm_first = 0xb799d8cc,
    m_next = 0xb752454c, static sm_classTable = 0x8f003e8}}
flag = <value optimized out>
#11 0xb7513eb4 in wx_socket_callback (notification=GSOCK_OUTPUT,
    cdata=0xa10c270 "\210\210O\b") at ../src/common/socket.cpp:942
No locals.
#12 0xb751872b in GSocket::Detected_Write (this=0xa298d68)
    at ../src/unix/gsocket.cpp:1836
No locals.
---Type <return> to continue, or q <return> to quit---
#13 0xb7662ef7 in _GSocket_GDK_Input (data=0xa298d68, source=35,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
No locals.
#14 0xb6c90c4f in gdk_io_invoke (source=0x9202740,
    condition=<value optimized out>, data=0xa54d1b0)
    at /build/buildd/gtk+2.0-2.16.1/gdk/gdkevents.c:1013
gdk_cond = GDK_INPUT_WRITE
#15 0xb6a26dad in g_io_unix_dispatch (source=0x9b756f0,
    callback=0xb6c90bf0 <gdk_io_invoke>, user_data=0xa54d1b0)
    at /build/buildd/glib2.0-2.20.1/glib/giounix.c:162
buffer_condition = 6
#16 0xb69efb88 in IA__g_main_context_dispatch (context=0x8f2dff8)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:1814
No locals.
#17 0xb69f30eb in g_main_context_iterate (context=0x8f2dff8, block=1,
    dispatch=1, self=0x8f2f570)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2448
max_priority = 110
timeout = 0
some_ready = 1
nfds = 10
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0x9ecf088
---Type <return> to continue, or q <return> to quit---
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#18 0xb69f35ba in IA__g_main_loop_run (loop=0x9912c78)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2656
self = (GThread *) 0x8f2f570
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#19 0xb6e337d9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.16.1/gtk/gtkmain.c:1205
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0x98dc8f8
loop = (GMainLoop *) 0x9912c78
#20 0xb766141b in wxEventLoop::Run (this=0x98dc8f8)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#21 0xb7705b3c in wxAppBase::MainLoop (this=0x8f2de40)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0x98dc8f8}, m_pp = 0x8f2de80,
  m_pOld = 0x0}
#22 0xb7705891 in wxAppBase::OnRun (this=0x6) at ../src/common/appcmn.cpp:367
No locals.
#23 0xb73f97ca in wxEntry (argc=@0xb74f26cc, argv=0x8f1c480)
    at ../src/common/init.cpp:460
---Type <return> to continue, or q <return> to quit---
No locals.
#24 0xb73f9887 in wxEntry (argc=@0xbfd12270, argv=0xbfd122f4)
    at ../src/common/init.cpp:472
No locals.
#25 0x082be768 in main (argc=Cannot access memory at address 0xe9a
) at ../../src/amule-gui.cpp:94
No locals.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 28, 2009, 09:09:19 PM
I noticed that since upgrading to Rev. 9565 and the consequetive builds,
i always get 3145724 kb. as the VSZ in all my high-VSZ crashes:

Code: [Select]
0  1000 12103 12089  20   0 3145724 1158444 ptrace Tl pts/0   1960:32 /usr/bin/amule (April 09, 2009)
0  1000 24522 24455  20   0 3145724 1266484 ptrace Tl pts/0   808:36 /usr/bin/amule (April 11, 2009)
0  1000  4800  4785  20   0 3145724 1030660 ptrace Tl pts/0   209:41 /usr/bin/amule (April 12, 2009)
0  1000 15526 15231  20   0 3145724 1621980 ptrace Tl pts/0    18:41 /usr/bin/amule (April 28, 2009)
0  1000  3738  3737  20   0 3145724 2288364 ptrace Tl pts/0    94:08 /usr/bin/amule (April 28, 2009)

Before that, i got different numbers (in high-VSZ crashes):
Code: [Select]
0  1000  3589  3575  20   0 3144528 1045644 ptrace Tl pts/0    55:34 /usr/bin/amule (March 26, 2009)
0  1000 18523 18464  20   0 3144196 1214856 ptrace Tl pts/0   1282:40 /usr/bin/amule (April 02, 2009)
0  1000  9109  9045  20   0 3144684 1013320 ptrace Tl pts/0   225:53 /usr/bin/amule (April 03, 2009)

Coincidence?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on April 29, 2009, 10:32:57 AM
RRM, in all cases aMule is running out of memory. We clearly have a memory leak.

By the way, thanks a lot for your efforts, we should have enough backtraces now to fix the problem.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on April 29, 2009, 10:18:34 PM
Great!
I look forward to trying out Festor's next build.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on May 01, 2009, 07:18:07 AM
Hmm... Amule has actually become less stable lately;
even at maximum connections set to 50 it crashes multiple times a day.
(Bittorrent transmission client: 1000 connections; multiple MBs/s up
and down, never crashes. I know, its not a fair comparison)
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on May 02, 2009, 06:08:56 PM
Hmmm, please ignore the post above  ::) :
Amule has not become less stable. It simply has less memory at its
disposal now that i use bittorrent transmission client much more intensively,
which uses up most of the memory, so that with the slightest amule
memory leak, amule already runs out of memory!
Hence more crashes...
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on May 08, 2009, 05:59:17 PM
My first Jaunty - rev. 9593 crash:

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb65e8750 (LWP 4731)]
0xb6a8d445 in g_io_watch_funcs () from /usr/lib/libglib-2.0.so.0

$ ps axl | grep amule
Code: [Select]
0  1000  4730  4711  20   0 226480 220556 poll  S+   pts/0      0:03 gdb amule
0  1000  4731  4730  20   0 134536 41772 ptrace Tl   pts/0     75:04 /usr/bin/amule
0  1000 14096 14071  20   0   2108   512 -      R+   pts/1      0:00 grep amule


(gdb) bt
Code: [Select]
#0  0xb6a8d445 in g_io_watch_funcs () from /usr/lib/libglib-2.0.so.0
#1  0xb6cb0bd9 in gdk_io_destroy (data=0x9f9f928)
    at /build/buildd/gtk+2.0-2.16.1/gdk/gdkevents.c:986
#2  0xb7682ef7 in _GSocket_GDK_Input (data=0x9f9f928, source=24,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
#3  0xb6cb0c4f in gdk_io_invoke (source=0x9d507c0,
    condition=<value optimized out>, data=0x95d5198)
    at /build/buildd/gtk+2.0-2.16.1/gdk/gdkevents.c:1013
#4  0xb6a46dad in g_io_unix_dispatch (source=0x95b7cb8,
    callback=0xb6cb0bf0 <gdk_io_invoke>, user_data=0x95d5198)
    at /build/buildd/glib2.0-2.20.1/glib/giounix.c:162
#5  0xb6a0fb88 in IA__g_main_context_dispatch (context=0x8960ff8)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:1814
#6  0xb6a130eb in g_main_context_iterate (context=0x8960ff8, block=1,
    dispatch=1, self=0x8962570)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2448
#7  0xb6a135ba in IA__g_main_loop_run (loop=0x9364c40)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2656
#8  0xb6e537d9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.16.1/gtk/gtkmain.c:1205
#9  0xb768141b in wxEventLoop::Run (this=0x89cfd70)
    at ../src/gtk/evtloop.cpp:76
#10 0xb7725b3c in wxAppBase::MainLoop (this=0x8960e40)
---Type <return> to continue, or q <return> to quit---
    at ../src/common/appcmn.cpp:312
#11 0xb7725891 in wxAppBase::OnRun (this=0xb6a8f040)
    at ../src/common/appcmn.cpp:367
#12 0xb74197ca in wxEntry (argc=@0xb75126cc, argv=0x894f480)
    at ../src/common/init.cpp:460
#13 0xb7419887 in wxEntry (argc=@0xbfc2f990, argv=0xbfc2fa14)
    at ../src/common/init.cpp:472
#14 0x082cb838 in main (argc=1, argv=0xb6a8d460) at ../../src/amule-gui.cpp:94

(gdb) bt full
Code: [Select]
#0  0xb6a8d445 in g_io_watch_funcs () from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#1  0xb6cb0bd9 in gdk_io_destroy (data=0x9f9f928)
    at /build/buildd/gtk+2.0-2.16.1/gdk/gdkevents.c:986
No locals.
#2  0xb7682ef7 in _GSocket_GDK_Input (data=0x9f9f928, source=24,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
No locals.
#3  0xb6cb0c4f in gdk_io_invoke (source=0x9d507c0,
    condition=<value optimized out>, data=0x95d5198)
    at /build/buildd/gtk+2.0-2.16.1/gdk/gdkevents.c:1013
gdk_cond = GDK_INPUT_WRITE
#4  0xb6a46dad in g_io_unix_dispatch (source=0x95b7cb8,
    callback=0xb6cb0bf0 <gdk_io_invoke>, user_data=0x95d5198)
    at /build/buildd/glib2.0-2.20.1/glib/giounix.c:162
buffer_condition = 3064524864
#5  0xb6a0fb88 in IA__g_main_context_dispatch (context=0x8960ff8)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:1814
No locals.
#6  0xb6a130eb in g_main_context_iterate (context=0x8960ff8, block=1,
    dispatch=1, self=0x8962570)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2448
max_priority = 300
---Type <return> to continue, or q <return> to quit---
timeout = 0
some_ready = 1
nfds = 96
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0x9853790
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#7  0xb6a135ba in IA__g_main_loop_run (loop=0x9364c40)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2656
self = (GThread *) 0x8962570
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#8  0xb6e537d9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.16.1/gtk/gtkmain.c:1205
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0x89cfd70
loop = (GMainLoop *) 0x9364c40
#9  0xb768141b in wxEventLoop::Run (this=0x89cfd70)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#10 0xb7725b3c in wxAppBase::MainLoop (this=0x8960e40)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0x89cfd70}, m_pp = 0x8960e80,
---Type <return> to continue, or q <return> to quit---
  m_pOld = 0x0}
#11 0xb7725891 in wxAppBase::OnRun (this=0xb6a8f040)
    at ../src/common/appcmn.cpp:367
No locals.
#12 0xb74197ca in wxEntry (argc=@0xb75126cc, argv=0x894f480)
    at ../src/common/init.cpp:460
No locals.
#13 0xb7419887 in wxEntry (argc=@0xbfc2f990, argv=0xbfc2fa14)
    at ../src/common/init.cpp:472
No locals.
#14 0x082cb838 in main (argc=1, argv=0xb6a8d460) at ../../src/amule-gui.cpp:94
No locals.

(gdb) thread apply all bt full
Code: [Select]
Thread 5 (Thread 0xb44e2b90 (LWP 4747)):
#0  0xb7f14430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7ef1412 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
    at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_timedwait.S:179
No locals.
#2  0xb748bb51 in wxConditionInternal::WaitTimeout (this=0x8b034e0,
    milliseconds=100) at ../src/unix/threadpsx.cpp:405
tspec = {tv_sec = 1241792109, tv_nsec = 720000000}
err = <value optimized out>
#3  0xb748bbda in wxCondition::WaitTimeout (this=0x9360c8c, milliseconds=100)
    at ../include/wx/thrimpl.cpp:256
__FUNCTION__ = "WaitTimeout"
#4  0xb748d994 in wxSemaphoreInternal::WaitTimeout (this=0x9360c88,
    milliseconds=100) at ../src/unix/threadpsx.cpp:552
remainingTime = -516
locker = {m_isOk = true, m_mutex = @0x9360c88}
#5  0xb748da1a in wxSemaphore::WaitTimeout (this=0x9350030, milliseconds=100)
    at ../include/wx/thrimpl.cpp:320
__FUNCTION__ = "WaitTimeout"
#6  0x08416828 in CTimerThread::Entry (this=0x9350010)
---Type <return> to continue, or q <return> to quit---
    at ../../src/Timer.cpp:64
now = 546561076
sinceLast = 0
timeout = 100
evt = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x85fd788,
      static ms_classInfo = {m_className = 0xb74bf6c4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb79bd8cc, m_next = 0xb75138c4,
        static sm_classTable = 0x89333e8}, m_refData = 0x0},
    m_eventObject = 0x0, m_eventType = 10244, m_timeStamp = 0, m_id = 6128,
    m_callbackUserData = 0x0, m_propagationLevel = 0, m_skipped = false,
    m_isCommandEvent = false, static ms_classInfo = {m_className = 0xb74d0ef0,
      m_objectSize = 36, m_objectConstructor = 0, m_baseInfo1 = 0xb7513858,
      m_baseInfo2 = 0x0, static sm_first = 0xb79bd8cc, m_next = 0xb7514908,
      static sm_classTable = 0x89333e8}}, <No data fields>}
lastEvent = 546561076
#7  0xb748e4a6 in wxThreadInternal::PthreadStart (thread=0x9350010)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0x9357940
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#8  0xb748e5ad in wxPthreadStart (ptr=0x9350010)
---Type <return> to continue, or q <return> to quit---
    at ../src/unix/threadpsx.cpp:718
No locals.
#9  0xb7eed4ff in start_thread (arg=0xb44e2b90) at pthread_create.c:297
__res = <value optimized out>
__ignore1 = <value optimized out>
__ignore2 = <value optimized out>
pd = (struct pthread *) 0xb44e2b90
now = <value optimized out>
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {-1209020428, 0, 0,
        -1269947352, 1036756166, 2082781889}, mask_was_saved = 0}}, priv = {
    pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0,
      canceltype = 0}}}
not_first_call = <value optimized out>
robust = <value optimized out>
#10 0xb71bc49e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
No locals.

Thread 3 (Thread 0xb54e4b90 (LWP 4745)):
#0  0xb7f14430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7ef48f6 in nanosleep () from /lib/tls/i686/cmov/libpthread.so.0
No locals.
#2  0xb74955d8 in wxMicroSleep (microseconds=0) at ../src/unix/utilsunx.cpp:191
---Type <return> to continue, or q <return> to quit---
tmReq = {tv_sec = 0, tv_nsec = 124000000}
#3  0xb7495601 in wxMilliSleep (milliseconds=124)
    at ../src/unix/utilsunx.cpp:212
No locals.
#4  0xb748b88d in wxThread::Sleep (milliseconds=124)
    at ../src/unix/threadpsx.cpp:986
No locals.
#5  0x0821dd12 in UploadBandwidthThrottler::Entry (this=0x918a6e0)
    at ../../src/UploadBandwidthThrottler.cpp:320
timeSinceLastLoop = 1
minFragSize = 1300
doubleSendSize = 2600
bytesToSpend = 276992
sleepTime = 125
thisLoopTick = 546561111
TIME_BETWEEN_UPLOAD_LOOPS = 1
lastLoopTick = 546561111
realBytesToSpend = 20992999
allowedDataRate = 10240000
rememberedSlotCounter = 1
extraSleepTime = 125
sendLock = {m_isOk = false, m_mutex = @0xb7efcff4}
#6  0xb748e4a6 in wxThreadInternal::PthreadStart (thread=0x918a6e0)
---Type <return> to continue, or q <return> to quit---
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0x916d070
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#7  0xb748e5ad in wxPthreadStart (ptr=0x918a6e0)
    at ../src/unix/threadpsx.cpp:718
No locals.
#8  0xb7eed4ff in start_thread (arg=0xb54e4b90) at pthread_create.c:297
__res = <value optimized out>
__ignore1 = <value optimized out>
__ignore2 = <value optimized out>
pd = (struct pthread *) 0xb54e4b90
now = <value optimized out>
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {-1209020428, 0, 0,
        -1253161944, 1024173252, 2082781889}, mask_was_saved = 0}}, priv = {
    pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0,
      canceltype = 0}}}
not_first_call = <value optimized out>
robust = <value optimized out>
#9  0xb71bc49e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
No locals.

---Type <return> to continue, or q <return> to quit---
Thread 1 (Thread 0xb65e8750 (LWP 4731)):
#0  0xb6a8d445 in g_io_watch_funcs () from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#1  0xb6cb0bd9 in gdk_io_destroy (data=0x9f9f928)
    at /build/buildd/gtk+2.0-2.16.1/gdk/gdkevents.c:986
No locals.
#2  0xb7682ef7 in _GSocket_GDK_Input (data=0x9f9f928, source=24,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
No locals.
#3  0xb6cb0c4f in gdk_io_invoke (source=0x9d507c0,
    condition=<value optimized out>, data=0x95d5198)
    at /build/buildd/gtk+2.0-2.16.1/gdk/gdkevents.c:1013
gdk_cond = GDK_INPUT_WRITE
#4  0xb6a46dad in g_io_unix_dispatch (source=0x95b7cb8,
    callback=0xb6cb0bf0 <gdk_io_invoke>, user_data=0x95d5198)
    at /build/buildd/glib2.0-2.20.1/glib/giounix.c:162
buffer_condition = 3064524864
#5  0xb6a0fb88 in IA__g_main_context_dispatch (context=0x8960ff8)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:1814
No locals.
#6  0xb6a130eb in g_main_context_iterate (context=0x8960ff8, block=1,
    dispatch=1, self=0x8962570)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2448
---Type <return> to continue, or q <return> to quit---
max_priority = 300
timeout = 0
some_ready = 1
nfds = 96
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0x9853790
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#7  0xb6a135ba in IA__g_main_loop_run (loop=0x9364c40)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2656
self = (GThread *) 0x8962570
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#8  0xb6e537d9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.16.1/gtk/gtkmain.c:1205
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0x89cfd70
loop = (GMainLoop *) 0x9364c40
#9  0xb768141b in wxEventLoop::Run (this=0x89cfd70)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#10 0xb7725b3c in wxAppBase::MainLoop (this=0x8960e40)
    at ../src/common/appcmn.cpp:312
---Type <return> to continue, or q <return> to quit---
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0x89cfd70}, m_pp = 0x8960e80,
  m_pOld = 0x0}
#11 0xb7725891 in wxAppBase::OnRun (this=0xb6a8f040)
    at ../src/common/appcmn.cpp:367
No locals.
#12 0xb74197ca in wxEntry (argc=@0xb75126cc, argv=0x894f480)
    at ../src/common/init.cpp:460
No locals.
#13 0xb7419887 in wxEntry (argc=@0xbfc2f990, argv=0xbfc2fa14)
    at ../src/common/init.cpp:472
No locals.
#14 0x082cb838 in main (argc=1, argv=0xb6a8d460) at ../../src/amule-gui.cpp:94
No locals.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on May 09, 2009, 07:13:41 AM
Second Jaunty - rev. 9593 (SIGABRT) crash:

$ ps axl | grep amule
Code: [Select]
0  1000  3658  3641  20   0 230984 68268 poll   S+   pts/0      0:04 gdb amule
0  1000  3659  3658  20   0 3145724 2095920 ptrace Tl pts/0    73:08 /usr/bin/amule
0  1000  8223  8191  20   0   3336   792 -      R+   pts/1      0:00 grep amule

(gdb) bt
Code: [Select]
#0  0xb8057430 in __kernel_vsyscall ()
#1  0xb72466d0 in *__GI_raise (sig=6)
    at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#2  0xb7248098 in *__GI_abort () at abort.c:88
#3  0xb746e7d5 in __cxxabiv1::__terminate (handler=0x808b180 <abort@plt>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
#4  0xb746e812 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
#5  0xb746e94a in __cxa_throw (obj=0xb749eb30, tinfo=0x8722c8c,
    dest=0xb746ee80 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
#6  0xb746efa3 in operator new (sz=24)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
#7  0xb75548c6 in wxObjectList::CreateNode (this=0xb024c80, prev=0x554e5f80,
    next=0x0, data=0x8725600, key=@0xb7655750) at ../include/wx/list.h:1178
#8  0xb7569b09 in wxListBase::Append (this=0xb024c80, object=0x8725600)
    at ../src/common/list.cpp:244
#9  0xb75d3096 in wxEvtHandler::AddPendingEvent (this=0x8725600,
    event=@0xbfc74660) at ../include/wx/list.h:1178
#10 0xb7676db8 in wxSocketBase::OnRequest (this=0xb9e4e78,
    notification=wxSOCKET_OUTPUT) at ../src/common/socket.cpp:1006
#11 0xb7676eb4 in wx_socket_callback (notification=GSOCK_OUTPUT,
    cdata=0xb9e4e78 "\blP\b") at ../src/common/socket.cpp:942
---Type <return> to continue, or q <return> to quit---
#12 0xb767b72b in GSocket::Detected_Write (this=0xba8dda0)
    at ../src/unix/gsocket.cpp:1836
#13 0xb77c5ef7 in _GSocket_GDK_Input (data=0xba8dda0, source=35,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
#14 0xb6df3c4f in gdk_io_invoke (source=0xb21eb940,
    condition=<value optimized out>, data=0xb57eadb0)
    at /build/buildd/gtk+2.0-2.16.1/gdk/gdkevents.c:1013
#15 0xb6b89dad in g_io_unix_dispatch (source=0xb1f0eb50,
    callback=0xb6df3bf0 <gdk_io_invoke>, user_data=0xb57eadb0)
    at /build/buildd/glib2.0-2.20.1/glib/giounix.c:162
#16 0xb6b52b88 in IA__g_main_context_dispatch (context=0xa845ff8)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:1814
#17 0xb6b560eb in g_main_context_iterate (context=0xa845ff8, block=1,
    dispatch=1, self=0xa847570)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2448
#18 0xb6b565ba in IA__g_main_loop_run (loop=0xab154b0)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2656
#19 0xb6f967d9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.16.1/gtk/gtkmain.c:1205
#20 0xb77c441b in wxEventLoop::Run (this=0xb1ffc68)
    at ../src/gtk/evtloop.cpp:76
#21 0xb7868b3c in wxAppBase::MainLoop (this=0xa845e40)
    at ../src/common/appcmn.cpp:312
---Type <return> to continue, or q <return> to quit---
#22 0xb7868891 in wxAppBase::OnRun (this=0x6) at ../src/common/appcmn.cpp:367
#23 0xb755c7ca in wxEntry (argc=@0xb76556cc, argv=0xa834480)
    at ../src/common/init.cpp:460
#24 0xb755c887 in wxEntry (argc=@0xbfc749d0, argv=0xbfc74a54)
    at ../src/common/init.cpp:472
#25 0x082cb838 in main (argc=Cannot access memory at address 0xe4b
) at ../../src/amule-gui.cpp:94

(gdb) bt full
Code: [Select]
#0  0xb8057430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb72466d0 in *__GI_raise (sig=6)
    at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
resultvar = <value optimized out>
pid = -1221091340
selftid = 3659
#2  0xb7248098 in *__GI_abort () at abort.c:88
act = {__sigaction_handler = {sa_handler = 0, sa_sigaction = 0},
  sa_mask = {__val = {0, 0, 0, 0, 3217507520, 3217507508, 0, 0, 0, 3217507584,
      3087488624, 134737372, 0, 0, 0, 0, 3217508120, 3217508112, 3217508116,
      3217508124, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3217508128, 3068083279, 0}},
  sa_flags = 0, sa_restorer = 0}
sigs = {__val = {32, 0 <repeats 31 times>}}
#3  0xb746e7d5 in __cxxabiv1::__terminate (handler=0x808b180 <abort@plt>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
No locals.
#4  0xb746e812 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
No locals.
#5  0xb746e94a in __cxa_throw (obj=0xb749eb30, tinfo=0x8722c8c,
    dest=0xb746ee80 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
---Type <return> to continue, or q <return> to quit---
header = <value optimized out>
#6  0xb746efa3 in operator new (sz=24)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
handler = <value optimized out>
p = <value optimized out>
#7  0xb75548c6 in wxObjectList::CreateNode (this=0xb024c80, prev=0x554e5f80,
    next=0x0, data=0x8725600, key=@0xb7655750) at ../include/wx/list.h:1178
No locals.
#8  0xb7569b09 in wxListBase::Append (this=0xb024c80, object=0x8725600)
    at ../src/common/list.cpp:244
node = <value optimized out>
__FUNCTION__ = "Append"
#9  0xb75d3096 in wxEvtHandler::AddPendingEvent (this=0x8725600,
    event=@0xbfc74660) at ../include/wx/list.h:1178
eventCopy = <value optimized out>
__FUNCTION__ = "AddPendingEvent"
#10 0xb7676db8 in wxSocketBase::OnRequest (this=0xb9e4e78,
    notification=wxSOCKET_OUTPUT) at ../src/common/socket.cpp:1006
event = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x871e668,
      static ms_classInfo = {m_className = 0xb76026c4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7b008cc, m_next = 0xb76568c4,
        static sm_classTable = 0xa8183e8}, m_refData = 0x0},
---Type <return> to continue, or q <return> to quit---
    m_eventObject = 0xb9e4e78, m_eventType = 10002, m_timeStamp = 0,
    m_id = 6123, m_callbackUserData = 0x0, m_propagationLevel = 0,
    m_skipped = false, m_isCommandEvent = false, static ms_classInfo = {
      m_className = 0xb7613ef0, m_objectSize = 36, m_objectConstructor = 0,
      m_baseInfo1 = 0xb7656858, m_baseInfo2 = 0x0,
      static sm_first = 0xb7b008cc, m_next = 0xb7657908,
      static sm_classTable = 0xa8183e8}}, m_event = wxSOCKET_OUTPUT,
  m_clientData = 0x0, static ms_classInfo = {m_className = 0xb767e068,
    m_objectSize = 44,
    m_objectConstructor = 0xb7674e60 <wxSocketEvent::wxCreateObject()>,
    m_baseInfo1 = 0xb7657920, m_baseInfo2 = 0x0, static sm_first = 0xb7b008cc,
    m_next = 0xb768754c, static sm_classTable = 0xa8183e8}}
flag = <value optimized out>
#11 0xb7676eb4 in wx_socket_callback (notification=GSOCK_OUTPUT,
    cdata=0xb9e4e78 "\blP\b") at ../src/common/socket.cpp:942
No locals.
#12 0xb767b72b in GSocket::Detected_Write (this=0xba8dda0)
    at ../src/unix/gsocket.cpp:1836
No locals.
#13 0xb77c5ef7 in _GSocket_GDK_Input (data=0xba8dda0, source=35,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
No locals.
#14 0xb6df3c4f in gdk_io_invoke (source=0xb21eb940,
---Type <return> to continue, or q <return> to quit---
    condition=<value optimized out>, data=0xb57eadb0)
    at /build/buildd/gtk+2.0-2.16.1/gdk/gdkevents.c:1013
gdk_cond = GDK_INPUT_WRITE
#15 0xb6b89dad in g_io_unix_dispatch (source=0xb1f0eb50,
    callback=0xb6df3bf0 <gdk_io_invoke>, user_data=0xb57eadb0)
    at /build/buildd/glib2.0-2.20.1/glib/giounix.c:162
buffer_condition = 6
#16 0xb6b52b88 in IA__g_main_context_dispatch (context=0xa845ff8)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:1814
No locals.
#17 0xb6b560eb in g_main_context_iterate (context=0xa845ff8, block=1,
    dispatch=1, self=0xa847570)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2448
max_priority = 110
timeout = 0
some_ready = 1
nfds = 16
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xc598858
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#18 0xb6b565ba in IA__g_main_loop_run (loop=0xab154b0)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2656
self = (GThread *) 0xa847570
---Type <return> to continue, or q <return> to quit---
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#19 0xb6f967d9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.16.1/gtk/gtkmain.c:1205
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0xb1ffc68
loop = (GMainLoop *) 0xab154b0
#20 0xb77c441b in wxEventLoop::Run (this=0xb1ffc68)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#21 0xb7868b3c in wxAppBase::MainLoop (this=0xa845e40)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0xb1ffc68}, m_pp = 0xa845e80,
  m_pOld = 0x0}
#22 0xb7868891 in wxAppBase::OnRun (this=0x6) at ../src/common/appcmn.cpp:367
No locals.
#23 0xb755c7ca in wxEntry (argc=@0xb76556cc, argv=0xa834480)
    at ../src/common/init.cpp:460
No locals.
#24 0xb755c887 in wxEntry (argc=@0xbfc749d0, argv=0xbfc74a54)
    at ../src/common/init.cpp:472
No locals.
---Type <return> to continue, or q <return> to quit---
#25 0x082cb838 in main (argc=Cannot access memory at address 0xe4b
) at ../../src/amule-gui.cpp:94
No locals.

Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on May 09, 2009, 07:14:30 AM
(gdb) thread apply all bt full
Code: [Select]
Thread 5 (Thread 0xb45feb90 (LWP 3675)):
#0  0xb8057430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb8036cf9 in __lll_lock_wait ()
    at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/lowlevellock.S:136
No locals.
#2  0xb8032129 in _L_lock_89 () from /lib/tls/i686/cmov/libpthread.so.0
No locals.
#3  0xb8031a32 in __pthread_mutex_lock (mutex=0xa895ba0)
    at pthread_mutex_lock.c:86
ignore3 = -1880832920
ignore1 = -512
ignore2 = 128
oldval = <value optimized out>
retval = <value optimized out>
__PRETTY_FUNCTION__ = "__pthread_mutex_lock"
#4  0xb75cf3c2 in wxMutexInternal::Lock (this=0xa895ba0)
    at ../src/unix/threadpsx.cpp:248
err = <value optimized out>
__FUNCTION__ = "Lock"
#5  0xb75cf4c3 in wxMutex::Lock (this=0xa84dda0)
    at ../include/wx/thrimpl.cpp:44
---Type <return> to continue, or q <return> to quit---
__FUNCTION__ = "Lock"
#6  0xb75d3075 in wxEvtHandler::AddPendingEvent (this=0xa845e40,
    event=@0xb45fe29c) at ../include/wx/thread.h:271
eventCopy = <value optimized out>
__FUNCTION__ = "AddPendingEvent"

#7  0x081b63a0 in wxPostEvent (dest=0xa845e40, event=@0xb45fe29c)
    at /usr/include/wx-2.8/wx/event.h:2565
__FUNCTION__ = "wxPostEvent"
#8  0x08416858 in CTimerThread::Entry (this=0xab15460)
    at ../../src/Timer.cpp:68
now = 579173202
sinceLast = 0
timeout = 100
evt = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x85fd788,
      static ms_classInfo = {m_className = 0xb76026c4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7b008cc, m_next = 0xb76568c4,
        static sm_classTable = 0xa8183e8}, m_refData = 0x0},
    m_eventObject = 0x0, m_eventType = 10244, m_timeStamp = 0, m_id = 6128,
    m_callbackUserData = 0x0, m_propagationLevel = 0, m_skipped = false,
    m_isCommandEvent = false, static ms_classInfo = {m_className = 0xb7613ef0,
      m_objectSize = 36, m_objectConstructor = 0, m_baseInfo1 = 0xb7656858,
      m_baseInfo2 = 0x0, static sm_first = 0xb7b008cc, m_next = 0xb7657908,
---Type <return> to continue, or q <return> to quit---
      static sm_classTable = 0xa8183e8}}, <No data fields>}
lastEvent = 579173302
#9  0xb75d14a6 in wxThreadInternal::PthreadStart (thread=0xab15460)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0xab15488
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#10 0xb75d15ad in wxPthreadStart (ptr=0xab15460)
    at ../src/unix/threadpsx.cpp:718
No locals.
#11 0xb80304ff in start_thread (arg=0xb45feb90) at pthread_create.c:297
__res = <value optimized out>
__ignore1 = <value optimized out>
__ignore2 = <value optimized out>
pd = (struct pthread *) 0xb45feb90
now = <value optimized out>
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {-1207697420, 0, 0,
        -1268784088, 346087015, -1385185153}, mask_was_saved = 0}}, priv = {
    pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0,
      canceltype = 0}}}
not_first_call = <value optimized out>
robust = <value optimized out>
---Type <return> to continue, or q <return> to quit---
#12 0xb72ff49e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
No locals.

Thread 3 (Thread 0xb5600b90 (LWP 3673)):
#0  0xb8057430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb72466d0 in *__GI_raise (sig=6)
    at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
resultvar = <value optimized out>
pid = -1221091340
selftid = 3673
#2  0xb7248098 in *__GI_abort () at abort.c:88
act = {__sigaction_handler = {sa_handler = 0, sa_sigaction = 0},
  sa_mask = {__val = {3042965384, 1, 1, 3076552632, 0, 3075989540, 3076876568,
      4294967295, 2278929199, 3076841460, 3076876568, 3076876568, 3042965336,
      3075989670, 176378512, 0, 5, 3076841460, 3076841460, 1, 3042965384,
      3075973283, 3076876568, 2710568936, 4, 3076552628, 4294967295,
      3042965600, 3072900212, 4, 4, 4}}, sa_flags = -1252001880,
  sa_restorer = 0xb728c52e <*__GI___libc_free+14>}
sigs = {__val = {32, 0 <repeats 31 times>}}
#3  0x0841ccd1 in OnUnhandledException ()
    at ../../../../src/libs/common/MuleDebug.cpp:103
t = (class std::type_info *) 0x8722c8c
---Type <return> to continue, or q <return> to quit---
output = (FILE *) 0xb737a560
#4  0xb746e7d5 in __cxxabiv1::__terminate (
    handler=0x841c960 <OnUnhandledException()>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
No locals.
#5  0xb746e812 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
No locals.
#6  0xb746e8cb in __cxa_rethrow ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:109
globals = (__cxxabiv1::__cxa_eh_globals *) 0x0
header = (__cxxabiv1::__cxa_exception *) 0xb749e910
#7  0x0822808b in std::__norm::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::_M_new_elements_at_front (this=0xb1a7920,
    __new_elems=1) at /usr/include/c++/4.3/bits/deque.tcc:734
__new_nodes = 1
__i = 1
#8  0x082280f3 in std::__norm::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::_M_reserve_elements_at_front (this=0xb1a7920, __n=1)
    at /usr/include/c++/4.3/bits/stl_deque.h:1635
__vacancies = 0
#9  0x0822903f in std::__norm::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::_M_range_insert_aux<__gnu_debug::_Safe_iterator<std::__---Type <return> to continue, or q <return> to quit---
norm::_Deque_iterator<ThrottledControlSocket*, ThrottledControlSocket*&, ThrottledControlSocket**>, std::__debug::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> > > > (this=0xb1a7920, __pos=
      {_M_cur = 0xb55ffb6c, _M_first = 0xb55ffb4c, _M_last = 0xb55ffb2c, _M_node = 0xb7}, __first=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb55ffb4c, _M_version = 3042966316, _M_prior = 0xb7, _M_next = 0x31}, _M_current = {_M_cur = 0x34, _M_first = 0xb749bff4, _M_last = 0x808c440, _M_node = 0xb55ffbb0}}, __last=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb55ffb2c, _M_version = 183, _M_prior = 0x31, _M_next = 0x34}, _M_current = {_M_cur = 0xb749bff4, _M_first = 0x808c440, _M_last = 0xb55ffbb0, _M_node = 0xb55ffb68}})
    at /usr/include/c++/4.3/bits/deque.tcc:440
__new_start = {_M_cur = 0x7fffffff, _M_first = 0x9da5ffff,
  _M_last = 0x7fffffff, _M_node = 0xb55ffae8}
__n = 1
#10 0x0822951e in std::__norm::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::_M_insert_dispatch<__gnu_debug::_Safe_iterator<std::__norm::_Deque_iterator<ThrottledControlSocket*, ThrottledControlSocket*&, ThrottledControlSocket**>, std::__debug::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> > > > (this=0xb1a7920, __pos=
      {_M_cur = 0xb55ffbf0, _M_first = 0xb55ffbd0, _M_last = 0xb55ffbb0, _M_node = 0xb07a208}, __first=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb55ffbd0, _M_vers---Type <return> to continue, or q <return> to quit---
ion = 3042966448, _M_prior = 0xb07a208, _M_next = 0xb55ffbf0}, _M_current = {_M_cur = 0xb55ffbc8, _M_first = 0x8221f56, _M_last = 0xb1a79b0, _M_node = 0x494c11}}, __last=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb55ffbb0, _M_version = 185049608, _M_prior = 0xb55ffbf0, _M_next = 0xb55ffbc8}, _M_current = {_M_cur = 0x8221f56, _M_first = 0xb1a79b0, _M_last = 0x494c11, _M_node = 0xb55ffbd0}}) at /usr/include/c++/4.3/bits/stl_deque.h:1544
No locals.
#11 0x082295ea in std::__norm::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::insert<__gnu_debug::_Safe_iterator<std::__norm::_Deque_iterator<ThrottledControlSocket*, ThrottledControlSocket*&, ThrottledControlSocket**>, std::__debug::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> > > > (this=0xb1a7920, __position=
      {_M_cur = 0xb5600030, _M_first = 0xb5600010, _M_last = 0xb55ffff0, _M_node = 0x3}, __first=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb5600010, _M_version = 3042967536, _M_prior = 0x3, _M_next = 0xb8032100}, _M_current = {_M_cur = 0xb55ffd98, _M_first = 0x817489a, _M_last = 0xb728ca51, _M_node = 0x10}},
    __last=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb55ffff0, _M_version = 3, _M_prior = 0xb8032100, _M_next = 0xb55ffd98}, _M_current = {_M_cur = 0x817489a, _M_first = 0xb728ca51, _M_last = 0x10, _M_node = 0x2}})
    at /usr/include/c++/4.3/bits/stl_deque.h:1301
---Type <return> to continue, or q <return> to quit---
No locals.
#12 0x0822984b in std::__debug::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> >::insert<__gnu_debug::_Safe_iterator<std::__norm::_Deque_iterator<ThrottledControlSocket*, ThrottledControlSocket*&, ThrottledControlSocket**>, std::__debug::deque<ThrottledControlSocket*, std::allocator<ThrottledControlSocket*> > > > (this=0xb1a7920, __position=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb560016c, _M_version = 3042967884, _M_prior = 0xb560012c, _M_next = 0x0}, _M_current = {_M_cur = 0xb56002a8, _M_first = 0x0, _M_last = 0x0, _M_node = 0x0}}, __first=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb560014c, _M_version = 3042967852, _M_prior = 0x0, _M_next = 0xb56002a8}, _M_current = {_M_cur = 0x0, _M_first = 0x0, _M_last = 0x0, _M_node = 0x0}}, __last=
        {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0xb560012c, _M_version = 0, _M_prior = 0xb56002a8, _M_next = 0x0}, _M_current = {_M_cur = 0x0, _M_first = 0x0, _M_last = 0x0, _M_node = 0xffffffe0}})
    at /usr/include/c++/4.3/debug/deque:329
No locals.
#13 0x0821e27e in UploadBandwidthThrottler::Entry (this=0xb1a7908)
    at ../../src/UploadBandwidthThrottler.cpp:372
queueLock = {m_isOk = true, m_mutex = @0xb1a791c}
spentBytes = 0
spentOverhead = 0
sendLock = {m_isOk = true, m_mutex = @0xb1a7918}
---Type <return> to continue, or q <return> to quit---
maxSlot = 31
timeSinceLastLoop = 1000
minFragSize = 1300
doubleSendSize = 2600
bytesToSpend = 1665938
sleepTime = 1000
thisLoopTick = 579173874
TIME_BETWEEN_UPLOAD_LOOPS = 1
lastLoopTick = 579173874
realBytesToSpend = 1665938407
allowedDataRate = 10240000
rememberedSlotCounter = 16
extraSleepTime = 1000
sendLock = {m_isOk = false, m_mutex = @0xb803fff4}
#14 0xb75d14a6 in wxThreadInternal::PthreadStart (thread=0xb1a7908)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0xb04ece0
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#15 0xb75d15ad in wxPthreadStart (ptr=0xb1a7908)
    at ../src/unix/threadpsx.cpp:718
No locals.
---Type <return> to continue, or q <return> to quit---
#16 0xb80304ff in start_thread (arg=0xb5600b90) at pthread_create.c:297
__res = <value optimized out>
__ignore1 = <value optimized out>
__ignore2 = <value optimized out>
pd = (struct pthread *) 0xb5600b90
now = <value optimized out>
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {-1207697420, 0, 0,
        -1251998680, 1801510501, -1385185153}, mask_was_saved = 0}}, priv = {
    pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0,
      canceltype = 0}}}
not_first_call = <value optimized out>
robust = <value optimized out>
#17 0xb72ff49e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
No locals.

Thread 1 (Thread 0xb672b750 (LWP 3659)):
#0  0xb8057430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb72466d0 in *__GI_raise (sig=6)
    at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
resultvar = <value optimized out>
pid = -1221091340
selftid = 3659
---Type <return> to continue, or q <return> to quit---
#2  0xb7248098 in *__GI_abort () at abort.c:88
act = {__sigaction_handler = {sa_handler = 0, sa_sigaction = 0},
  sa_mask = {__val = {0, 0, 0, 0, 3217507520, 3217507508, 0, 0, 0, 3217507584,
      3087488624, 134737372, 0, 0, 0, 0, 3217508120, 3217508112, 3217508116,
      3217508124, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3217508128, 3068083279, 0}},
  sa_flags = 0, sa_restorer = 0}
sigs = {__val = {32, 0 <repeats 31 times>}}
#3  0xb746e7d5 in __cxxabiv1::__terminate (handler=0x808b180 <abort@plt>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
No locals.
#4  0xb746e812 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
No locals.
#5  0xb746e94a in __cxa_throw (obj=0xb749eb30, tinfo=0x8722c8c,
    dest=0xb746ee80 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
header = <value optimized out>
#6  0xb746efa3 in operator new (sz=24)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
handler = <value optimized out>
p = <value optimized out>
#7  0xb75548c6 in wxObjectList::CreateNode (this=0xb024c80, prev=0x554e5f80,
    next=0x0, data=0x8725600, key=@0xb7655750) at ../include/wx/list.h:1178
---Type <return> to continue, or q <return> to quit---
No locals.
#8  0xb7569b09 in wxListBase::Append (this=0xb024c80, object=0x8725600)
    at ../src/common/list.cpp:244
node = <value optimized out>
__FUNCTION__ = "Append"
#9  0xb75d3096 in wxEvtHandler::AddPendingEvent (this=0x8725600,
    event=@0xbfc74660) at ../include/wx/list.h:1178
eventCopy = <value optimized out>
__FUNCTION__ = "AddPendingEvent"
#10 0xb7676db8 in wxSocketBase::OnRequest (this=0xb9e4e78,
    notification=wxSOCKET_OUTPUT) at ../src/common/socket.cpp:1006
event = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x871e668,
      static ms_classInfo = {m_className = 0xb76026c4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7b008cc, m_next = 0xb76568c4,
        static sm_classTable = 0xa8183e8}, m_refData = 0x0},
    m_eventObject = 0xb9e4e78, m_eventType = 10002, m_timeStamp = 0,
    m_id = 6123, m_callbackUserData = 0x0, m_propagationLevel = 0,
    m_skipped = false, m_isCommandEvent = false, static ms_classInfo = {
      m_className = 0xb7613ef0, m_objectSize = 36, m_objectConstructor = 0,
      m_baseInfo1 = 0xb7656858, m_baseInfo2 = 0x0,
      static sm_first = 0xb7b008cc, m_next = 0xb7657908,
      static sm_classTable = 0xa8183e8}}, m_event = wxSOCKET_OUTPUT,
---Type <return> to continue, or q <return> to quit---
  m_clientData = 0x0, static ms_classInfo = {m_className = 0xb767e068,
    m_objectSize = 44,
    m_objectConstructor = 0xb7674e60 <wxSocketEvent::wxCreateObject()>,
    m_baseInfo1 = 0xb7657920, m_baseInfo2 = 0x0, static sm_first = 0xb7b008cc,
    m_next = 0xb768754c, static sm_classTable = 0xa8183e8}}
flag = <value optimized out>
#11 0xb7676eb4 in wx_socket_callback (notification=GSOCK_OUTPUT,
    cdata=0xb9e4e78 "\blP\b") at ../src/common/socket.cpp:942
No locals.
#12 0xb767b72b in GSocket::Detected_Write (this=0xba8dda0)
    at ../src/unix/gsocket.cpp:1836
No locals.
#13 0xb77c5ef7 in _GSocket_GDK_Input (data=0xba8dda0, source=35,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
No locals.
#14 0xb6df3c4f in gdk_io_invoke (source=0xb21eb940,
    condition=<value optimized out>, data=0xb57eadb0)
    at /build/buildd/gtk+2.0-2.16.1/gdk/gdkevents.c:1013
gdk_cond = GDK_INPUT_WRITE
#15 0xb6b89dad in g_io_unix_dispatch (source=0xb1f0eb50,
    callback=0xb6df3bf0 <gdk_io_invoke>, user_data=0xb57eadb0)
    at /build/buildd/glib2.0-2.20.1/glib/giounix.c:162
buffer_condition = 6
---Type <return> to continue, or q <return> to quit---
#16 0xb6b52b88 in IA__g_main_context_dispatch (context=0xa845ff8)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:1814
No locals.
#17 0xb6b560eb in g_main_context_iterate (context=0xa845ff8, block=1,
    dispatch=1, self=0xa847570)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2448
max_priority = 110
timeout = 0
some_ready = 1
nfds = 16
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xc598858
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#18 0xb6b565ba in IA__g_main_loop_run (loop=0xab154b0)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2656
self = (GThread *) 0xa847570
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#19 0xb6f967d9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.16.1/gtk/gtkmain.c:1205
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0xb1ffc68
loop = (GMainLoop *) 0xab154b0
---Type <return> to continue, or q <return> to quit---
#20 0xb77c441b in wxEventLoop::Run (this=0xb1ffc68)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#21 0xb7868b3c in wxAppBase::MainLoop (this=0xa845e40)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0xb1ffc68}, m_pp = 0xa845e80,
  m_pOld = 0x0}
#22 0xb7868891 in wxAppBase::OnRun (this=0x6) at ../src/common/appcmn.cpp:367
No locals.
#23 0xb755c7ca in wxEntry (argc=@0xb76556cc, argv=0xa834480)
    at ../src/common/init.cpp:460
No locals.
#24 0xb755c887 in wxEntry (argc=@0xbfc749d0, argv=0xbfc74a54)
    at ../src/common/init.cpp:472
No locals.
#25 0x082cb838 in main (argc=Cannot access memory at address 0xe4b
) at ../../src/amule-gui.cpp:94
No locals.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on May 11, 2009, 07:02:46 PM
Rev. 9596 crashed
(delivering a beautiful bt):

Program received signal SIGABRT, Aborted.
[Switching to Thread 0xb675a750 (LWP 4101)]
0xb8086430 in __kernel_vsyscall ()

$ ps axl | grep amule
Code: [Select]
0  1000  4100  4083  20   0 214956 34348 poll   S+   pts/0      0:03 gdb amule
0  1000  4101  4100  20   0 3145724 2444512 ptrace Tl pts/0   171:47 /usr/bin/amule
0  1000 21607 21530  20   0   3340   816 pipe_w S+   pts/1      0:00 grep amule

(gdb) bt
Code: [Select]

#0  0xb8086430 in __kernel_vsyscall ()
#1  0xb72756d0 in *__GI_raise (sig=6)
    at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#2  0xb7277098 in *__GI_abort () at abort.c:88
#3  0xb749d7d5 in __cxxabiv1::__terminate (handler=0x808b180 <abort@plt>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
#4  0xb749d812 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
#5  0xb749d94a in __cxa_throw (obj=0xb74cd930, tinfo=0x8723c8c,
    dest=0xb749de80 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
#6  0xb749dfa3 in operator new (sz=24)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
#7  0xb75838c6 in wxObjectList::CreateNode (this=0x9f56368, prev=0xbfffd008,
    next=0x0, data=0xbffff008, key=@0xb7684750) at ../include/wx/list.h:1178
#8  0xb7598b09 in wxListBase::Append (this=0x9f56368, object=0xbffff008)
    at ../src/common/list.cpp:244
#9  0xb7602057 in wxEvtHandler::AddPendingEvent (this=0x8726600,
    event=@0xbf9a1390) at ../include/wx/list.h:1178
#10 0xb76a5db8 in wxSocketBase::OnRequest (this=0xb6b7398,
    notification=wxSOCKET_OUTPUT) at ../src/common/socket.cpp:1006
#11 0xb76a5eb4 in wx_socket_callback (notification=GSOCK_OUTPUT,
    cdata=0xb6b7398 "HnP\b") at ../src/common/socket.cpp:942
---Type <return> to continue, or q <return> to quit---
#12 0xb76aa72b in GSocket::Detected_Write (this=0xa6c6ee0)
    at ../src/unix/gsocket.cpp:1836
#13 0xb77f4ef7 in _GSocket_GDK_Input (data=0xa6c6ee0, source=13,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
#14 0xb6e22c4f in gdk_io_invoke (source=0xb5a098c0,
    condition=<value optimized out>, data=0xb5a0c768)
    at /build/buildd/gtk+2.0-2.16.1/gdk/gdkevents.c:1013
#15 0xb6bb8dad in g_io_unix_dispatch (source=0xb5a92440,
    callback=0xb6e22bf0 <gdk_io_invoke>, user_data=0xb5a0c768)
    at /build/buildd/glib2.0-2.20.1/glib/giounix.c:162
#16 0xb6b81b88 in IA__g_main_context_dispatch (context=0x962fff8)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:1814
#17 0xb6b850eb in g_main_context_iterate (context=0x962fff8, block=1,
    dispatch=1, self=0x9631570)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2448
#18 0xb6b855ba in IA__g_main_loop_run (loop=0x96cab40)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2656
#19 0xb6fc57d9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.16.1/gtk/gtkmain.c:1205
#20 0xb77f341b in wxEventLoop::Run (this=0xa008288)
    at ../src/gtk/evtloop.cpp:76
#21 0xb7897b3c in wxAppBase::MainLoop (this=0x962fe40)
    at ../src/common/appcmn.cpp:312
---Type <return> to continue, or q <return> to quit---
#22 0xb7897891 in wxAppBase::OnRun (this=0x6) at ../src/common/appcmn.cpp:367
#23 0xb758b7ca in wxEntry (argc=@0xb76846cc, argv=0x961e480)
    at ../src/common/init.cpp:460
#24 0xb758b887 in wxEntry (argc=@0xbf9a1700, argv=0xbf9a1784)
    at ../src/common/init.cpp:472
#25 0x082cba70 in main (argc=1744830480, argv=0x871f6)
    at ../../src/amule-gui.cpp:94

(gdb) bt full
Code: [Select]
#0  0xb8086430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb72756d0 in *__GI_raise (sig=6)
    at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
resultvar = <value optimized out>
pid = -1220898828
selftid = 4101
#2  0xb7277098 in *__GI_abort () at abort.c:88
act = {__sigaction_handler = {sa_handler = 0, sa_sigaction = 0},
  sa_mask = {__val = {0, 0, 0, 0, 3214545392, 3214545380, 0, 0, 0, 3214545456,
      3087681136, 134737372, 0, 0, 0, 0, 3214545992, 3214545984, 3214545988,
      3214545996, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3214546000, 3068275791, 0}},
  sa_flags = 0, sa_restorer = 0}
sigs = {__val = {32, 0 <repeats 31 times>}}
#3  0xb749d7d5 in __cxxabiv1::__terminate (handler=0x808b180 <abort@plt>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
No locals.
#4  0xb749d812 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
No locals.
#5  0xb749d94a in __cxa_throw (obj=0xb74cd930, tinfo=0x8723c8c,
    dest=0xb749de80 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
---Type <return> to continue, or q <return> to quit---
header = <value optimized out>
#6  0xb749dfa3 in operator new (sz=24)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
handler = <value optimized out>
p = <value optimized out>
#7  0xb75838c6 in wxObjectList::CreateNode (this=0x9f56368, prev=0xbfffd008,
    next=0x0, data=0xbffff008, key=@0xb7684750) at ../include/wx/list.h:1178
No locals.
#8  0xb7598b09 in wxListBase::Append (this=0x9f56368, object=0xbffff008)
    at ../src/common/list.cpp:244
node = <value optimized out>
__FUNCTION__ = "Append"
#9  0xb7602057 in wxEvtHandler::AddPendingEvent (this=0x8726600,
    event=@0xbf9a1390) at ../include/wx/list.h:1178
eventCopy = <value optimized out>
__FUNCTION__ = "AddPendingEvent"
#10 0xb76a5db8 in wxSocketBase::OnRequest (this=0xb6b7398,
    notification=wxSOCKET_OUTPUT) at ../src/common/socket.cpp:1006
event = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x871f668,
      static ms_classInfo = {m_className = 0xb76316c4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7b2f8cc, m_next = 0xb76858c4,
        static sm_classTable = 0x96023e8}, m_refData = 0x0},
---Type <return> to continue, or q <return> to quit---
    m_eventObject = 0xb6b7398, m_eventType = 10002, m_timeStamp = 0,
    m_id = 6123, m_callbackUserData = 0x0, m_propagationLevel = 0,
    m_skipped = false, m_isCommandEvent = false, static ms_classInfo = {
      m_className = 0xb7642ef0, m_objectSize = 36, m_objectConstructor = 0,
      m_baseInfo1 = 0xb7685858, m_baseInfo2 = 0x0,
      static sm_first = 0xb7b2f8cc, m_next = 0xb7686908,
      static sm_classTable = 0x96023e8}}, m_event = wxSOCKET_OUTPUT,
  m_clientData = 0x0, static ms_classInfo = {m_className = 0xb76ad068,
    m_objectSize = 44,
    m_objectConstructor = 0xb76a3e60 <wxSocketEvent::wxCreateObject()>,
    m_baseInfo1 = 0xb7686920, m_baseInfo2 = 0x0, static sm_first = 0xb7b2f8cc,
    m_next = 0xb76b654c, static sm_classTable = 0x96023e8}}
flag = <value optimized out>
#11 0xb76a5eb4 in wx_socket_callback (notification=GSOCK_OUTPUT,
    cdata=0xb6b7398 "HnP\b") at ../src/common/socket.cpp:942
No locals.
#12 0xb76aa72b in GSocket::Detected_Write (this=0xa6c6ee0)
    at ../src/unix/gsocket.cpp:1836
No locals.
#13 0xb77f4ef7 in _GSocket_GDK_Input (data=0xa6c6ee0, source=13,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
No locals.
#14 0xb6e22c4f in gdk_io_invoke (source=0xb5a098c0,
---Type <return> to continue, or q <return> to quit---
    condition=<value optimized out>, data=0xb5a0c768)
    at /build/buildd/gtk+2.0-2.16.1/gdk/gdkevents.c:1013
gdk_cond = GDK_INPUT_WRITE
#15 0xb6bb8dad in g_io_unix_dispatch (source=0xb5a92440,
    callback=0xb6e22bf0 <gdk_io_invoke>, user_data=0xb5a0c768)
    at /build/buildd/glib2.0-2.20.1/glib/giounix.c:162
buffer_condition = 6
#16 0xb6b81b88 in IA__g_main_context_dispatch (context=0x962fff8)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:1814
No locals.
#17 0xb6b850eb in g_main_context_iterate (context=0x962fff8, block=1,
    dispatch=1, self=0x9631570)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2448
max_priority = 110
timeout = 0
some_ready = 1
nfds = 9
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xb597528
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#18 0xb6b855ba in IA__g_main_loop_run (loop=0x96cab40)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2656
self = (GThread *) 0x9631570
---Type <return> to continue, or q <return> to quit---
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#19 0xb6fc57d9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.16.1/gtk/gtkmain.c:1205
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0xa008288
loop = (GMainLoop *) 0x96cab40
#20 0xb77f341b in wxEventLoop::Run (this=0xa008288)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#21 0xb7897b3c in wxAppBase::MainLoop (this=0x962fe40)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0xa008288}, m_pp = 0x962fe80,
  m_pOld = 0x0}
#22 0xb7897891 in wxAppBase::OnRun (this=0x6) at ../src/common/appcmn.cpp:367
No locals.
#23 0xb758b7ca in wxEntry (argc=@0xb76846cc, argv=0x961e480)
    at ../src/common/init.cpp:460
No locals.
#24 0xb758b887 in wxEntry (argc=@0xbf9a1700, argv=0xbf9a1784)
    at ../src/common/init.cpp:472
No locals.
---Type <return> to continue, or q <return> to quit---
#25 0x082cba70 in main (argc=1744830480, argv=0x871f6)
    at ../../src/amule-gui.cpp:94
No locals.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on May 11, 2009, 07:03:40 PM
(gdb) thread apply all bt full
Code: [Select]

Thread 5 (Thread 0xb4655b90 (LWP 4117)):
#0  wxString (this=0xb4655058, psz=@0xb46550b8)
    at /usr/include/wx-2.8/wx/string.h:722
No locals.
#1  0x0841b861 in get_backtrace (n=1)
    at ../../../../src/libs/common/MuleDebug.cpp:333
wxBtString = {<wxStringBase> = {static npos = 4294967295,
    m_pchData = 0xb72bac74}, <No data fields>}
posLPar = -1552413040
posRPar = -1219710988
posLBra = -1268428616
posRBra = -1207336458
len = -1552413040
hasFunction = 96
i = 0
bt_array = {0x841b563, 0x841ce57, 0xb749d7d5, 0xb749d812, 0xb749d94a,
  0xb749dfa3, 0x84165e1, 0xb7602025, 0x81b63a0, 0x8416a90, 0xb76004a6,
  0xb76005ad, 0xb805f4ff, 0xb732e49e, 0xb46550b4, 0x0, 0xb46550b8, 0xb46550e0,
  0xb4654d88, 0xb46550e8, 0xb46550e4, 0xb46550c4, 0xb46550ec, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xb46550f0, 0x841cc46, 0x86e26b0, 0x0, 0x0,
  0x841cb98, 0x40000000, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xb4654f84, 0x0,
  0xb4654f88, 0xb4654f8c, 0x0, 0xb4654f98, 0xb4654f90, 0xb4654f94, 0xb4654f9c,
---Type <return> to continue, or q <return> to quit---
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xb4654fa0, 0xb73b55e5, 0x0,
  0x0, 0x0, 0xb73b5430, 0x40000000, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0xa3780e90, 0x4, 0xb74caff4, 0xa3780e90, 0xb74d18e4, 0xb4655158, 0x841cc46,
  0xa3780e90, 0xb4655090, 0xb80902bf, 0xb4655080, 0x80528c4, 0xb4655074,
  0xb80a47cc, 0x0, 0xb6770cd0, 0x5, 0x0, 0x1, 0x0, 0x0, 0x0}
bt_strings = (char **) 0xa3780eb8
num_entries = 14
libname = {<std::__norm::vector<wxString, std::allocator<wxString> >> = {<std::__norm::_Vector_base<wxString, std::allocator<wxString> >> = {
      _M_impl = {<std::allocator<wxString>> = {<__gnu_cxx::new_allocator<wxString>> = {<No data fields>}, <No data fields>}, _M_start = 0xa37811e0,
        _M_finish = 0xa3781218,
        _M_end_of_storage = 0xa3781218}}, <No data fields>}, <__gnu_debug::_Safe_sequence<std::__debug::vector<wxString, std::allocator<wxString> > >> = {<__gnu_debug::_Safe_sequence_base> = {_M_iterators = 0x0, _M_const_iterators = 0x0,
      _M_version = 1}, <No data fields>}, _M_guaranteed_capacity = 14}
funcname = {<std::__norm::vector<wxString, std::allocator<wxString> >> = {<std::__norm::_Vector_base<wxString, std::allocator<wxString> >> = {
      _M_impl = {<std::allocator<wxString>> = {<__gnu_cxx::new_allocator<wxString>> = {<No data fields>}, <No data fields>}, _M_start = 0xa3781220,
        _M_finish = 0xa3781258,
        _M_end_of_storage = 0xa3781258}}, <No data fields>}, <__gnu_debug::_Safe_sequence<std::__debug::vector<wxString, std::allocator<wxString> > >> = {<__gnu---Type <return> to continue, or q <return> to quit---
_debug::_Safe_sequence_base> = {_M_iterators = 0x0, _M_const_iterators = 0x0,
      _M_version = 1}, <No data fields>}, _M_guaranteed_capacity = 14}
address = {<std::__norm::vector<wxString, std::allocator<wxString> >> = {<std::__norm::_Vector_base<wxString, std::allocator<wxString> >> = {
      _M_impl = {<std::allocator<wxString>> = {<__gnu_cxx::new_allocator<wxString>> = {<No data fields>}, <No data fields>}, _M_start = 0xa3781260,
        _M_finish = 0xa3781298,
        _M_end_of_storage = 0xa3781298}}, <No data fields>}, <__gnu_debug::_Safe_sequence<std::__debug::vector<wxString, std::allocator<wxString> > >> = {<__gnu_debug::_Safe_sequence_base> = {_M_iterators = 0x0, _M_const_iterators = 0x0,
      _M_version = 1}, <No data fields>}, _M_guaranteed_capacity = 14}
AllAddresses = {<wxStringBase> = {static npos = 4294967295,
    m_pchData = 0xb76367b4}, <No data fields>}
out = {m_nSize = 3074392540, m_nCount = 1, m_pItems = 0xb80a3ff4,
  m_autoSort = 189}
hasLineNumberInfo = 183
trace = {<wxStringBase> = {static npos = 4294967295,
    m_pchData = 0xb675da80}, <No data fields>}
__FUNCTION__ = "get_backtrace"
#2  0x0841ce57 in OnUnhandledException ()
    at ../../../../src/libs/common/MuleDebug.cpp:101
status = 0
dem = 0xb3c50738 " \237dzP"
---Type <return> to continue, or q <return> to quit---
name = 0xb74a7df3 "St9bad_alloc"
t = (class std::type_info *) 0x8723c8c
output = (FILE *) 0xb73a9560
#3  0xb749d7d5 in __cxxabiv1::__terminate (
    handler=0x841cb98 <OnUnhandledException()>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
No locals.
#4  0xb749d812 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
No locals.
#5  0xb749d94a in __cxa_throw (obj=0xa3780eb0, tinfo=0x8723c8c,
    dest=0xb749de80 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
header = <value optimized out>
#6  0xb749dfa3 in operator new (sz=36)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
handler = <value optimized out>
p = <value optimized out>
#7  0x084165e1 in CTimerEvent::Clone (this=0xb465529c)
    at ../../src/Timer.cpp:158
No locals.
#8  0xb7602025 in wxEvtHandler::AddPendingEvent (this=0x962fe40,
    event=@0xb465529c) at ../src/common/event.cpp:1131
---Type <return> to continue, or q <return> to quit---
eventCopy = <value optimized out>
__FUNCTION__ = "AddPendingEvent"
#9  0x081b63a0 in wxPostEvent (dest=0x962fe40, event=@0xb465529c)
    at /usr/include/wx-2.8/wx/event.h:2565
__FUNCTION__ = "wxPostEvent"
#10 0x08416a90 in CTimerThread::Entry (this=0xa035398)
    at ../../src/Timer.cpp:68
now = 814500088
sinceLast = 0
timeout = 100
evt = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x85fdaa8,
      static ms_classInfo = {m_className = 0xb76316c4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7b2f8cc, m_next = 0xb76858c4,
        static sm_classTable = 0x96023e8}, m_refData = 0x0},
    m_eventObject = 0x0, m_eventType = 10244, m_timeStamp = 0, m_id = 6128,
    m_callbackUserData = 0x0, m_propagationLevel = 0, m_skipped = false,
    m_isCommandEvent = false, static ms_classInfo = {m_className = 0xb7642ef0,
      m_objectSize = 36, m_objectConstructor = 0, m_baseInfo1 = 0xb7685858,
      m_baseInfo2 = 0x0, static sm_first = 0xb7b2f8cc, m_next = 0xb7686908,
      static sm_classTable = 0x96023e8}}, <No data fields>}
lastEvent = 814500188
#11 0xb76004a6 in wxThreadInternal::PthreadStart (thread=0xa035398)
---Type <return> to continue, or q <return> to quit---
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0xa0353e0
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#12 0xb76005ad in wxPthreadStart (ptr=0xa035398)
    at ../src/unix/threadpsx.cpp:718
No locals.
#13 0xb805f4ff in start_thread (arg=0xb4655b90) at pthread_create.c:297
__res = <value optimized out>
__ignore1 = <value optimized out>
__ignore2 = <value optimized out>
pd = (struct pthread *) 0xb4655b90
now = <value optimized out>
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {-1207504908, 0, 0,
        -1268427736, -208873467, 851691037}, mask_was_saved = 0}}, priv = {
    pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0,
      canceltype = 0}}}
not_first_call = <value optimized out>
robust = <value optimized out>
#14 0xb732e49e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
No locals.

---Type <return> to continue, or q <return> to quit---
Thread 3 (Thread 0xb5657b90 (LWP 4115)):
#0  0xb8086430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb80668f6 in nanosleep () from /lib/tls/i686/cmov/libpthread.so.0
No locals.
#2  0xb76075d8 in wxMicroSleep (microseconds=0) at ../src/unix/utilsunx.cpp:191
tmReq = {tv_sec = 1, tv_nsec = 0}
#3  0xb7607601 in wxMilliSleep (milliseconds=1000)
    at ../src/unix/utilsunx.cpp:212
No locals.
#4  0xb75fd88d in wxThread::Sleep (milliseconds=1000)
    at ../src/unix/threadpsx.cpp:986
No locals.
#5  0x0821dd12 in UploadBandwidthThrottler::Entry (this=0x9e79b30)
    at ../../src/UploadBandwidthThrottler.cpp:320
timeSinceLastLoop = 0
minFragSize = 1300
doubleSendSize = 2600
bytesToSpend = 1672082
sleepTime = 1000
thisLoopTick = 814506108
TIME_BETWEEN_UPLOAD_LOOPS = 1
lastLoopTick = 814506108
---Type <return> to continue, or q <return> to quit---
realBytesToSpend = 22016999
allowedDataRate = 10240000
rememberedSlotCounter = 1
extraSleepTime = 1000
sendLock = {m_isOk = false, m_mutex = @0x0}
#6  0xb76004a6 in wxThreadInternal::PthreadStart (thread=0x9e79b30)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0x9e68da0
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#7  0xb76005ad in wxPthreadStart (ptr=0x9e79b30)
    at ../src/unix/threadpsx.cpp:718
No locals.
#8  0xb805f4ff in start_thread (arg=0xb5657b90) at pthread_create.c:297
__res = <value optimized out>
__ignore1 = <value optimized out>
__ignore2 = <value optimized out>
pd = (struct pthread *) 0xb5657b90
now = <value optimized out>
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {-1207504908, 0, 0,
        -1251642328, -204679161, 851691037}, mask_was_saved = 0}}, priv = {
    pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0,
---Type <return> to continue, or q <return> to quit---
      canceltype = 0}}}
not_first_call = <value optimized out>
robust = <value optimized out>
#9  0xb732e49e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
No locals.

Thread 1 (Thread 0xb675a750 (LWP 4101)):
#0  0xb8086430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb72756d0 in *__GI_raise (sig=6)
    at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
resultvar = <value optimized out>
pid = -1220898828
selftid = 4101
#2  0xb7277098 in *__GI_abort () at abort.c:88
act = {__sigaction_handler = {sa_handler = 0, sa_sigaction = 0},
  sa_mask = {__val = {0, 0, 0, 0, 3214545392, 3214545380, 0, 0, 0, 3214545456,
      3087681136, 134737372, 0, 0, 0, 0, 3214545992, 3214545984, 3214545988,
      3214545996, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3214546000, 3068275791, 0}},
  sa_flags = 0, sa_restorer = 0}
sigs = {__val = {32, 0 <repeats 31 times>}}
#3  0xb749d7d5 in __cxxabiv1::__terminate (handler=0x808b180 <abort@plt>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
---Type <return> to continue, or q <return> to quit---
No locals.
#4  0xb749d812 in std::terminate ()
    at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
No locals.
#5  0xb749d94a in __cxa_throw (obj=0xb74cd930, tinfo=0x8723c8c,
    dest=0xb749de80 <~bad_alloc>)
    at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
header = <value optimized out>
#6  0xb749dfa3 in operator new (sz=24)
    at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
handler = <value optimized out>
p = <value optimized out>
#7  0xb75838c6 in wxObjectList::CreateNode (this=0x9f56368, prev=0xbfffd008,
    next=0x0, data=0xbffff008, key=@0xb7684750) at ../include/wx/list.h:1178
No locals.
#8  0xb7598b09 in wxListBase::Append (this=0x9f56368, object=0xbffff008)
    at ../src/common/list.cpp:244
node = <value optimized out>
__FUNCTION__ = "Append"
#9  0xb7602057 in wxEvtHandler::AddPendingEvent (this=0x8726600,
    event=@0xbf9a1390) at ../include/wx/list.h:1178
eventCopy = <value optimized out>
__FUNCTION__ = "AddPendingEvent"
---Type <return> to continue, or q <return> to quit---
#10 0xb76a5db8 in wxSocketBase::OnRequest (this=0xb6b7398,
    notification=wxSOCKET_OUTPUT) at ../src/common/socket.cpp:1006
event = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x871f668,
      static ms_classInfo = {m_className = 0xb76316c4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7b2f8cc, m_next = 0xb76858c4,
        static sm_classTable = 0x96023e8}, m_refData = 0x0},
    m_eventObject = 0xb6b7398, m_eventType = 10002, m_timeStamp = 0,
    m_id = 6123, m_callbackUserData = 0x0, m_propagationLevel = 0,
    m_skipped = false, m_isCommandEvent = false, static ms_classInfo = {
      m_className = 0xb7642ef0, m_objectSize = 36, m_objectConstructor = 0,
      m_baseInfo1 = 0xb7685858, m_baseInfo2 = 0x0,
      static sm_first = 0xb7b2f8cc, m_next = 0xb7686908,
      static sm_classTable = 0x96023e8}}, m_event = wxSOCKET_OUTPUT,
  m_clientData = 0x0, static ms_classInfo = {m_className = 0xb76ad068,
    m_objectSize = 44,
    m_objectConstructor = 0xb76a3e60 <wxSocketEvent::wxCreateObject()>,
    m_baseInfo1 = 0xb7686920, m_baseInfo2 = 0x0, static sm_first = 0xb7b2f8cc,
    m_next = 0xb76b654c, static sm_classTable = 0x96023e8}}
flag = <value optimized out>
#11 0xb76a5eb4 in wx_socket_callback (notification=GSOCK_OUTPUT,
    cdata=0xb6b7398 "HnP\b") at ../src/common/socket.cpp:942
No locals.
---Type <return> to continue, or q <return> to quit---
#12 0xb76aa72b in GSocket::Detected_Write (this=0xa6c6ee0)
    at ../src/unix/gsocket.cpp:1836
No locals.
#13 0xb77f4ef7 in _GSocket_GDK_Input (data=0xa6c6ee0, source=13,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
No locals.
#14 0xb6e22c4f in gdk_io_invoke (source=0xb5a098c0,
    condition=<value optimized out>, data=0xb5a0c768)
    at /build/buildd/gtk+2.0-2.16.1/gdk/gdkevents.c:1013
gdk_cond = GDK_INPUT_WRITE
#15 0xb6bb8dad in g_io_unix_dispatch (source=0xb5a92440,
    callback=0xb6e22bf0 <gdk_io_invoke>, user_data=0xb5a0c768)
    at /build/buildd/glib2.0-2.20.1/glib/giounix.c:162
buffer_condition = 6
#16 0xb6b81b88 in IA__g_main_context_dispatch (context=0x962fff8)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:1814
No locals.
#17 0xb6b850eb in g_main_context_iterate (context=0x962fff8, block=1,
    dispatch=1, self=0x9631570)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2448
max_priority = 110
timeout = 0
some_ready = 1
---Type <return> to continue, or q <return> to quit---
nfds = 9
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xb597528
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#18 0xb6b855ba in IA__g_main_loop_run (loop=0x96cab40)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2656
self = (GThread *) 0x9631570
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#19 0xb6fc57d9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.16.1/gtk/gtkmain.c:1205
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0xa008288
loop = (GMainLoop *) 0x96cab40
#20 0xb77f341b in wxEventLoop::Run (this=0xa008288)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#21 0xb7897b3c in wxAppBase::MainLoop (this=0x962fe40)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0xa008288}, m_pp = 0x962fe80,
  m_pOld = 0x0}
#22 0xb7897891 in wxAppBase::OnRun (this=0x6) at ../src/common/appcmn.cpp:367
---Type <return> to continue, or q <return> to quit---
No locals.
#23 0xb758b7ca in wxEntry (argc=@0xb76846cc, argv=0x961e480)
    at ../src/common/init.cpp:460
No locals.
#24 0xb758b887 in wxEntry (argc=@0xbf9a1700, argv=0xbf9a1784)
    at ../src/common/init.cpp:472
No locals.
#25 0x082cba70 in main (argc=1744830480, argv=0x871f6)
    at ../../src/amule-gui.cpp:94
No locals.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on May 12, 2009, 04:24:49 PM
Rev. 9600 crashed

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb662f750 (LWP 21112)]
0x0b81cd5d in ?? ()

$ ps axl | grep amule
Code: [Select]
0  1000  9244  9174  20   0   3336   800 pipe_w S+   pts/1      0:00 grep amule
0  1000 21111 21094  20   0 239740 234176 poll  S+   pts/0      0:03 gdb amule
0  1000 21112 21111  20   0 161172 75216 ptrace Tl   pts/0    190:52 /usr/bin/amule

(gdb) bt
Code: [Select]
#0  0x0b81cd5d in ?? ()
#1  0xb6cf7c4f in gdk_io_invoke (source=0xc6eff88,
    condition=<value optimized out>, data=0x2)
    at /build/buildd/gtk+2.0-2.16.1/gdk/gdkevents.c:1013
#2  0xb6a8ddad in g_io_unix_dispatch (source=0xc8e87e8,
    callback=0xb6cf7bf0 <gdk_io_invoke>, user_data=0xba73890)
    at /build/buildd/glib2.0-2.20.1/glib/giounix.c:162
#3  0xb6a56b88 in IA__g_main_context_dispatch (context=0xa381ff8)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:1814
#4  0xb6a5a0eb in g_main_context_iterate (context=0xa381ff8, block=1,
    dispatch=1, self=0xa383570)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2448
#5  0xb6a5a5ba in IA__g_main_loop_run (loop=0xa41cb40)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2656
#6  0xb6e9a7d9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.16.1/gtk/gtkmain.c:1205
#7  0xb76c841b in wxEventLoop::Run (this=0xad4c210)
    at ../src/gtk/evtloop.cpp:76
#8  0xb776cb3c in wxAppBase::MainLoop (this=0xa381e40)
    at ../src/common/appcmn.cpp:312
#9  0xb776c891 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
#10 0xb74607ca in wxEntry (argc=@0xb75596cc, argv=0xa370480)
    at ../src/common/init.cpp:460
---Type <return> to continue, or q <return> to quit---
#11 0xb7460887 in wxEntry (argc=@0xbfa767d0, argv=0xbfa76854)
    at ../src/common/init.cpp:472
#12 0x082cb9cc in main (argc=1, argv=0xb6ad4460) at ../../src/amule-gui.cpp:94

(gdb) bt full
Code: [Select]
#0  0x0b81cd5d in ?? ()
No symbol table info available.
#1  0xb6cf7c4f in gdk_io_invoke (source=0xc6eff88,
    condition=<value optimized out>, data=0x2)
    at /build/buildd/gtk+2.0-2.16.1/gdk/gdkevents.c:1013
gdk_cond = 193056088
#2  0xb6a8ddad in g_io_unix_dispatch (source=0xc8e87e8,
    callback=0xb6cf7bf0 <gdk_io_invoke>, user_data=0xba73890)
    at /build/buildd/glib2.0-2.20.1/glib/giounix.c:162
buffer_condition = 0
#3  0xb6a56b88 in IA__g_main_context_dispatch (context=0xa381ff8)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:1814
No locals.
#4  0xb6a5a0eb in g_main_context_iterate (context=0xa381ff8, block=1,
    dispatch=1, self=0xa383570)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2448
max_priority = 0
timeout = 0
some_ready = 1
nfds = 271
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xcb28620
__PRETTY_FUNCTION__ = "g_main_context_iterate"
---Type <return> to continue, or q <return> to quit---
#5  0xb6a5a5ba in IA__g_main_loop_run (loop=0xa41cb40)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2656
self = (GThread *) 0xa383570
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#6  0xb6e9a7d9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.16.1/gtk/gtkmain.c:1205
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0xad4c210
loop = (GMainLoop *) 0xa41cb40
#7  0xb76c841b in wxEventLoop::Run (this=0xad4c210)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#8  0xb776cb3c in wxAppBase::MainLoop (this=0xa381e40)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0xad4c210}, m_pp = 0xa381e80,
  m_pOld = 0x0}
#9  0xb776c891 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
No locals.
#10 0xb74607ca in wxEntry (argc=@0xb75596cc, argv=0xa370480)
    at ../src/common/init.cpp:460
No locals.
---Type <return> to continue, or q <return> to quit---
#11 0xb7460887 in wxEntry (argc=@0xbfa767d0, argv=0xbfa76854)
    at ../src/common/init.cpp:472
No locals.
#12 0x082cb9cc in main (argc=1, argv=0xb6ad4460) at ../../src/amule-gui.cpp:94
No locals.

(gdb) thread apply all bt full
Code: [Select]
Thread 5 (Thread 0xb452bb90 (LWP 21128)):
#0  0xb7f5b430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7f38412 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
    at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_timedwait.S:179
No locals.
#2  0xb74d2b51 in wxConditionInternal::WaitTimeout (this=0xa3f0f18,
    milliseconds=100) at ../src/unix/threadpsx.cpp:405
tspec = {tv_sec = 1242136493, tv_nsec = 509000000}
err = <value optimized out>
#3  0xb74d2bda in wxCondition::WaitTimeout (this=0xa40e1ec, milliseconds=100)
    at ../include/wx/thrimpl.cpp:256
__FUNCTION__ = "WaitTimeout"
#4  0xb74d4994 in wxSemaphoreInternal::WaitTimeout (this=0xa40e1e8,
    milliseconds=100) at ../src/unix/threadpsx.cpp:552
remainingTime = -516
locker = {m_isOk = true, m_mutex = @0xa40e1e8}
#5  0xb74d4a1a in wxSemaphore::WaitTimeout (this=0xad8b9c0, milliseconds=100)
    at ../include/wx/thrimpl.cpp:320
__FUNCTION__ = "WaitTimeout"
#6  0x084169bc in CTimerThread::Entry (this=0xad8b9a0)
---Type <return> to continue, or q <return> to quit---
    at ../../src/Timer.cpp:64
now = 890944865
sinceLast = 0
timeout = 100
evt = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x85fd988,
      static ms_classInfo = {m_className = 0xb75066c4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb7a048cc, m_next = 0xb755a8c4,
        static sm_classTable = 0xa3543e8}, m_refData = 0x0},
    m_eventObject = 0x0, m_eventType = 10244, m_timeStamp = 0, m_id = 6128,
    m_callbackUserData = 0x0, m_propagationLevel = 0, m_skipped = false,
    m_isCommandEvent = false, static ms_classInfo = {m_className = 0xb7517ef0,
      m_objectSize = 36, m_objectConstructor = 0, m_baseInfo1 = 0xb755a858,
      m_baseInfo2 = 0x0, static sm_first = 0xb7a048cc, m_next = 0xb755b908,
      static sm_classTable = 0xa3543e8}}, <No data fields>}
lastEvent = 890944865
#7  0xb74d54a6 in wxThreadInternal::PthreadStart (thread=0xad8b9a0)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0xad8bb50
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#8  0xb74d55ad in wxPthreadStart (ptr=0xad8b9a0)
---Type <return> to continue, or q <return> to quit---
    at ../src/unix/threadpsx.cpp:718
No locals.
#9  0xb7f344ff in start_thread (arg=0xb452bb90) at pthread_create.c:297
__res = <value optimized out>
__ignore1 = <value optimized out>
__ignore2 = <value optimized out>
pd = (struct pthread *) 0xb452bb90
now = <value optimized out>
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {-1208729612, 0, 0,
        -1269648344, 506841107, 1574622740}, mask_was_saved = 0}}, priv = {
    pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0,
      canceltype = 0}}}
not_first_call = <value optimized out>
robust = <value optimized out>
#10 0xb720349e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
No locals.

Thread 3 (Thread 0xb552db90 (LWP 21126)):
#0  0x08090bf7 in CRC4EncryptableBuffer::RC4Crypt (this=0xbce39cc,
    pachIn=0xb1f86dc8 "�u�<dq��\177�5Ec��9+���\2254C\220\227c+\234��'�\214\2019�O2\025\234\036�\235\204��UA���-9���4\tM\002\023�<w��ɠ�\f�\177��X�\n�",
    pachOut=0xb1f86dc8 "�u�<dq��\177�5Ec��9+���\2254C\220\227c+\234��'�\214\2019�O2\025\234\036�\235\204��UA���-9���4\tM\002\023�<w��ɠ�\f�\177��X�\n�",
---Type <return> to continue, or q <return> to quit---
    nLen=10461) at ../../src/RC4Encrypt.cpp:79
i = 6314
byX = 129 '\201'
byY = 68 'D'
pabyState = (
    uint8 *) 0xbce39ea "<\037w\231\225\236�\235i�\036�\215��pe�>$\025P\"[x\220Lyk�'�\002�ˣ\033Q�\207�GD\211Z�f\001�7*\035\213\005�FA\027�oH1٦?\223Kz]`�\t\032a�8�+u�&��Ig\201Ǯ��Y���\202,\022N���/�\0205�\nеX\006@\206\003Υ\f-�~�\023\234;�RqvȰ��J�t\021M��EbS(\233V\030\216r�\016�\aT�m��j#\227\230W�\b�n�\177� \237�}�3\204��\017U\026��"
byXorIndex = 13 '\r'
__FUNCTION__ = "RC4Crypt"
#1  0x08175969 in CEncryptedStreamSocket::CryptPrepareSendData (
    this=0xbce37d0,
    pBuffer=0xb1f86dc8 "�u�<dq��\177�5Ec��9+���\2254C\220\227c+\234��'�\214\2019�O2\025\234\036�\235\204��UA���-9���4\tM\002\023�<w��ɠ�\f�\177��X�\n�",
    nLen=10461) at ../../src/EncryptedStreamSocket.cpp:360
__FUNCTION__ = "CryptPrepareSendData"
#2  0x08171efe in CEMSocket::Send (this=0xbce37d0,
    maxNumberOfBytesToSend=2600, minFragSize=2600,
    onlyAllowedToSendControlPacket=false) at ../../src/EMSocket.cpp:596
curPacket = (CPacket *) 0xb23549c0
bWasLongTimeSinceSend = false
---Type <return> to continue, or q <return> to quit---
lock = {m_isOk = true, m_mutex = @0xbce3b60}
anErrorHasOccured = false
sentStandardPacketBytesThisCall = 187
sentControlPacketBytesThisCall = 0
returnVal = {success = true, sentBytesStandardPackets = 0,
  sentBytesControlPackets = 0}
__FUNCTION__ = "Send"
#3  0x0810797e in CEMSocket::SendFileAndControlData (this=0xbce37d0,
    maxNumberOfBytesToSend=2600, minFragSize=2600) at ../../src/EMSocket.h:71
No locals.
#4  0x080f1bea in CClientTCPSocket::SendFileAndControlData (this=0xbce37d0,
    maxNumberOfBytesToSend=2600, overchargeMaxBytesToSend=2600)
    at ../../src/ClientTCPSocket.cpp:2124
returnStatus = {success = true, sentBytesStandardPackets = 0,
  sentBytesControlPackets = 0}
returnStatus = {success = 126, sentBytesStandardPackets = 0,
  sentBytesControlPackets = 3042103992}
#5  0x0821e7ba in UploadBandwidthThrottler::Entry (this=0xaba7d88)
    at ../../src/UploadBandwidthThrottler.cpp:434
socketSentBytes = {success = true, sentBytesStandardPackets = 0,
  sentBytesControlPackets = 0}
lastSpentBytes = 0
socket = (class ThrottledFileSocket *) 0xbce3b04
---Type <return> to continue, or q <return> to quit---
maxCounter = 73
spentBytes = 0
spentOverhead = 0
sendLock = {m_isOk = true, m_mutex = @0xaba7d98}
maxSlot = 123
timeSinceLastLoop = 6
minFragSize = 1300
doubleSendSize = 2600
bytesToSpend = 124416
sleepTime = 1
thisLoopTick = 890944870
TIME_BETWEEN_UPLOAD_LOOPS = 1
lastLoopTick = 890944870
realBytesToSpend = 124416999
allowedDataRate = 10240000
rememberedSlotCounter = 74
extraSleepTime = 1
sendLock = {m_isOk = false, m_mutex = @0x0}
#6  0xb74d54a6 in wxThreadInternal::PthreadStart (thread=0xaba7d88)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0xabbc720
rc = <value optimized out>
dontRunAtAll = false
---Type <return> to continue, or q <return> to quit---
__FUNCTION__ = "PthreadStart"
#7  0xb74d55ad in wxPthreadStart (ptr=0xaba7d88)
    at ../src/unix/threadpsx.cpp:718
No locals.
#8  0xb7f344ff in start_thread (arg=0xb552db90) at pthread_create.c:297
__res = <value optimized out>
__ignore1 = <value optimized out>
__ignore2 = <value optimized out>
pd = (struct pthread *) 0xb552db90
now = <value optimized out>
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {-1208729612, 0, 0,
        -1252862936, 519424017, 1574622740}, mask_was_saved = 0}}, priv = {
    pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0,
      canceltype = 0}}}
not_first_call = <value optimized out>
robust = <value optimized out>
#9  0xb720349e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
No locals.

Thread 1 (Thread 0xb662f750 (LWP 21112)):
#0  0x0b81cd5d in ?? ()
No symbol table info available.
#1  0xb6cf7c4f in gdk_io_invoke (source=0xc6eff88,
---Type <return> to continue, or q <return> to quit---
    condition=<value optimized out>, data=0x2)
    at /build/buildd/gtk+2.0-2.16.1/gdk/gdkevents.c:1013
gdk_cond = 193056088
#2  0xb6a8ddad in g_io_unix_dispatch (source=0xc8e87e8,
    callback=0xb6cf7bf0 <gdk_io_invoke>, user_data=0xba73890)
    at /build/buildd/glib2.0-2.20.1/glib/giounix.c:162
buffer_condition = 0
#3  0xb6a56b88 in IA__g_main_context_dispatch (context=0xa381ff8)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:1814
No locals.
#4  0xb6a5a0eb in g_main_context_iterate (context=0xa381ff8, block=1,
    dispatch=1, self=0xa383570)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2448
max_priority = 0
timeout = 0
some_ready = 1
nfds = 271
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xcb28620
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#5  0xb6a5a5ba in IA__g_main_loop_run (loop=0xa41cb40)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2656
self = (GThread *) 0xa383570
---Type <return> to continue, or q <return> to quit---
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#6  0xb6e9a7d9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.16.1/gtk/gtkmain.c:1205
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0xad4c210
loop = (GMainLoop *) 0xa41cb40
#7  0xb76c841b in wxEventLoop::Run (this=0xad4c210)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#8  0xb776cb3c in wxAppBase::MainLoop (this=0xa381e40)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0xad4c210}, m_pp = 0xa381e80,
  m_pOld = 0x0}
#9  0xb776c891 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
No locals.
#10 0xb74607ca in wxEntry (argc=@0xb75596cc, argv=0xa370480)
    at ../src/common/init.cpp:460
No locals.
#11 0xb7460887 in wxEntry (argc=@0xbfa767d0, argv=0xbfa76854)
    at ../src/common/init.cpp:472
No locals.
---Type <return> to continue, or q <return> to quit---
#12 0x082cb9cc in main (argc=1, argv=0xb6ad4460) at ../../src/amule-gui.cpp:94
No locals.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on May 12, 2009, 04:25:28 PM
$ cat /proc/21112/maps

Part 1:
Code: [Select]
b5593000-b55a2000 r-xp 00000000 08:11 7487657    /lib/libbz2.so.1.0.4
b55a2000-b55a3000 r--p 0000f000 08:11 7487657    /lib/libbz2.so.1.0.4
b55a3000-b55a4000 rw-p 00010000 08:11 7487657    /lib/libbz2.so.1.0.4
b55a4000-b55da000 r-xp 00000000 08:11 7487507    /lib/libdbus-1.so.3.4.0
b55da000-b55db000 r--p 00035000 08:11 7487507    /lib/libdbus-1.so.3.4.0
b55db000-b55dc000 rw-p 00036000 08:11 7487507    /lib/libdbus-1.so.3.4.0
b55eb000-b561e000 r-xp 00000000 08:11 15272476   /usr/lib/libgsf-1.so.114.0.11
b561e000-b561f000 ---p 00033000 08:11 15272476   /usr/lib/libgsf-1.so.114.0.11
b561f000-b5621000 r--p 00033000 08:11 15272476   /usr/lib/libgsf-1.so.114.0.11
b5621000-b5622000 rw-p 00035000 08:11 15272476   /usr/lib/libgsf-1.so.114.0.11
b5622000-b5623000 rw-p b5622000 00:00 0
b5623000-b5654000 r-xp 00000000 08:11 15272301   /usr/lib/librsvg-2.so.2.26.0
b5654000-b5655000 r--p 00031000 08:11 15272301   /usr/lib/librsvg-2.so.2.26.0
b5655000-b5656000 rw-p 00032000 08:11 15272301   /usr/lib/librsvg-2.so.2.26.0
b5656000-b5659000 r-xp 00000000 08:11 15327317   /usr/lib/pango/1.6.0/modules/pango-hebrew-fc.so
b5659000-b565a000 r--p 00002000 08:11 15327317   /usr/lib/pango/1.6.0/modules/pango-hebrew-fc.so
b565a000-b565b000 rw-p 00003000 08:11 15327317   /usr/lib/pango/1.6.0/modules/pango-hebrew-fc.so
b565b000-b565d000 r-xp 00000000 08:11 15327307   /usr/lib/pango/1.6.0/modules/pango-arabic-fc.so
b565d000-b565e000 r--p 00001000 08:11 15327307   /usr/lib/pango/1.6.0/modules/pango-arabic-fc.so
b565e000-b565f000 rw-p 00002000 08:11 15327307   /usr/lib/pango/1.6.0/modules/pango-arabic-fc.so
b565f000-b5660000 r-xp 00000000 08:11 15327309   /usr/lib/pango/1.6.0/modules/pango-arabic-lang.so
b5660000-b5661000 r--p 00000000 08:11 15327309   /usr/lib/pango/1.6.0/modules/pango-arabic-lang.so
b5661000-b5662000 rw-p 00001000 08:11 15327309   /usr/lib/pango/1.6.0/modules/pango-arabic-lang.so
b5662000-b5663000 r--p 00000000 08:11 15295405   /usr/lib/locale/en_GB.utf8/LC_NUMERIC
b5663000-b5664000 r--p 00000000 08:11 15294562   /usr/lib/locale/en_GB.utf8/LC_TIME
b5664000-b5665000 rw-p b5664000 00:00 0
b5665000-b5668000 rw-s 00000000 00:09 6094863    /SYSV00000000 (deleted)
b5668000-b5680000 r--s 00000000 08:11 15344120   /usr/share/mime/mime.cache
b5680000-b568f000 r-xp 00000000 08:11 15294479   /usr/lib/gio/modules/libgioremote-volume-monitor.so
b568f000-b5690000 r--p 0000e000 08:11 15294479   /usr/lib/gio/modules/libgioremote-volume-monitor.so
b5690000-b5691000 rw-p 0000f000 08:11 15294479   /usr/lib/gio/modules/libgioremote-volume-monitor.so
b5691000-b5692000 r-xp 00000000 08:11 29917199   /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so
b5692000-b5693000 r--p 00000000 08:11 29917199   /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so
b5693000-b5694000 rw-p 00001000 08:11 29917199   /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so
b5694000-b573f000 r--p 00000000 08:11 15483528   /usr/share/icons/Tangerine/icon-theme.cache
b573f000-b57d7000 r--p 00000000 08:11 15392773   /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf
b57d7000-b57d9000 r-xp 00000000 08:11 15327311   /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
b57d9000-b57da000 r--p 00001000 08:11 15327311   /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
b57da000-b57db000 rw-p 00002000 08:11 15327311   /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
b57db000-b57e1000 r--s 00000000 08:11 19408576   /var/cache/fontconfig/945677eb7aeaf62f1d50efc3fb3ec7d8-x86.cache-2
b57e1000-b57e4000 r--s 00000000 08:11 19408671   /var/cache/fontconfig/e383d7ea5fbe662a33d9b44caf393297-x86.cache-2
b57e4000-b57e7000 r--s 00000000 08:11 19408668   /var/cache/fontconfig/a755afe4a08bf5b97852ceb7400b47bc-x86.cache-2
b57e7000-b57ea000 r--s 00000000 08:11 19408663   /var/cache/fontconfig/6d41288fd70b0be22e8c3a91e032eec0-x86.cache-2
b57ea000-b57ed000 r--s 00000000 08:11 19408666   /var/cache/fontconfig/de156ccd2eddbdc19d37a45b8b2aac9c-x86.cache-2
b57ed000-b57f5000 r--s 00000000 08:11 19408662   /var/cache/fontconfig/e3de0de479f42330eadf588a55fb5bf4-x86.cache-2
b57f5000-b5800000 r--s 00000000 08:11 19408658   /var/cache/fontconfig/0f34bcd4b6ee430af32735b75db7f02b-x86.cache-2
b5800000-b58fa000 rw-p b5800000 00:00 0
b58fa000-b5900000 ---p b58fa000 00:00 0
b5900000-b5902000 r--s 00000000 08:11 19408667   /var/cache/fontconfig/c69f04ab05004e31a6d5e715764f16d8-x86.cache-2
b5902000-b5905000 r--s 00000000 08:11 19408679   /var/cache/fontconfig/de9486f0b47a4d768a594cb4198cb1c6-x86.cache-2
b5905000-b590c000 r--s 00000000 08:11 19408670   /var/cache/fontconfig/d52a8644073d54c13679302ca1180695-x86.cache-2
b590c000-b596c000 rw-s 00000000 00:09 6062094    /SYSV00000000 (deleted)
b596c000-b59cc000 rw-s 00000000 00:09 6029325    /SYSV00000000 (deleted)
b59cc000-b59de000 r-xp 00000000 08:11 7504343    /lib/tls/i686/cmov/libresolv-2.9.so
b59de000-b59df000 r--p 00011000 08:11 7504343    /lib/tls/i686/cmov/libresolv-2.9.so
b59df000-b59e0000 rw-p 00012000 08:11 7504343    /lib/tls/i686/cmov/libresolv-2.9.so
b59e0000-b59e2000 rw-p b59e0000 00:00 0
b59e2000-b59e5000 r--s 00000000 08:11 19408659   /var/cache/fontconfig/6eb3985aa4124903f6ff08ba781cd364-x86.cache-2
b59e5000-b59e6000 r--s 00000000 08:11 19408661   /var/cache/fontconfig/4c73fe0c47614734b17d736dbde7580a-x86.cache-2
b59e6000-b59ec000 r--s 00000000 08:11 19408678   /var/cache/fontconfig/089dead882dea3570ffc31a9898cfb69-x86.cache-2
b59ec000-b59f2000 r-xp 00000000 08:11 29917198   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-xpm.so
b59f2000-b59f3000 r--p 00005000 08:11 29917198   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-xpm.so
b59f3000-b59f4000 rw-p 00006000 08:11 29917198   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-xpm.so
b59f4000-b59f5000 ---p b59f4000 00:00 0
b59f5000-b61f5000 rw-p b59f5000 00:00 0
b61f5000-b61fb000 r-xp 00000000 08:11 15271122   /usr/lib/libgailutil.so.18.0.1
b61fb000-b61fc000 r--p 00005000 08:11 15271122   /usr/lib/libgailutil.so.18.0.1
b61fc000-b61fd000 rw-p 00006000 08:11 15271122   /usr/lib/libgailutil.so.18.0.1
b61fd000-b622c000 r-xp 00000000 08:11 15271662   /usr/lib/libgnomecanvas-2.so.0.2600.0
b622c000-b622d000 r--p 0002e000 08:11 15271662   /usr/lib/libgnomecanvas-2.so.0.2600.0
b622d000-b622e000 rw-p 0002f000 08:11 15271662   /usr/lib/libgnomecanvas-2.so.0.2600.0
b622e000-b626c000 r-xp 00000000 08:11 15271576   /usr/lib/libgnomeprintui-2-2.so.0.1.0
b626c000-b626d000 r--p 0003d000 08:11 15271576   /usr/lib/libgnomeprintui-2-2.so.0.1.0
b626d000-b626e000 rw-p 0003e000 08:11 15271576   /usr/lib/libgnomeprintui-2-2.so.0.1.0
b626e000-b63a3000 r-xp 00000000 08:11 15272620   /usr/lib/libxml2.so.2.6.32
b63a3000-b63a4000 ---p 00135000 08:11 15272620   /usr/lib/libxml2.so.2.6.32
b63a4000-b63a8000 r--p 00135000 08:11 15272620   /usr/lib/libxml2.so.2.6.32
b63a8000-b63a9000 rw-p 00139000 08:11 15272620   /usr/lib/libxml2.so.2.6.32
b63a9000-b63aa000 rw-p b63a9000 00:00 0
b63aa000-b63bf000 r-xp 00000000 08:11 15271916   /usr/lib/libart_lgpl_2.so.2.3.20
b63bf000-b63c1000 rw-p 00014000 08:11 15271916   /usr/lib/libart_lgpl_2.so.2.3.20
b63c1000-b6427000 r-xp 00000000 08:11 15271142   /usr/lib/libgnomeprint-2-2.so.0.1.0
b6427000-b6428000 ---p 00066000 08:11 15271142   /usr/lib/libgnomeprint-2-2.so.0.1.0
b6428000-b6429000 r--p 00066000 08:11 15271142   /usr/lib/libgnomeprint-2-2.so.0.1.0
b6429000-b642a000 rw-p 00067000 08:11 15271142   /usr/lib/libgnomeprint-2-2.so.0.1.0
b642a000-b644a000 r-xp 00000000 08:11 15294468   /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
b644a000-b644b000 r--p 00020000 08:11 15294468   /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
b644b000-b644c000 rw-p 00021000 08:11 15294468   /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
b644c000-b6453000 r-xp 00000000 08:11 15269940   /usr/lib/libltdl.so.7.2.0
b6453000-b6454000 r--p 00006000 08:11 15269940   /usr/lib/libltdl.so.7.2.0
b6454000-b6455000 rw-p 00007000 08:11 15269940   /usr/lib/libltdl.so.7.2.0
b6455000-b6461000 r-xp 00000000 08:11 15272264   /usr/lib/libtdb.so.1.1.3
b6461000-b6462000 r--p 0000b000 08:11 15272264   /usr/lib/libtdb.so.1.1.3
b6462000-b6463000 rw-p 0000c000 08:11 15272264   /usr/lib/libtdb.so.1.1.3
b6463000-b647e000 r-xp 00000000 08:11 15270963   /usr/lib/libvorbis.so.0.4.0
b647e000-b647f000 r--p 0001a000 08:11 15270963   /usr/lib/libvorbis.so.0.4.0
b647f000-b648d000 rw-p 0001b000 08:11 15270963   /usr/lib/libvorbis.so.0.4.0
b648d000-b6494000 r-xp 00000000 08:11 15270972   /usr/lib/libvorbisfile.so.3.2.0
b6494000-b6495000 r--p 00006000 08:11 15270972   /usr/lib/libvorbisfile.so.3.2.0
b6495000-b6496000 rw-p 00007000 08:11 15270972   /usr/lib/libvorbisfile.so.3.2.0
b6496000-b64a3000 r-xp 00000000 08:11 15272321   /usr/lib/libcanberra.so.0.1.4
b64a3000-b64a4000 r--p 0000d000 08:11 15272321   /usr/lib/libcanberra.so.0.1.4
b64a4000-b64a5000 rw-p 0000e000 08:11 15272321   /usr/lib/libcanberra.so.0.1.4
b64a5000-b64a7000 r--s 00000000 08:11 19407465   /var/cache/fontconfig/ddd4086aec35a5275babba44bb759c3c-x86.cache-2
b64a7000-b64a9000 r--s 00000000 08:11 19407458   /var/cache/fontconfig/e13b20fdb08344e0e664864cc2ede53d-x86.cache-2
b64a9000-b64ab000 r--s 00000000 08:11 19408575   /var/cache/fontconfig/7ef2298fde41cc6eeb7af42e48b7d293-x86.cache-2
b64ab000-b64b0000 r-xp 00000000 08:11 7504333    /lib/tls/i686/cmov/libnss_dns-2.9.so
b64b0000-b64b1000 r--p 00004000 08:11 7504333    /lib/tls/i686/cmov/libnss_dns-2.9.so
b64b1000-b64b2000 rw-p 00005000 08:11 7504333    /lib/tls/i686/cmov/libnss_dns-2.9.so
b64b2000-b64b4000 r-xp 00000000 08:11 7487583    /lib/libnss_mdns4_minimal.so.2
b64b4000-b64b5000 rw-p 00001000 08:11 7487583    /lib/libnss_mdns4_minimal.so.2
b64b5000-b64b7000 rw-p b64b5000 00:00 0
b64b7000-b64c1000 r-xp 00000000 08:11 7504334    /lib/tls/i686/cmov/libnss_files-2.9.so
b64c1000-b64c2000 r--p 00009000 08:11 7504334    /lib/tls/i686/cmov/libnss_files-2.9.so
b64c2000-b64c3000 rw-p 0000a000 08:11 7504334    /lib/tls/i686/cmov/libnss_files-2.9.so
b64c3000-b64cc000 r-xp 00000000 08:11 7504338    /lib/tls/i686/cmov/libnss_nis-2.9.so
b64cc000-b64cd000 r--p 00008000 08:11 7504338    /lib/tls/i686/cmov/libnss_nis-2.9.so
b64cd000-b64ce000 rw-p 00009000 08:11 7504338    /lib/tls/i686/cmov/libnss_nis-2.9.so
b64ce000-b64e3000 r-xp 00000000 08:11 7504330    /lib/tls/i686/cmov/libnsl-2.9.so
b64e3000-b64e4000 r--p 00014000 08:11 7504330    /lib/tls/i686/cmov/libnsl-2.9.so
b64e4000-b64e5000 rw-p 00015000 08:11 7504330    /lib/tls/i686/cmov/libnsl-2.9.so
b64e5000-b64e7000 rw-p b64e5000 00:00 0
b64e7000-b64ee000 r-xp 00000000 08:11 7504332    /lib/tls/i686/cmov/libnss_compat-2.9.so
b64ee000-b64ef000 r--p 00006000 08:11 7504332    /lib/tls/i686/cmov/libnss_compat-2.9.so
b64ef000-b64f0000 rw-p 00007000 08:11 7504332    /lib/tls/i686/cmov/libnss_compat-2.9.so
b64f0000-b64f1000 r--s 00000000 08:11 19408672   /var/cache/fontconfig/4794a0821666d79190d59a36cb4f44b5-x86.cache-2
b64f1000-b64f5000 r-xp 00000000 08:11 15270961   /usr/lib/libogg.so.0.5.3
b64f5000-b64f6000 r--p 00003000 08:11 15270961   /usr/lib/libogg.so.0.5.3
b64f6000-b64f7000 rw-p 00004000 08:11 15270961   /usr/lib/libogg.so.0.5.3
b64f7000-b64fa000 r-xp 00000000 08:11 15269925   /usr/lib/libcanberra-gtk.so.0.0.4
b64fa000-b64fb000 r--p 00002000 08:11 15269925   /usr/lib/libcanberra-gtk.so.0.0.4
b64fb000-b64fc000 rw-p 00003000 08:11 15269925   /usr/lib/libcanberra-gtk.so.0.0.4
b64fc000-b6500000 r-xp 00000000 08:11 15294557   /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so
b6500000-b6501000 r--p 00003000 08:11 15294557   /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so
b6501000-b6502000 rw-p 00004000 08:11 15294557   /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so
b6502000-b6503000 r--p 00000000 08:11 15425570   /usr/lib/locale/nl_NL.utf8/LC_NUMERIC
b6503000-b6504000 r--p 00000000 08:11 15425571   /usr/lib/locale/nl_NL.utf8/LC_TIME
b6504000-b65ef000 r--p 00000000 08:11 27918339   /usr/lib/locale/nl_NL.utf8/LC_COLLATE
b65ef000-b65f0000 r--p 00000000 08:11 15425572   /usr/lib/locale/nl_NL.utf8/LC_MONETARY
b65f0000-b662f000 r--p 00000000 08:11 27918337   /usr/lib/locale/nl_NL.utf8/LC_CTYPE
b662f000-b6633000 rw-p b662f000 00:00 0
b6633000-b6637000 r-xp 00000000 08:11 15270153   /usr/lib/libXdmcp.so.6.0.0
b6637000-b6638000 rw-p 00003000 08:11 15270153   /usr/lib/libXdmcp.so.6.0.0
b6638000-b663e000 r-xp 00000000 08:11 15272122   /usr/lib/libxcb-render.so.0.0.0
b663e000-b663f000 r--p 00005000 08:11 15272122   /usr/lib/libxcb-render.so.0.0.0
b663f000-b6640000 rw-p 00006000 08:11 15272122   /usr/lib/libxcb-render.so.0.0.0
b6640000-b6643000 r-xp 00000000 08:11 15272416   /usr/lib/libxcb-render-util.so.0.0.0
b6643000-b6644000 r--p 00002000 08:11 15272416   /usr/lib/libxcb-render-util.so.0.0.0
b6644000-b6645000 rw-p 00003000 08:11 15272416   /usr/lib/libxcb-render-util.so.0.0.0
b6645000-b6646000 rw-p b6645000 00:00 0
b6646000-b6659000 r-xp 00000000 08:11 15270302   /usr/lib/libdirect-1.0.so.0.1.0
b6659000-b665a000 r--p 00012000 08:11 15270302   /usr/lib/libdirect-1.0.so.0.1.0
b665a000-b665b000 rw-p 00013000 08:11 15270302   /usr/lib/libdirect-1.0.so.0.1.0
b665b000-b6662000 r-xp 00000000 08:11 1040393    /usr/lib/libfusion-1.0.so.0.1.0
b6662000-b6663000 r--p 00006000 08:11 1040393    /usr/lib/libfusion-1.0.so.0.1.0
b6663000-b6664000 rw-p 00007000 08:11 1040393    /usr/lib/libfusion-1.0.so.0.1.0
b6664000-b66c8000 r-xp 00000000 08:11 1040392    /usr/lib/libdirectfb-1.0.so.0.1.0
b66c8000-b66c9000 r--p 00063000 08:11 1040392    /usr/lib/libdirectfb-1.0.so.0.1.0
b66c9000-b66ca000 rw-p 00064000 08:11 1040392    /usr/lib/libdirectfb-1.0.so.0.1.0
b66ca000-b670a000 r-xp 00000000 08:11 15271924   /usr/lib/libpixman-1.so.0.13.2
b670a000-b670c000 r--p 0003f000 08:11 15271924   /usr/lib/libpixman-1.so.0.13.2
b670c000-b670d000 rw-p 00041000 08:11 15271924   /usr/lib/libpixman-1.so.0.13.2
b670d000-b6725000 r-xp 00000000 08:11 15270899   /usr/lib/libxcb.so.1.1.0
b6725000-b6726000 r--p 00017000 08:11 15270899   /usr/lib/libxcb.so.1.1.0
b6726000-b6727000 rw-p 00018000 08:11 15270899   /usr/lib/libxcb.so.1.1.0
b6727000-b6728000 rw-p b6727000 00:00 0
b6728000-b672a000 r-xp 00000000 08:11 15270132   /usr/lib/libXau.so.6.0.0
b672a000-b672b000 r--p 00001000 08:11 15270132   /usr/lib/libXau.so.6.0.0
b672b000-b672c000 rw-p 00002000 08:11 15270132   /usr/lib/libXau.so.6.0.0
b672c000-b672f000 r-xp 00000000 08:11 7487564    /lib/libuuid.so.1.2
b672f000-b6730000 r--p 00002000 08:11 7487564    /lib/libuuid.so.1.2
b6730000-b6731000 rw-p 00003000 08:11 7487564    /lib/libuuid.so.1.2
b6731000-b6746000 r-xp 00000000 08:11 15271181   /usr/lib/libICE.so.6.3.0
b6746000-b6747000 rw-p 00014000 08:11 15271181   /usr/lib/libICE.so.6.3.0
b6747000-b6749000 rw-p b6747000 00:00 0
b6749000-b676d000 r-xp 00000000 08:11 15270076   /usr/lib/libexpat.so.1.5.2
b676d000-b676f000 r--p 00023000 08:11 15270076   /usr/lib/libexpat.so.1.5.2
b676f000-b6770000 rw-p 00025000 08:11 15270076   /usr/lib/libexpat.so.1.5.2
b6770000-b6771000 rw-p b6770000 00:00 0
b6771000-b6789000 r-xp 00000000 08:11 7487552    /lib/libselinux.so.1
b6789000-b678a000 r--p 00017000 08:11 7487552    /lib/libselinux.so.1
b678a000-b678b000 rw-p 00018000 08:11 7487552    /lib/libselinux.so.1
b678b000-b67bb000 r-xp 00000000 08:11 7487821    /lib/libpcre.so.3.12.1
b67bb000-b67bc000 r--p 0002f000 08:11 7487821    /lib/libpcre.so.3.12.1
b67bc000-b67bd000 rw-p 00030000 08:11 7487821    /lib/libpcre.so.3.12.1
b67bd000-b6834000 r-xp 00000000 08:11 15272420   /usr/lib/libcairo.so.2.10800.6
b6834000-b6836000 r--p 00076000 08:11 15272420   /usr/lib/libcairo.so.2.10800.6
b6836000-b6837000 rw-p 00078000 08:11 15272420   /usr/lib/libcairo.so.2.10800.6
b6837000-b683b000 r-xp 00000000 08:11 15271234   /usr/lib/libXfixes.so.3.1.0
b683b000-b683c000 rw-p 00003000 08:11 15271234   /usr/lib/libXfixes.so.3.1.0
b683c000-b683e000 r-xp 00000000 08:11 15271221   /usr/lib/libXdamage.so.1.1.0
b683e000-b683f000 rw-p 00001000 08:11 15271221   /usr/lib/libXdamage.so.1.1.0
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on May 12, 2009, 04:26:00 PM
Part 2:
Code: [Select]
b683f000-b6840000 rw-p b683f000 00:00 0
b6840000-b6842000 r-xp 00000000 08:11 15271890   /usr/lib/libXcomposite.so.1.0.0
b6842000-b6843000 r--p 00001000 08:11 15271890   /usr/lib/libXcomposite.so.1.0.0
b6843000-b6844000 rw-p 00002000 08:11 15271890   /usr/lib/libXcomposite.so.1.0.0
b6844000-b692e000 r-xp 00000000 08:11 15270133   /usr/lib/libX11.so.6.2.0
b692e000-b692f000 ---p 000ea000 08:11 15270133   /usr/lib/libX11.so.6.2.0
b692f000-b6930000 r--p 000ea000 08:11 15270133   /usr/lib/libX11.so.6.2.0
b6930000-b6932000 rw-p 000eb000 08:11 15270133   /usr/lib/libX11.so.6.2.0
b6932000-b6933000 rw-p b6932000 00:00 0
b6933000-b693d000 r-xp 00000000 08:11 15270843   /usr/lib/libpangocairo-1.0.so.0.2400.1
b693d000-b693e000 r--p 00009000 08:11 15270843   /usr/lib/libpangocairo-1.0.so.0.2400.1
b693e000-b693f000 rw-p 0000a000 08:11 15270843   /usr/lib/libpangocairo-1.0.so.0.2400.1
b693f000-b6947000 r-xp 00000000 08:11 15271224   /usr/lib/libXcursor.so.1.0.2
b6947000-b6948000 rw-p 00007000 08:11 15271224   /usr/lib/libXcursor.so.1.0.2
b6948000-b694e000 r-xp 00000000 08:11 15272020   /usr/lib/libXrandr.so.2.2.0
b694e000-b694f000 r--p 00006000 08:11 15272020   /usr/lib/libXrandr.so.2.2.0
b694f000-b6950000 rw-p 00007000 08:11 15272020   /usr/lib/libXrandr.so.2.2.0
b6950000-b6958000 r-xp 00000000 08:11 15270753   /usr/lib/libXi.so.6.0.0
b6958000-b6959000 r--p 00007000 08:11 15270753   /usr/lib/libXi.so.6.0.0
b6959000-b695a000 rw-p 00008000 08:11 15270753   /usr/lib/libXi.so.6.0.0
b695a000-b695b000 rw-p b695a000 00:00 0
b695b000-b6963000 r-xp 00000000 08:11 15270900   /usr/lib/libXrender.so.1.3.0
b6963000-b6964000 r--p 00007000 08:11 15270900   /usr/lib/libXrender.so.1.3.0
b6964000-b6965000 rw-p 00008000 08:11 15270900   /usr/lib/libXrender.so.1.3.0
b6965000-b6973000 r-xp 00000000 08:11 15270017   /usr/lib/libXext.so.6.4.0
b6973000-b6974000 r--p 0000d000 08:11 15270017   /usr/lib/libXext.so.6.4.0
b6974000-b6975000 rw-p 0000e000 08:11 15270017   /usr/lib/libXext.so.6.4.0
b6975000-b69c7000 r-xp 00000000 08:11 15271453   /usr/lib/libtiff.so.4.2.1
b69c7000-b69c9000 r--p 00052000 08:11 15271453   /usr/lib/libtiff.so.4.2.1
b69c9000-b69ca000 rw-p 00054000 08:11 15271453   /usr/lib/libtiff.so.4.2.1
b69ca000-b69e9000 r-xp 00000000 08:11 15271751   /usr/lib/libjpeg.so.62.0.0
b69e9000-b69ea000 rw-p 0001e000 08:11 15271751   /usr/lib/libjpeg.so.62.0.0
b69ea000-b69eb000 rw-p b69ea000 00:00 0
b69eb000-b6a0f000 r-xp 00000000 08:11 1040386    /usr/lib/libpng12.so.0.27.0
b6a0f000-b6a10000 r--p 00023000 08:11 1040386    /usr/lib/libpng12.so.0.27.0
b6a10000-b6a11000 rw-p 00024000 08:11 1040386    /usr/lib/libpng12.so.0.27.0
b6a11000-b6a18000 r-xp 00000000 08:11 15270825   /usr/lib/libSM.so.6.0.0
b6a18000-b6a19000 r--p 00006000 08:11 15270825   /usr/lib/libSM.so.6.0.0
b6a19000-b6a1a000 rw-p 00007000 08:11 15270825   /usr/lib/libSM.so.6.0.0
b6a1a000-b6a1c000 r-xp 00000000 08:11 15271225   /usr/lib/libXinerama.so.1.0.0
b6a1c000-b6a1d000 rw-p 00001000 08:11 15271225   /usr/lib/libXinerama.so.1.0.0
b6a1d000-b6ad3000 r-xp 00000000 08:11 15273257   /usr/lib/libglib-2.0.so.0.2000.1
b6ad3000-b6ad4000 r--p 000b5000 08:11 15273257   /usr/lib/libglib-2.0.so.0.2000.1
b6ad4000-b6ad5000 rw-p 000b6000 08:11 15273257   /usr/lib/libglib-2.0.so.0.2000.1
b6ad5000-b6adc000 r-xp 00000000 08:11 7504344    /lib/tls/i686/cmov/librt-2.9.so
b6adc000-b6add000 r--p 00006000 08:11 7504344    /lib/tls/i686/cmov/librt-2.9.so
b6add000-b6ade000 rw-p 00007000 08:11 7504344    /lib/tls/i686/cmov/librt-2.9.so
b6ade000-b6ae2000 r-xp 00000000 08:11 15273273   /usr/lib/libgthread-2.0.so.0.2000.1
b6ae2000-b6ae3000 r--p 00003000 08:11 15273273   /usr/lib/libgthread-2.0.so.0.2000.1
b6ae3000-b6ae4000 rw-p 00004000 08:11 15273273   /usr/lib/libgthread-2.0.so.0.2000.1
b6ae4000-b6ae5000 rw-p b6ae4000 00:00 0
b6ae5000-b6ae8000 r-xp 00000000 08:11 15273271   /usr/lib/libgmodule-2.0.so.0.2000.1
b6ae8000-b6ae9000 r--p 00002000 08:11 15273271   /usr/lib/libgmodule-2.0.so.0.2000.1
b6ae9000-b6aea000 rw-p 00003000 08:11 15273271   /usr/lib/libgmodule-2.0.so.0.2000.1
b6aea000-b6b26000 r-xp 00000000 08:11 15273272   /usr/lib/libgobject-2.0.so.0.2000.1
b6b26000-b6b27000 r--p 0003b000 08:11 15273272   /usr/lib/libgobject-2.0.so.0.2000.1
b6b27000-b6b28000 rw-p 0003c000 08:11 15273272   /usr/lib/libgobject-2.0.so.0.2000.1
b6b28000-b6b53000 r-xp 00000000 08:11 15271282   /usr/lib/libfontconfig.so.1.3.0
b6b53000-b6b54000 r--p 0002a000 08:11 15271282   /usr/lib/libfontconfig.so.1.3.0
b6b54000-b6b55000 rw-p 0002b000 08:11 15271282   /usr/lib/libfontconfig.so.1.3.0
b6b55000-b6bc7000 r-xp 00000000 08:11 15270073   /usr/lib/libfreetype.so.6.3.20
b6bc7000-b6bcb000 r--p 00071000 08:11 15270073   /usr/lib/libfreetype.so.6.3.20
b6bcb000-b6bcc000 rw-p 00075000 08:11 15270073   /usr/lib/libfreetype.so.6.3.20
b6bcc000-b6c0c000 r-xp 00000000 08:11 15270827   /usr/lib/libpango-1.0.so.0.2400.1
b6c0c000-b6c0d000 ---p 00040000 08:11 15270827   /usr/lib/libpango-1.0.so.0.2400.1
b6c0d000-b6c0e000 r--p 00040000 08:11 15270827   /usr/lib/libpango-1.0.so.0.2400.1
b6c0e000-b6c0f000 rw-p 00041000 08:11 15270827   /usr/lib/libpango-1.0.so.0.2400.1
b6c0f000-b6c10000 rw-p b6c0f000 00:00 0
b6c10000-b6c7b000 r-xp 00000000 08:11 15271588   /usr/lib/libgio-2.0.so.0.2000.1
b6c7b000-b6c7c000 ---p 0006b000 08:11 15271588   /usr/lib/libgio-2.0.so.0.2000.1
b6c7c000-b6c7d000 r--p 0006b000 08:11 15271588   /usr/lib/libgio-2.0.so.0.2000.1
b6c7d000-b6c7e000 rw-p 0006c000 08:11 15271588   /usr/lib/libgio-2.0.so.0.2000.1
b6c7e000-b6c96000 r-xp 00000000 08:11 15272696   /usr/lib/libgdk_pixbuf-2.0.so.0.1600.1
b6c96000-b6c97000 r--p 00017000 08:11 15272696   /usr/lib/libgdk_pixbuf-2.0.so.0.1600.1
b6c97000-b6c98000 rw-p 00018000 08:11 15272696   /usr/lib/libgdk_pixbuf-2.0.so.0.1600.1
b6c98000-b6cbf000 r-xp 00000000 08:11 15270844   /usr/lib/libpangoft2-1.0.so.0.2400.1
b6cbf000-b6cc0000 r--p 00026000 08:11 15270844   /usr/lib/libpangoft2-1.0.so.0.2400.1
b6cc0000-b6cc1000 rw-p 00027000 08:11 15270844   /usr/lib/libpangoft2-1.0.so.0.2400.1
b6cc1000-b6cda000 r-xp 00000000 08:11 15273099   /usr/lib/libatk-1.0.so.0.2609.1
b6cda000-b6cdb000 r--p 00019000 08:11 15273099   /usr/lib/libatk-1.0.so.0.2609.1
b6cdb000-b6cdc000 rw-p 0001a000 08:11 15273099   /usr/lib/libatk-1.0.so.0.2609.1
b6cdc000-b6d65000 r-xp 00000000 08:11 15272694   /usr/lib/libgdk-x11-2.0.so.0.1600.1
b6d65000-b6d66000 ---p 00089000 08:11 15272694   /usr/lib/libgdk-x11-2.0.so.0.1600.1
b6d66000-b6d68000 r--p 00089000 08:11 15272694   /usr/lib/libgdk-x11-2.0.so.0.1600.1
b6d68000-b6d69000 rw-p 0008b000 08:11 15272694   /usr/lib/libgdk-x11-2.0.so.0.1600.1
b6d69000-b6d6a000 rw-p b6d69000 00:00 0
b6d6a000-b7113000 r-xp 00000000 08:11 15272692   /usr/lib/libgtk-x11-2.0.so.0.1600.1
b7113000-b7117000 r--p 003a8000 08:11 15272692   /usr/lib/libgtk-x11-2.0.so.0.1600.1
b7117000-b7119000 rw-p 003ac000 08:11 15272692   /usr/lib/libgtk-x11-2.0.so.0.1600.1
b7119000-b711b000 rw-p b7119000 00:00 0
b711b000-b711d000 r-xp 00000000 08:11 7504327    /lib/tls/i686/cmov/libdl-2.9.so
b711d000-b711e000 r--p 00001000 08:11 7504327    /lib/tls/i686/cmov/libdl-2.9.so
b711e000-b711f000 rw-p 00002000 08:11 7504327    /lib/tls/i686/cmov/libdl-2.9.so
b711f000-b727b000 r-xp 00000000 08:11 7504322    /lib/tls/i686/cmov/libc-2.9.so
b727b000-b727c000 ---p 0015c000 08:11 7504322    /lib/tls/i686/cmov/libc-2.9.so
b727c000-b727e000 r--p 0015c000 08:11 7504322    /lib/tls/i686/cmov/libc-2.9.so
b727e000-b727f000 rw-p 0015e000 08:11 7504322    /lib/tls/i686/cmov/libc-2.9.so
b727f000-b7282000 rw-p b727f000 00:00 0
b7282000-b728f000 r-xp 00000000 08:11 7487622    /lib/libgcc_s.so.1
b728f000-b7290000 r--p 0000c000 08:11 7487622    /lib/libgcc_s.so.1
b7290000-b7291000 rw-p 0000d000 08:11 7487622    /lib/libgcc_s.so.1
b7291000-b72b5000 r-xp 00000000 08:11 7504328    /lib/tls/i686/cmov/libm-2.9.so
b72b5000-b72b6000 r--p 00023000 08:11 7504328    /lib/tls/i686/cmov/libm-2.9.so
b72b6000-b72b7000 rw-p 00024000 08:11 7504328    /lib/tls/i686/cmov/libm-2.9.so
b72b7000-b72b8000 rw-p b72b7000 00:00 0
b72b8000-b739c000 r-xp 00000000 08:11 15270186   /usr/lib/libstdc++.so.6.0.10
b739c000-b73a0000 r--p 000e3000 08:11 15270186   /usr/lib/libstdc++.so.6.0.10
b73a0000-b73a1000 rw-p 000e7000 08:11 15270186   /usr/lib/libstdc++.so.6.0.10
b73a1000-b73a7000 rw-p b73a1000 00:00 0
b73a7000-b73cd000 r-xp 00000000 08:11 15271462   /usr/lib/libGeoIP.so.1.4.4
b73cd000-b73ce000 r--p 00025000 08:11 15271462   /usr/lib/libGeoIP.so.1.4.4
b73ce000-b73cf000 rw-p 00026000 08:11 15271462   /usr/lib/libGeoIP.so.1.4.4
b73cf000-b754e000 r-xp 00000000 08:11 15270438   /usr/lib/libwx_baseud-2.8.so.0.5.0
b754e000-b7552000 r--p 0017f000 08:11 15270438   /usr/lib/libwx_baseud-2.8.so.0.5.0
b7552000-b7554000 rw-p 00183000 08:11 15270438   /usr/lib/libwx_baseud-2.8.so.0.5.0
b7554000-b755c000 rw-p b7554000 00:00 0
b755c000-b7589000 r-xp 00000000 08:11 15270529   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b7589000-b758a000 ---p 0002d000 08:11 15270529   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b758a000-b758b000 r--p 0002d000 08:11 15270529   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b758b000-b758c000 rw-p 0002e000 08:11 15270529   /usr/lib/libwx_baseud_net-2.8.so.0.5.0
b758c000-b7908000 r-xp 00000000 08:11 15271958   /usr/lib/libwx_gtk2ud_core-2.8.so.0.5.0
b7908000-b792f000 r--p 0037b000 08:11 15271958   /usr/lib/libwx_gtk2ud_core-2.8.so.0.5.0
b792f000-b7934000 rw-p 003a2000 08:11 15271958   /usr/lib/libwx_gtk2ud_core-2.8.so.0.5.0
b7934000-b793a000 rw-p b7934000 00:00 0
b793a000-b79fc000 r-xp 00000000 08:11 15271856   /usr/lib/libwx_gtk2ud_adv-2.8.so.0.5.0
b79fc000-b7a04000 r--p 000c1000 08:11 15271856   /usr/lib/libwx_gtk2ud_adv-2.8.so.0.5.0
b7a04000-b7a05000 rw-p 000c9000 08:11 15271856   /usr/lib/libwx_gtk2ud_adv-2.8.so.0.5.0
b7a05000-b7a08000 rw-p b7a05000 00:00 0
b7a08000-b7a10000 r-xp 00000000 08:11 15269911   /usr/lib/libixml.so.2.0.4
b7a10000-b7a11000 r--p 00007000 08:11 15269911   /usr/lib/libixml.so.2.0.4
b7a11000-b7a12000 rw-p 00008000 08:11 15269911   /usr/lib/libixml.so.2.0.4
b7a12000-b7a16000 r-xp 00000000 08:11 15269967   /usr/lib/libthreadutil.so.2.2.3
b7a16000-b7a17000 r--p 00003000 08:11 15269967   /usr/lib/libthreadutil.so.2.2.3
b7a17000-b7a18000 rw-p 00004000 08:11 15269967   /usr/lib/libthreadutil.so.2.2.3
b7a18000-b7a32000 r-xp 00000000 08:11 15270052   /usr/lib/libupnp.so.3.0.5
b7a32000-b7a33000 r--p 00019000 08:11 15270052   /usr/lib/libupnp.so.3.0.5
b7a33000-b7a34000 rw-p 0001a000 08:11 15270052   /usr/lib/libupnp.so.3.0.5
b7a34000-b7a35000 rw-p b7a34000 00:00 0
b7a35000-b7df0000 r-xp 00000000 08:11 15271308   /usr/lib/libcrypto++.so.7.0.0
b7df0000-b7e25000 r--p 003bb000 08:11 15271308   /usr/lib/libcrypto++.so.7.0.0
b7e25000-b7e28000 rw-p 003f0000 08:11 15271308   /usr/lib/libcrypto++.so.7.0.0
b7e28000-b7e2b000 rw-p b7e28000 00:00 0
b7e2b000-b7e3f000 r-xp 00000000 08:11 7487688    /lib/libz.so.1.2.3.3
b7e3f000-b7e40000 r--p 00013000 08:11 7487688    /lib/libz.so.1.2.3.3
b7e40000-b7e41000 rw-p 00014000 08:11 7487688    /lib/libz.so.1.2.3.3
b7e41000-b7e42000 rw-p b7e41000 00:00 0
b7e42000-b7f1e000 r-xp 00000000 08:11 15270600   /usr/lib/libbfd-2.19.1.so
b7f1e000-b7f28000 r--p 000dc000 08:11 15270600   /usr/lib/libbfd-2.19.1.so
b7f28000-b7f2a000 rw-p 000e6000 08:11 15270600   /usr/lib/libbfd-2.19.1.so
b7f2a000-b7f2e000 rw-p b7f2a000 00:00 0
b7f2e000-b7f43000 r-xp 00000000 08:11 7504341    /lib/tls/i686/cmov/libpthread-2.9.so
b7f43000-b7f44000 r--p 00014000 08:11 7504341    /lib/tls/i686/cmov/libpthread-2.9.so
b7f44000-b7f45000 rw-p 00015000 08:11 7504341    /lib/tls/i686/cmov/libpthread-2.9.so
b7f45000-b7f47000 rw-p b7f45000 00:00 0
b7f47000-b7f48000 r--p 00000000 08:11 15443006   /usr/lib/locale/nl_NL.utf8/LC_MESSAGES/SYS_LC_MESSAGES
b7f48000-b7f49000 r--p 00000000 08:11 15295302   /usr/lib/locale/nl_NL.utf8/LC_PAPER
b7f49000-b7f4a000 r--p 00000000 08:11 15295404   /usr/lib/locale/nl_NL.utf8/LC_NAME
b7f4a000-b7f4b000 r--p 00000000 08:11 15425573   /usr/lib/locale/nl_NL.utf8/LC_ADDRESS
b7f4b000-b7f4c000 r--p 00000000 08:11 15425574   /usr/lib/locale/nl_NL.utf8/LC_TELEPHONE
b7f4c000-b7f4d000 r--p 00000000 08:11 15295298   /usr/lib/locale/nl_NL.utf8/LC_MEASUREMENT
b7f4d000-b7f4e000 r--p 00000000 08:11 15425575   /usr/lib/locale/nl_NL.utf8/LC_IDENTIFICATION
b7f4e000-b7f50000 r-xp 00000000 08:11 9609462    /usr/lib/gconv/UTF-32.so
b7f50000-b7f51000 r--p 00001000 08:11 9609462    /usr/lib/gconv/UTF-32.so
b7f51000-b7f52000 rw-p 00002000 08:11 9609462    /usr/lib/gconv/UTF-32.so
b7f52000-b7f59000 r--s 00000000 08:11 15278206   /usr/lib/gconv/gconv-modules.cache
b7f59000-b7f5b000 rw-p b7f59000 00:00 0
b7f5b000-b7f5c000 r-xp b7f5b000 00:00 0          [vdso]
b7f5c000-b7f78000 r-xp 00000000 08:11 7487604    /lib/ld-2.9.so
b7f78000-b7f79000 r--p 0001b000 08:11 7487604    /lib/ld-2.9.so
b7f79000-b7f7a000 rw-p 0001c000 08:11 7487604    /lib/ld-2.9.so
bfa5c000-bfa79000 rw-p bffe3000 00:00 0          [stack]
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on May 12, 2009, 11:16:40 PM
RRM, in all cases aMule is running out of memory. We clearly have a memory leak.

By the way, thanks a lot for your efforts, we should have enough backtraces now to fix the problem.
Yeah, looks like aMule is out of memory (bad_alloc). Only - how should a backtrace of the final crash help to find a memory leak ? And who says aMule is leaking if transmission is running in parallel?
I don't know about the other devs, but I have given up on this thread around 10 pages ago.

What does top report about memory usage?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on May 13, 2009, 04:45:12 PM
And who says aMule is leaking if transmission is running in parallel?

Initially, i didnt use bittorrent transmission client at all.
The memory leaks were there without using transmission.
Only because aMule kept on crashing, and i therefore have to keep it running
very moderately (50 connections max), i started using transmission so that im
utilizing all the available bandwidth anyway.

Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on May 13, 2009, 06:20:37 PM
What does top report about memory usage?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on May 14, 2009, 02:26:51 AM
What does top report about memory usage?
STU, the thread is long because we aimed to get the best backtrace possible.

you can see memory stats in page 9~10. In short, amule is using almost 4Gb of memory, it is, we have a memory leak.

A summary of the bug is: high load causes amule to leak memory until it crashes. The bug is reproducible if you have like 100MiB real bandwitch for upload. I think it has to do with some discussion about having a high numbers of connections eating unreasonable amounts of memory.

Thanks for helping :)!
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on May 14, 2009, 07:20:03 AM
So far i have been assuming that Festor's builds are aimed at developing aMule,
and specifically at getting the best backtrace possible,
so that developers can find the cause of memory leaks
and anything else that may cause a crash.
I have also been assuming that every new build that Festor makes available,
is an improvement, or at least contains some experimenting,
so that it is helpful to have a bt of that new build crashing (to check the results).

Is that correct?
Is it useful to have a bt of every new build?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on May 14, 2009, 04:24:58 PM
Is that correct?
Is it useful to have a bt of every new build?

Dear RRM, your assumptions are correct. However, I guess we have enough backtraces for now.

I was going to have a look into this problem last week, but I stepped into

http://seagate.custkb.com/seagate/crm/selfservice/search.jsp?DocId=207931

Not funny :(

Regards!
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on May 14, 2009, 09:39:40 PM
Is that correct?
Is it useful to have a bt of every new build?
We are working on many features/problems, all of them at the moment not related to your problem I'm afraid.
So trying each new version in hope of improvement will not be usefull, sorry.

The bug is reproducible if you have like 100MiB real bandwitch for upload.
100 Megabyte/s UL bandwidth ?!? Are you kidding ?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on May 16, 2009, 08:02:25 AM
So trying each new version in hope of improvement will not be usefull, sorry.

Ok, thank you for letting me know.

Quote
100 Megabyte/s UL bandwidth ?!? Are you kidding ?

Officially, my DL bandwidth is 'only' 120 MB/s and UL 10 MB/s.
However, this is a fairly new service with not too many customers, so the first users
have much more bandwidth in practise. (it will end soon, i guess   :( )
Trying to find out about when aMule starts crashing, i closely watched it for a few days
and witnessed uploads of well over 10 MB/s.
And, many times before it actually crashed, i witnessed uploads of 40 to 90 MB/s.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on May 16, 2009, 12:54:15 PM
I'm not sure the rate measurement works reliable at such speeds. 90MB/s, that would be close to the limits of harddisc and gigabit LAN.
How many active uploads in such moments?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on May 16, 2009, 07:14:53 PM
I'm not sure the rate measurement works reliable at such speeds.

Yes, you might be right; amule is also 'in the freezing process' whenever the numbers are
(over 50 MB/s) that high; as if the results are added up, whenever it can still report 'something'.
(between frozen moments)

Quote
How many active uploads in such moments?

Something like 400 to 500.
The downloads that i can still see at that point (i cant scroll or change pages in that
condition) are often in the range of 100 - 300 kb/s (some much lower, some higher)

Most of the time (when im not home), i have the max. connections set at 50, to prevent crashes.
When the max. connections are set to 200, i dont get above 20 MB/s UL, but that still
(usually) results in high VSZ crashes.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on May 16, 2009, 07:18:59 PM

Dear RRM, your assumptions are correct. However, I guess we have enough backtraces for now.

Perfect.
However, i just had a new type of crash that i never experienced before
and that i like to share with you (see next post).
It will be the last one.

Quote
I was going to have a look into this problem last week, but I stepped into

http://seagate.custkb.com/seagate/crm/selfservice/search.jsp?DocId=207931

Not funny :(

Ouch!!  :(
Not funny at all, indeed...

Regards!
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on May 16, 2009, 07:19:57 PM
I did not see this (also high VSZ) crash before,
so forgive me for posting it...

Program received signal SIGTRAP, Trace/breakpoint trap.
[Switching to Thread 0xb65f6750 (LWP 5288)]
0xb7f22430 in __kernel_vsyscall ()

$ ps axl | grep amule
Code: [Select]
0  1000  4175  4158  20   0   3336   800 pipe_w S+   pts/1      0:00 grep amule
0  1000  5287  5270  20   0 245668 84912 poll   S+   pts/0      0:04 gdb amule
0  1000  5288  5287  20   0 3145724 2313580 ptrace Tl pts/0   495:55 /usr/bin/amule

(gdb) bt
Code: [Select]
#0  0xb7f22430 in __kernel_vsyscall ()
#1  0xb7f034b0 in raise (sig=5)
    at ../nptl/sysdeps/unix/sysv/linux/pt-raise.c:42
#2  0xb73dfb8e in wxTrap () at ../src/common/appbase.cpp:674
#3  0xb73e0a13 in wxOnAssert (szFile=0xb74d0e4c, nLine=1097,
    szFunc=0xb74d2677 "UngetWriteBuf", szCond=0xb74d0de0, szMsg=0xb74d0da4)
    at ../src/common/appbase.cpp:694
#4  0xb744df63 in wxString::UngetWriteBuf (this=0xbff3d628, nLen=0)
    at ../src/common/string.cpp:1097
#5  0xb744f146 in wxString::UngetWriteBuf (this=0xbff3d628)
    at ../src/common/string.cpp:1090
#6  0xb7453423 in wxString::PrintfV (this=0xbff3d628, pszFormat=0xb74b3be0,
    argptr=0xbff3d608 "L\016M�I\004") at ../include/wx/string.h:1510
#7  0xb74534db in wxString::Printf (this=0xbff3d628, pszFormat=0xb74b3be0)
    at ../src/common/string.cpp:1826
#8  0xb73e0092 in ShowAssertDialog (szFile=0xb74d0e4c, nLine=1097,
    szFunc=0xcdc943c, szCond=0xb74d0de0, szMsg=0xb74d0da4, traits=0x992cc50)
    at ../src/common/appbase.cpp:791
#9  0xb7672409 in wxApp::OnAssertFailure (this=0x98dbe40, file=0xb74d0e4c,
    line=1097, func=0xcdc943c, cond=0xb74d0de0, msg=0xb74d0da4)
    at ../src/gtk/app.cpp:556
#10 0x08096bb2 in CamuleApp::OnAssertFailure (this=0x98dbe40, file=0xb74d0e4c,
    line=1097, func=0xcdc943c, cond=0xb74d0de0, msg=0xb74d0da4)
---Type <return> to continue, or q <return> to quit---
    at ../../src/amule.cpp:1385
#11 0xb73e0a8b in wxOnAssert (szFile=0xb74d0e4c, nLine=1097,
    szFunc=0xb74d2677 "UngetWriteBuf", szCond=0xb74d0de0, szMsg=0xb74d0da4)
    at ../src/common/appbase.cpp:711
#12 0xb744df63 in wxString::UngetWriteBuf (this=0xbff3d834, nLen=0)
    at ../src/common/string.cpp:1097
#13 0xb744f146 in wxString::UngetWriteBuf (this=0xbff3d834)
    at ../src/common/string.cpp:1090
#14 0xb7453423 in wxString::PrintfV (this=0xbff3d834, pszFormat=0x9a34f64,
    argptr=0xbff3d7c8 "|\003") at ../include/wx/string.h:1510
#15 0xb745358d in wxString::Format (pszFormat=0x9a34f64)
    at ../src/common/string.cpp:1806
#16 0x082eb5d5 in CKadDlg::UpdateGraph (this=0xa11c1d8, update=@0xbff3d890)
    at ../../src/KadDlg.cpp:132
#17 0x082d5dfd in CamuleDlg::OnGUITimer (this=0x9eac460)
    at ../../src/amuleDlg.cpp:1087
#18 0xb73dfa81 in wxAppConsole::HandleEvent (this=0x98dbe40,
    handler=0x9eac460, func=0x14a8, event=@0xbff3d9b4)
    at ../src/common/appbase.cpp:322
#19 0xb749da6a in wxEvtHandler::ProcessEventIfMatches (entry=@0x890f378,
    handler=0x9eac460, event=@0xbff3d9b4) at ../src/common/event.cpp:1231
#20 0xb749f1f4 in wxEventHashTable::HandleEvent (this=0x890f220,
    event=@0xbff3d9b4, self=0x9eac460) at ../src/common/event.cpp:906
---Type <return> to continue, or q <return> to quit---
#21 0xb749f346 in wxEvtHandler::ProcessEvent (this=0x9eac460,
    event=@0xbff3d9b4) at ../src/common/event.cpp:1293
#22 0xb77c25a7 in wxTimerBase::Notify (this=0xa2238a8)
    at ../src/common/timercmn.cpp:57
#23 0xb769950d in timeout_callback (data=0xa2238a8) at ../src/gtk/timer.cpp:43
#24 0xb6a1e2b6 in g_timeout_dispatch (source=0x992bc00, callback=0,
    user_data=0xa2238a8) at /build/buildd/glib2.0-2.20.1/glib/gmain.c:3253
#25 0xb6a1db88 in IA__g_main_context_dispatch (context=0x98dbff8)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:1814
#26 0xb6a210eb in g_main_context_iterate (context=0x98dbff8, block=1,
    dispatch=1, self=0x98dd570)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2448
#27 0xb6a215ba in IA__g_main_loop_run (loop=0xb404268)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2656
#28 0xb6e617d9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.16.1/gtk/gtkmain.c:1205
#29 0xb768f41b in wxEventLoop::Run (this=0xb3be0f0)
    at ../src/gtk/evtloop.cpp:76
#30 0xb7733b3c in wxAppBase::MainLoop (this=0x98dbe40)
    at ../src/common/appcmn.cpp:312
#31 0xb7733891 in wxAppBase::OnRun (this=0x5) at ../src/common/appcmn.cpp:367
#32 0xb74277ca in wxEntry (argc=@0xb75206cc, argv=0x98ca480)
    at ../src/common/init.cpp:460
---Type <return> to continue, or q <return> to quit---
#33 0xb7427887 in wxEntry (argc=@0xbff3dca0, argv=0xbff3dd24)
    at ../src/common/init.cpp:472
#34 0x082cba50 in main (argc=0, argv=0x0) at ../../src/amule-gui.cpp:94

(gdb) bt full
Code: [Select]
#0  0xb7f22430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7f034b0 in raise (sig=5)
    at ../nptl/sysdeps/unix/sysv/linux/pt-raise.c:42
resultvar = 5
#2  0xb73dfb8e in wxTrap () at ../src/common/appbase.cpp:674
No locals.
#3  0xb73e0a13 in wxOnAssert (szFile=0xb74d0e4c, nLine=1097,
    szFunc=0xb74d2677 "UngetWriteBuf", szCond=0xb74d0de0, szMsg=0xb74d0da4)
    at ../src/common/appbase.cpp:694
guard = {m_flag = @0xb751a1f0, m_isInside = true}
strFunc = {<wxStringBase> = {static npos = 4294967295,
    m_pchData = 0xbff3d578}, <No data fields>}
s_bInAssert = 2
#4  0xb744df63 in wxString::UngetWriteBuf (this=0xbff3d628, nLen=0)
    at ../src/common/string.cpp:1097
pData = (wxStringData * const) 0xb74d27a8
__FUNCTION__ = "UngetWriteBuf"
#5  0xb744f146 in wxString::UngetWriteBuf (this=0xbff3d628)
    at ../src/common/string.cpp:1090
No locals.
#6  0xb7453423 in wxString::PrintfV (this=0xbff3d628, pszFormat=0xb74b3be0,
    argptr=0xbff3d608 "L\016M�I\004") at ../include/wx/string.h:1510
---Type <return> to continue, or q <return> to quit---
len = <value optimized out>
size = 1024
#7  0xb74534db in wxString::Printf (this=0xbff3d628, pszFormat=0xb74b3be0)
    at ../src/common/string.cpp:1826
iLen = 0
#8  0xb73e0092 in ShowAssertDialog (szFile=0xb74d0e4c, nLine=1097,
    szFunc=0xcdc943c, szCond=0xb74d0de0, szMsg=0xb74d0da4, traits=0x992cc50)
    at ../src/common/appbase.cpp:791
msg = {<wxStringBase> = {static npos = 4294967295,
    m_pchData = 0xb74d27b4}, <No data fields>}
s_bNoAsserts = false
#9  0xb7672409 in wxApp::OnAssertFailure (this=0x98dbe40, file=0xb74d0e4c,
    line=1097, func=0xcdc943c, cond=0xb74d0de0, msg=0xb74d0da4)
    at ../src/gtk/app.cpp:556
No locals.
#10 0x08096bb2 in CamuleApp::OnAssertFailure (this=0x98dbe40, file=0xb74d0e4c,
    line=1097, func=0xcdc943c, cond=0xb74d0de0, msg=0xb74d0da4)
    at ../../src/amule.cpp:1385
No locals.
#11 0xb73e0a8b in wxOnAssert (szFile=0xb74d0e4c, nLine=1097,
    szFunc=0xb74d2677 "UngetWriteBuf", szCond=0xb74d0de0, szMsg=0xb74d0da4)
    at ../src/common/appbase.cpp:711
guard = {m_flag = @0xb751a1f0, m_isInside = false}
---Type <return> to continue, or q <return> to quit---
strFunc = {<wxStringBase> = {static npos = 4294967295,
    m_pchData = 0xcdc943c}, <No data fields>}
s_bInAssert = 2
#12 0xb744df63 in wxString::UngetWriteBuf (this=0xbff3d834, nLen=0)
    at ../src/common/string.cpp:1097
pData = (wxStringData * const) 0xb74d27a8
__FUNCTION__ = "UngetWriteBuf"
#13 0xb744f146 in wxString::UngetWriteBuf (this=0xbff3d834)
    at ../src/common/string.cpp:1090
No locals.
#14 0xb7453423 in wxString::PrintfV (this=0xbff3d834, pszFormat=0x9a34f64,
    argptr=0xbff3d7c8 "|\003") at ../include/wx/string.h:1510
len = <value optimized out>
size = 1024
#15 0xb745358d in wxString::Format (pszFormat=0x9a34f64)
    at ../src/common/string.cpp:1806
s = {<wxStringBase> = {static npos = 4294967295,
    m_pchData = 0xbff3d834}, <No data fields>}
#16 0x082eb5d5 in CKadDlg::UpdateGraph (this=0xa11c1d8, update=@0xbff3d890)
    at ../../src/KadDlg.cpp:132
v = {<std::__norm::vector<float*, std::allocator<float*> >> = {<std::__norm::_Vector_base<float*, std::allocator<float*> >> = {
      _M_impl = {<std::allocator<float*>> = {<__gnu_cxx::new_allocator<float*>> ---Type <return> to continue, or q <return> to quit---
= {<No data fields>}, <No data fields>}, _M_start = 0xb3650648,
        _M_finish = 0xb3650654,
        _M_end_of_storage = 0xb3650654}}, <No data fields>}, <__gnu_debug::_Safe_sequence<std::__debug::vector<float*, std::allocator<float*> > >> = {<__gnu_debug::_Safe_sequence_base> = {_M_iterators = 0x0, _M_const_iterators = 0x0,
      _M_version = 1}, <No data fields>}, _M_guaranteed_capacity = 3}
apfKad = (
    const class std::__debug::vector<float*, std::allocator<float*> >
     &) @0xbff3d818: {<std::__norm::vector<float*, std::allocator<float*> >> = {<std::__norm::_Vector_base<float*, std::allocator<float*> >> = {
      _M_impl = {<std::allocator<float*>> = {<__gnu_cxx::new_allocator<float*>> = {<No data fields>}, <No data fields>}, _M_start = 0xb3650648,
        _M_finish = 0xb3650654,
        _M_end_of_storage = 0xb3650654}}, <No data fields>}, <__gnu_debug::_Safe_sequence<std::__debug::vector<float*, std::allocator<float*> > >> = {<__gnu_debug::_Safe_sequence_base> = {_M_iterators = 0x0, _M_const_iterators = 0x0,
      _M_version = 1}, <No data fields>}, _M_guaranteed_capacity = 3}
nodeCount = 892
label = (class wxStaticText *) 0xa11e660
__FUNCTION__ = "UpdateGraph"
#17 0x082d5dfd in CamuleDlg::OnGUITimer (this=0x9eac460)
    at ../../src/amuleDlg.cpp:1087
update = {timestamp = 140643.049, downloads = {10.7057018, 4.7475009,
---Type <return> to continue, or q <return> to quit---
    4.52141333}, uploads = {339.60022, 268.887817, 262.159088}, connections = {
    37, 51, 3}, kadnodes = {846.082214, 886.651245, 892}}
msCur = 140921301
msGraphUpdate = 10000
sStatsUpdate = -1230778926
msPrev1 = 140919707
msPrev5 = 140919904
msPrevStats = 0
msPrevGraph = 140921301
#18 0xb73dfa81 in wxAppConsole::HandleEvent (this=0x98dbe40,
    handler=0x9eac460, func=0x14a8, event=@0xbff3d9b4)
    at ../src/common/appbase.cpp:322
No locals.
#19 0xb749da6a in wxEvtHandler::ProcessEventIfMatches (entry=@0x890f378,
    handler=0x9eac460, event=@0xbff3d9b4) at ../src/common/event.cpp:1231
tableId1 = <value optimized out>
tableId2 = <value optimized out>
#20 0xb749f1f4 in wxEventHashTable::HandleEvent (this=0x890f220,
    event=@0xbff3d9b4, self=0x9eac460) at ../src/common/event.cpp:906
n = 0
count = 1
eventType = 10096
eTTnode = (wxEventHashTable::EventTypeTable * const) 0xa11acf8
---Type <return> to continue, or q <return> to quit---
#21 0xb749f346 in wxEvtHandler::ProcessEvent (this=0x9eac460,
    event=@0xbff3d9b4) at ../src/common/event.cpp:1293
__FUNCTION__ = "ProcessEvent"
#22 0xb77c25a7 in wxTimerBase::Notify (this=0xa2238a8)
    at ../src/common/timercmn.cpp:57
event = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x8725be8,
      static ms_classInfo = {m_className = 0xb74cd6c4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb79cb8cc, m_next = 0xb75218c4,
        static sm_classTable = 0x98ae3e8}, m_refData = 0x0},
    m_eventObject = 0xa2238a8, m_eventType = 10096, m_timeStamp = 0,
    m_id = 6129, m_callbackUserData = 0x0, m_propagationLevel = 0,
    m_skipped = false, m_isCommandEvent = false, static ms_classInfo = {
      m_className = 0xb74deef0, m_objectSize = 36, m_objectConstructor = 0,
      m_baseInfo1 = 0xb7521858, m_baseInfo2 = 0x0,
      static sm_first = 0xb79cb8cc, m_next = 0xb7522908,
      static sm_classTable = 0x98ae3e8}}, m_interval = 100,
  static ms_classInfo = {m_className = 0xb785c89c, m_objectSize = 40,
    m_objectConstructor = 0xb77c2400 <wxTimerEvent::wxCreateObject()>,
    m_baseInfo1 = 0xb7522920, m_baseInfo2 = 0x0, static sm_first = 0xb79cb8cc,
    m_next = 0xb78fee48, static sm_classTable = 0x98ae3e8}}
__FUNCTION__ = "Notify"
#23 0xb769950d in timeout_callback (data=0xa2238a8) at ../src/gtk/timer.cpp:43
---Type <return> to continue, or q <return> to quit---
No locals.
#24 0xb6a1e2b6 in g_timeout_dispatch (source=0x992bc00, callback=0,
    user_data=0xa2238a8) at /build/buildd/glib2.0-2.20.1/glib/gmain.c:3253
No locals.
#25 0xb6a1db88 in IA__g_main_context_dispatch (context=0x98dbff8)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:1814
No locals.
#26 0xb6a210eb in g_main_context_iterate (context=0x98dbff8, block=1,
    dispatch=1, self=0x98dd570)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2448
max_priority = 0
timeout = 0
some_ready = 1
nfds = 11
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xa689f68
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#27 0xb6a215ba in IA__g_main_loop_run (loop=0xb404268)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2656
self = (GThread *) 0x98dd570
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#28 0xb6e617d9 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.16.1/gtk/gtkmain.c:1205
---Type <return> to continue, or q <return> to quit---
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0xb3be0f0
loop = (GMainLoop *) 0xb404268
#29 0xb768f41b in wxEventLoop::Run (this=0xb3be0f0)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#30 0xb7733b3c in wxAppBase::MainLoop (this=0x98dbe40)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0xb3be0f0}, m_pp = 0x98dbe80,
  m_pOld = 0x0}
#31 0xb7733891 in wxAppBase::OnRun (this=0x5) at ../src/common/appcmn.cpp:367
No locals.
#32 0xb74277ca in wxEntry (argc=@0xb75206cc, argv=0x98ca480)
    at ../src/common/init.cpp:460
No locals.
#33 0xb7427887 in wxEntry (argc=@0xbff3dca0, argv=0xbff3dd24)
    at ../src/common/init.cpp:472
No locals.
#34 0x082cba50 in main (argc=0, argv=0x0) at ../../src/amule-gui.cpp:94
No locals.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on May 16, 2009, 07:20:39 PM
(gdb) thread apply all bt full
Code: [Select]
Thread 5 (Thread 0xb44f0b90 (LWP 5550)):
#0  0xb7f22430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7eff412 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
    at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_timedwait.S:179
No locals.
#2  0xb7499b51 in wxConditionInternal::WaitTimeout (this=0x9967ed8,
    milliseconds=100) at ../src/unix/threadpsx.cpp:405
tspec = {tv_sec = 1242473334, tv_nsec = 911000000}
err = <value optimized out>
#3  0xb7499bda in wxCondition::WaitTimeout (this=0xb3c05ac, milliseconds=100)
    at ../include/wx/thrimpl.cpp:256
__FUNCTION__ = "WaitTimeout"
#4  0xb749b994 in wxSemaphoreInternal::WaitTimeout (this=0xb3c05a8,
    milliseconds=100) at ../src/unix/threadpsx.cpp:552
remainingTime = -516
locker = {m_isOk = true, m_mutex = @0xb3c05a8}
#5  0xb749ba1a in wxSemaphore::WaitTimeout (this=0xb3fb780, milliseconds=100)
    at ../include/wx/thrimpl.cpp:320
__FUNCTION__ = "WaitTimeout"
#6  0x0841692c in CTimerThread::Entry (this=0xb3fb760)
---Type <return> to continue, or q <return> to quit---
    at ../../src/Timer.cpp:64
now = 1227786267
sinceLast = 0
timeout = 100
evt = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x85fd8e8,
      static ms_classInfo = {m_className = 0xb74cd6c4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb79cb8cc, m_next = 0xb75218c4,
        static sm_classTable = 0x98ae3e8}, m_refData = 0x0},
    m_eventObject = 0x0, m_eventType = 10244, m_timeStamp = 0, m_id = 6128,
    m_callbackUserData = 0x0, m_propagationLevel = 0, m_skipped = false,
    m_isCommandEvent = false, static ms_classInfo = {m_className = 0xb74deef0,
      m_objectSize = 36, m_objectConstructor = 0, m_baseInfo1 = 0xb7521858,
      m_baseInfo2 = 0x0, static sm_first = 0xb79cb8cc, m_next = 0xb7522908,
      static sm_classTable = 0x98ae3e8}}, <No data fields>}
lastEvent = 1227786267
#7  0xb749c4a6 in wxThreadInternal::PthreadStart (thread=0xb3fb760)
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0x99767c0
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#8  0xb749c5ad in wxPthreadStart (ptr=0xb3fb760)
---Type <return> to continue, or q <return> to quit---
    at ../src/unix/threadpsx.cpp:718
No locals.
#9  0xb7efb4ff in start_thread (arg=0xb44f0b90) at pthread_create.c:297
__res = <value optimized out>
__ignore1 = <value optimized out>
__ignore2 = <value optimized out>
pd = (struct pthread *) 0xb44f0b90
now = <value optimized out>
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {-1208963084, 0, 0,
        -1269890008, 596454441, 1658991150}, mask_was_saved = 0}}, priv = {
    pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0,
      canceltype = 0}}}
not_first_call = <value optimized out>
robust = <value optimized out>
#10 0xb71ca49e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
No locals.

Thread 3 (Thread 0xb54f2b90 (LWP 5429)):
#0  0xb7f22430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7f028f6 in nanosleep () from /lib/tls/i686/cmov/libpthread.so.0
No locals.
#2  0xb74a35d8 in wxMicroSleep (microseconds=0) at ../src/unix/utilsunx.cpp:191
---Type <return> to continue, or q <return> to quit---
tmReq = {tv_sec = 1, tv_nsec = 0}
#3  0xb74a3601 in wxMilliSleep (milliseconds=1000)
    at ../src/unix/utilsunx.cpp:212
No locals.
#4  0xb749988d in wxThread::Sleep (milliseconds=1000)
    at ../src/unix/threadpsx.cpp:986
No locals.
#5  0x0821dcce in UploadBandwidthThrottler::Entry (this=0xa11ea28)
    at ../../src/UploadBandwidthThrottler.cpp:320
timeSinceLastLoop = 0
minFragSize = 1300
doubleSendSize = 2600
bytesToSpend = 1672082
sleepTime = 1000
thisLoopTick = 1227786318
TIME_BETWEEN_UPLOAD_LOOPS = 1
lastLoopTick = 1227786318
realBytesToSpend = 22016999
allowedDataRate = 10240000
rememberedSlotCounter = 28
extraSleepTime = 1000
sendLock = {m_isOk = false, m_mutex = @0xb7f0aff4}
#6  0xb749c4a6 in wxThreadInternal::PthreadStart (thread=0xa11ea28)
---Type <return> to continue, or q <return> to quit---
    at ../src/unix/threadpsx.cpp:766
pthread = (wxThreadInternal *) 0xa123a48
rc = <value optimized out>
dontRunAtAll = false
__FUNCTION__ = "PthreadStart"
#7  0xb749c5ad in wxPthreadStart (ptr=0xa11ea28)
    at ../src/unix/threadpsx.cpp:718
No locals.
#8  0xb7efb4ff in start_thread (arg=0xb54f2b90) at pthread_create.c:297
__res = <value optimized out>
__ignore1 = <value optimized out>
__ignore2 = <value optimized out>
pd = (struct pthread *) 0xb54f2b90
now = <value optimized out>
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {-1208963084, 0, 0,
        -1253104600, 600648747, 1658991150}, mask_was_saved = 0}}, priv = {
    pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0,
      canceltype = 0}}}
not_first_call = <value optimized out>
robust = <value optimized out>
#9  0xb71ca49e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
No locals.

---Type <return> to continue, or q <return> to quit---
Thread 1 (Thread 0xb65f6750 (LWP 5288)):
#0  0xb7f22430 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7f034b0 in raise (sig=5)
    at ../nptl/sysdeps/unix/sysv/linux/pt-raise.c:42
resultvar = 5
#2  0xb73dfb8e in wxTrap () at ../src/common/appbase.cpp:674
No locals.
#3  0xb73e0a13 in wxOnAssert (szFile=0xb74d0e4c, nLine=1097,
    szFunc=0xb74d2677 "UngetWriteBuf", szCond=0xb74d0de0, szMsg=0xb74d0da4)
    at ../src/common/appbase.cpp:694
guard = {m_flag = @0xb751a1f0, m_isInside = true}
strFunc = {<wxStringBase> = {static npos = 4294967295,
    m_pchData = 0xbff3d578}, <No data fields>}
s_bInAssert = 2
#4  0xb744df63 in wxString::UngetWriteBuf (this=0xbff3d628, nLen=0)
    at ../src/common/string.cpp:1097
pData = (wxStringData * const) 0xb74d27a8
__FUNCTION__ = "UngetWriteBuf"
#5  0xb744f146 in wxString::UngetWriteBuf (this=0xbff3d628)
    at ../src/common/string.cpp:1090
No locals.
#6  0xb7453423 in wxString::PrintfV (this=0xbff3d628, pszFormat=0xb74b3be0,
---Type <return> to continue, or q <return> to quit---
    argptr=0xbff3d608 "L\016M�I\004") at ../include/wx/string.h:1510
len = <value optimized out>
size = 1024
#7  0xb74534db in wxString::Printf (this=0xbff3d628, pszFormat=0xb74b3be0)
    at ../src/common/string.cpp:1826
iLen = 0
#8  0xb73e0092 in ShowAssertDialog (szFile=0xb74d0e4c, nLine=1097,
    szFunc=0xcdc943c, szCond=0xb74d0de0, szMsg=0xb74d0da4, traits=0x992cc50)
    at ../src/common/appbase.cpp:791
msg = {<wxStringBase> = {static npos = 4294967295,
    m_pchData = 0xb74d27b4}, <No data fields>}
s_bNoAsserts = false
#9  0xb7672409 in wxApp::OnAssertFailure (this=0x98dbe40, file=0xb74d0e4c,
    line=1097, func=0xcdc943c, cond=0xb74d0de0, msg=0xb74d0da4)
    at ../src/gtk/app.cpp:556
No locals.
#10 0x08096bb2 in CamuleApp::OnAssertFailure (this=0x98dbe40, file=0xb74d0e4c,
    line=1097, func=0xcdc943c, cond=0xb74d0de0, msg=0xb74d0da4)
    at ../../src/amule.cpp:1385
No locals.
#11 0xb73e0a8b in wxOnAssert (szFile=0xb74d0e4c, nLine=1097,
    szFunc=0xb74d2677 "UngetWriteBuf", szCond=0xb74d0de0, szMsg=0xb74d0da4)
    at ../src/common/appbase.cpp:711
---Type <return> to continue, or q <return> to quit---
guard = {m_flag = @0xb751a1f0, m_isInside = false}
strFunc = {<wxStringBase> = {static npos = 4294967295,
    m_pchData = 0xcdc943c}, <No data fields>}
s_bInAssert = 2
#12 0xb744df63 in wxString::UngetWriteBuf (this=0xbff3d834, nLen=0)
    at ../src/common/string.cpp:1097
pData = (wxStringData * const) 0xb74d27a8
__FUNCTION__ = "UngetWriteBuf"
#13 0xb744f146 in wxString::UngetWriteBuf (this=0xbff3d834)
    at ../src/common/string.cpp:1090
No locals.
#14 0xb7453423 in wxString::PrintfV (this=0xbff3d834, pszFormat=0x9a34f64,
    argptr=0xbff3d7c8 "|\003") at ../include/wx/string.h:1510
len = <value optimized out>
size = 1024
#15 0xb745358d in wxString::Format (pszFormat=0x9a34f64)
    at ../src/common/string.cpp:1806
s = {<wxStringBase> = {static npos = 4294967295,
    m_pchData = 0xbff3d834}, <No data fields>}
#16 0x082eb5d5 in CKadDlg::UpdateGraph (this=0xa11c1d8, update=@0xbff3d890)
    at ../../src/KadDlg.cpp:132
v = {<std::__norm::vector<float*, std::allocator<float*> >> = {<std::__norm::_Vector_base<float*, std::allocator<float*> >> = {
---Type <return> to continue, or q <return> to quit---
      _M_impl = {<std::allocator<float*>> = {<__gnu_cxx::new_allocator<float*>> = {<No data fields>}, <No data fields>}, _M_start = 0xb3650648,
        _M_finish = 0xb3650654,
        _M_end_of_storage = 0xb3650654}}, <No data fields>}, <__gnu_debug::_Safe_sequence<std::__debug::vector<float*, std::allocator<float*> > >> = {<__gnu_debug::_Safe_sequence_base> = {_M_iterators = 0x0, _M_const_iterators = 0x0,
      _M_version = 1}, <No data fields>}, _M_guaranteed_capacity = 3}
apfKad = (
    const std::__debug::vector<float*, std::allocator<float*> > &) @0xbff3d818: {<std::__norm::vector<float*, std::allocator<float*> >> = {<std::__norm::_Vector_base<float*, std::allocator<float*> >> = {
      _M_impl = {<std::allocator<float*>> = {<__gnu_cxx::new_allocator<float*>> = {<No data fields>}, <No data fields>}, _M_start = 0xb3650648,
        _M_finish = 0xb3650654,
        _M_end_of_storage = 0xb3650654}}, <No data fields>}, <__gnu_debug::_Safe_sequence<std::__debug::vector<float*, std::allocator<float*> > >> = {<__gnu_debug::_Safe_sequence_base> = {_M_iterators = 0x0, _M_const_iterators = 0x0,
      _M_version = 1}, <No data fields>}, _M_guaranteed_capacity = 3}
nodeCount = 892
label = (class wxStaticText *) 0xa11e660
__FUNCTION__ = "UpdateGraph"
#17 0x082d5dfd in CamuleDlg::OnGUITimer (this=0x9eac460)
    at ../../src/amuleDlg.cpp:1087
---Type <return> to continue, or q <return> to quit---
update = {timestamp = 140643.049, downloads = {10.7057018, 4.7475009,
    4.52141333}, uploads = {339.60022, 268.887817, 262.159088}, connections = {
    37, 51, 3}, kadnodes = {846.082214, 886.651245, 892}}
msCur = 140921301
msGraphUpdate = 10000
sStatsUpdate = -1230778926
msPrev1 = 140919707
msPrev5 = 140919904
msPrevStats = 0
msPrevGraph = 140921301
#18 0xb73dfa81 in wxAppConsole::HandleEvent (this=0x98dbe40,
    handler=0x9eac460, func=0x14a8, event=@0xbff3d9b4)
    at ../src/common/appbase.cpp:322
No locals.
#19 0xb749da6a in wxEvtHandler::ProcessEventIfMatches (entry=@0x890f378,
    handler=0x9eac460, event=@0xbff3d9b4) at ../src/common/event.cpp:1231
tableId1 = <value optimized out>
tableId2 = <value optimized out>
#20 0xb749f1f4 in wxEventHashTable::HandleEvent (this=0x890f220,
    event=@0xbff3d9b4, self=0x9eac460) at ../src/common/event.cpp:906
n = 0
count = 1
eventType = 10096
---Type <return> to continue, or q <return> to quit---
eTTnode = (wxEventHashTable::EventTypeTable * const) 0xa11acf8
#21 0xb749f346 in wxEvtHandler::ProcessEvent (this=0x9eac460,
    event=@0xbff3d9b4) at ../src/common/event.cpp:1293
__FUNCTION__ = "ProcessEvent"
#22 0xb77c25a7 in wxTimerBase::Notify (this=0xa2238a8)
    at ../src/common/timercmn.cpp:57
event = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x8725be8,
      static ms_classInfo = {m_className = 0xb74cd6c4, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0xb79cb8cc, m_next = 0xb75218c4,
        static sm_classTable = 0x98ae3e8}, m_refData = 0x0},
    m_eventObject = 0xa2238a8, m_eventType = 10096, m_timeStamp = 0,
    m_id = 6129, m_callbackUserData = 0x0, m_propagationLevel = 0,
    m_skipped = false, m_isCommandEvent = false, static ms_classInfo = {
      m_className = 0xb74deef0, m_objectSize = 36, m_objectConstructor = 0,
      m_baseInfo1 = 0xb7521858, m_baseInfo2 = 0x0,
      static sm_first = 0xb79cb8cc, m_next = 0xb7522908,
      static sm_classTable = 0x98ae3e8}}, m_interval = 100,
  static ms_classInfo = {m_className = 0xb785c89c, m_objectSize = 40,
    m_objectConstructor = 0xb77c2400 <wxTimerEvent::wxCreateObject()>,
    m_baseInfo1 = 0xb7522920, m_baseInfo2 = 0x0, static sm_first = 0xb79cb8cc,
    m_next = 0xb78fee48, static sm_classTable = 0x98ae3e8}}
__FUNCTION__ = "Notify"
---Type <return> to continue, or q <return> to quit---
#23 0xb769950d in timeout_callback (data=0xa2238a8) at ../src/gtk/timer.cpp:43
No locals.
#24 0xb6a1e2b6 in g_timeout_dispatch (source=0x992bc00, callback=0,
    user_data=0xa2238a8) at /build/buildd/glib2.0-2.20.1/glib/gmain.c:3253
No locals.
#25 0xb6a1db88 in IA__g_main_context_dispatch (context=0x98dbff8)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:1814
No locals.
#26 0xb6a210eb in g_main_context_iterate (context=0x98dbff8, block=1,
    dispatch=1, self=0x98dd570)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2448
max_priority = 0
timeout = 0
some_ready = 1
nfds = 11
allocated_nfds = <value optimized out>
fds = (GPollFD *) 0xa689f68
__PRETTY_FUNCTION__ = "g_main_context_iterate"
#27 0xb6a215ba in IA__g_main_loop_run (loop=0xb404268)
    at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2656
self = (GThread *) 0x98dd570
__PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#28 0xb6e617d9 in IA__gtk_main ()
---Type <return> to continue, or q <return> to quit---
    at /build/buildd/gtk+2.0-2.16.1/gtk/gtkmain.c:1205
tmp_list = (GList *) 0x0
functions = (GList *) 0x0
init = (GtkInitFunction *) 0xb3be0f0
loop = (GMainLoop *) 0xb404268
#29 0xb768f41b in wxEventLoop::Run (this=0xb3be0f0)
    at ../src/gtk/evtloop.cpp:76
exitcode = <value optimized out>
__FUNCTION__ = "Run"
#30 0xb7733b3c in wxAppBase::MainLoop (this=0x98dbe40)
    at ../src/common/appcmn.cpp:312
mainLoop = {<wxEventLoopPtr> = {m_ptr = 0xb3be0f0}, m_pp = 0x98dbe80,
  m_pOld = 0x0}
#31 0xb7733891 in wxAppBase::OnRun (this=0x5) at ../src/common/appcmn.cpp:367
No locals.
#32 0xb74277ca in wxEntry (argc=@0xb75206cc, argv=0x98ca480)
    at ../src/common/init.cpp:460
No locals.
#33 0xb7427887 in wxEntry (argc=@0xbff3dca0, argv=0xbff3dd24)
    at ../src/common/init.cpp:472
No locals.
#34 0x082cba50 in main (argc=0, argv=0x0) at ../../src/amule-gui.cpp:94
No locals.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on May 16, 2009, 08:32:36 PM
You mean out of memory again?
Well, imagine your running at 100km/h off the road. You might hit a tree, you might hit a rock. It's neither the rock's fault nor the tree's - problem is you were running off the road in the first place. And if you hit a barn for a change it's the same, and examining the barn won't get you to the root of the problem either.

To be frank: I doubt aMule has ever been run anywhere at conditions similiar to yours. In theory it should work, but obviously it doesn't. I would have expected it to draw 100% CPU at such
conditions and not reach the possible upload.
Problem is, nobody has an environment to reproduce the problem. The networking code is really complex (Kry will probably laugh at me again), with packets being queued, posted through events, queued again, etc, and in some place something is breaking at the speed you are running it. I doubt it's a memory leak at all - I'd rather guess one of the queues is getting filled until memory runs out.

When the max. connections are set to 200, i dont get above 20 MB/s UL, but that still
(usually) results in high VSZ crashes.
What IS the CPU load in that condition (stable upload of 20MB/s) ? (And what kind of CPU do you have?)
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on May 17, 2009, 07:06:19 PM
You mean out of memory again?

Yes, the VSZ was over 3GB again.

Quote
Well, imagine your running at 100km/h off the road....

Yes, i understand.
However, aMule also keeps crashing while running much, much slower.
Even at an average UL of 2MB, with 50 connections max,
Amule still crashes once in 2 or 3 days.
Also, i guess in the near future everybody will have such fast internet
connections; doesnt it get faster all the time?
And maybe aMule needs to get prepared for that future?

Quote
I'd rather guess one of the queues is getting filled until memory runs out.

That seems logical to me.
And then maybe the sharp increase in VSZ is due to the repeated requests of the queued?
An accumulating effect maybe?
So, maybe the solution might be to slow down / stall the requests of the queued?
So, that there is not such a sharp accumulative effect?
Then aMule can slow down instead of crash, no?

Quote
What IS the CPU load in that condition (stable upload of 20MB/s) ?

There is no stable upload above 1MB/1.5 MB;
The greater the speed, the greater the fluctuations; it bounces up and down,
from max to zero to half-max etc..
But, before aMule crashes, its over 90% (correlating with VSZ, i guess)

Quote
And what kind of CPU do you have?

3GB AMD Phenom QuadCore 9500
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on May 17, 2009, 07:11:42 PM
A while ago, i monitored the VSZ build up right before a crash:

...
this is what i recorded (within 3 minutes!):

$ ps axl | grep amule
Code: [Select]
0  1000  6576  6556  20   0 1516768 1454528 -   Rl+  pts/0    217:28 /usr/bin/amule
0  1000  6576  6556  20   0 1852180 1790016 -   Rl+  pts/0    218:02 /usr/bin/amule
0  1000  6576  6556  20   0 1953028 1890828 -   Rl+  pts/0    218:12 /usr/bin/amule
0  1000  6576  6556  20   0 2005828 1943644 -   Rl+  pts/0    218:17 /usr/bin/amule
0  1000  6576  6556  20   0 2074600 2012388 -   Sl+  pts/0    218:24 /usr/bin/amule
0  1000  6576  6556  20   0 2181124 2118920 -   Rl+  pts/0    218:35 /usr/bin/amule
0  1000  6576  6556  20   0 2237224 2175068 -   Rl+  pts/0    218:41 /usr/bin/amule
0  1000  6576  6556  20   0 2291872 2229732 -   Rl+  pts/0    218:46 /usr/bin/amule
0  1000  6576  6556  20   0 2362096 2295424 -   Rl+  pts/0    218:53 /usr/bin/amule
0  1000  6576  6556  20   0 2471392 2341024 -   Sl+  pts/0    219:04 /usr/bin/amule
0  1000  6576  6556  20   0 2540692 2356620 -   Rl+  pts/0    219:11 /usr/bin/amule
0  1000  6576  6556  20   0 2663716 2416916 -   Rl+  pts/0    219:22 /usr/bin/amule
0  1000  6576  6556  20   0 2781196 2420808 -   Rl+  pts/0    219:33 /usr/bin/amule
0  1000  6576  6556  20   0 2859140 2444392 -   Rl+  pts/0    219:41 /usr/bin/amule
0  1000  6576  6556  20   0 2917508 2468548 -   Rl+  pts/0    219:46 /usr/bin/amule
0  1000  6576  6556  20   0 2965636 2448640 -   Rl+  pts/0    219:51 /usr/bin/amule
0  1000  6576  6556  20   0 3007620 2431868 -   Rl+  pts/0    219:55 /usr/bin/amule
0  1000  6576  6556  20   0 3052676 2477072 -   Rl+  pts/0    219:59 /usr/bin/amule
0  1000  6576  6556  20   0 3108996 2475080 -   Rl+  pts/0    220:05 /usr/bin/amule
0  1000  6576  6556  20   0 3145724 2501608 sync_p Dl+ pts/0  220:08 /usr/bin/amule
0  1000  6576  6556  20   0 3145724 2499884 ptrace Tl pts/0   220:08 /usr/bin/amule

Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on May 17, 2009, 07:19:25 PM
Question was - what is the CPU-Load at high upload rates?
And please consider your quad-core - is one of the cores running aMule at 100% ? Does Linux use multiple cores per app (one per thread) ?

I could try to build a limit into some of the queues and see if that takes care of your memory situation.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on May 17, 2009, 07:54:33 PM
...is one of the cores running aMule at 100% ? Does Linux use multiple cores per app (one per thread) ?

I have no idea...
How can i find out?

Quote
I could try to build a limit into some of the queues and see if that takes care of your memory situation.

Wow, if you could actually do that, it would certainly be worth a try!!!  8)
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: myth on August 07, 2009, 03:01:44 AM
Where do you live to have such a fucking rocking connection?!? I want this, too!
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on September 03, 2009, 07:37:52 PM
Where do you live to have such a fucking rocking connection?!? I want this, too!

Amsterdam, The Netherlands. (UPC " Fiber Power")
Unfortunately, (for obvious reasons) this service seems to have become more popular;
according to my amule stats, my upload capacity has shrunk to 3 MB/s...
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: myth on September 03, 2009, 09:08:27 PM
Well, it's still crazy fast!

I pay about 40 Euros a month to have a 7000/384 Kbit/s line which goes at 2100/330 Kbit/s :(
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on September 04, 2009, 09:31:00 PM
Try for cable networking, that's what I did recently. (If you have cable, that is.)
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: myth on September 05, 2009, 04:38:14 AM
In Italy cable doesn't even exist! :S
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on October 06, 2009, 08:47:32 AM
At least some people in Spain (of the eMuleteca HDGroup) have the same bandwith;
they uploaded to me with speeds of over 1MB / s (each!), and vice versa.
Ive also met a few very fast russians...
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on October 06, 2009, 09:35:01 PM
At least some people in Spain (of the eMuleteca HDGroup) have the same bandwith;
they uploaded to me with speeds of over 1MB / s (each!), and vice versa.
Ive also met a few very fast russians...
Hey RRM, how is your problem with aMule going?

I tried to reproduce it, but unfortunately I don't have available ATM such a bandwidth. Also I tried to add debug hooks to the internal structure, but it is too messy ATM to be realiable.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on October 07, 2009, 11:15:49 AM
Heeey Bill, nice to 'see' you.
Unfortunately, the crashing / freezing issue is still the same (about once a day)
, regardless of versions (currently a fresh Jaunty and 2.2.5) and configurations.

Quote
Also I tried to add debug hooks to the internal structure, but it is too messy ATM to be realiable.

Thank you for trying. You think it isnt worth a shot to try it out on my system?
Or how about a little program that restarts aMule every time it crashes?
(When aMule crashes while im at work, i cannot restart it manually,
which means no uploading at all, and thats a waste of bandwidth, no?)
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on October 11, 2009, 05:26:38 PM
Wow...  ::)
By accident i found a solution for my issue with aMule crashing daily (due to overload).
Until now, i always tried to prevent overload by restricting the max number of connections,
so that i could still utilize my total upload capacity (i dont want to restrict that).
When I replaced some of my most popular files for uploading with newer versions
(containing audio in extra languages), i stopped restricting the maximum number of
connections (because there was less demand for a slot anyway).
And since i never reached the max connection limit anymore, aMule doesnt crash anymore!!!

Apparently, keeping the number of connections below a certain level is (almost) as much a strain
on the system as allowing more connections. (in as much as putting a download on pause doesnt
seem to help either; somehow its potential activity is still being processed, though not actualized)
To me this makes sense, as continuously refusing those extra slots means that they still need to
be 'processed' (as in 'analyzed' / 'counted' and 'refused'), and still are "connections" in some way.
So, when there is simply less demand for a slot, the load is smaller than when extra slots need to
be refused (on top of that same number of slots).

How to reduce the demand for slots?
Not in the "preferences" section, but by keeping all the rare files and deleting one or more
of the most popular shared file(s); as many as required to adequately reduce the demand for slots.

AMule used to crash daily (at least once a day), but since the reduction in demand for slots,
aMule does not crash anymore, despite the fact that both the average upload rate and the
number of actual slots are higher than before...   8)
Only because aMule no longer has to deal with any extra demand for slots...  ;D ;D ;D

'The bouncher can sit on his ass now, because he no longer has to make people wait;
he just lets everybody in, so that there is never a line at the door,
whereas its always very busy but yet never too crowded inside
'.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on October 13, 2009, 10:25:16 AM
woohaa!!!
It really works... aMule has still not crashed
and it has been 5 days and 3.48 hours now...  8)
No  more glib warnings etc; nothing...
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on October 14, 2009, 12:14:07 AM
Sorry, I'm not fully getting you.  ???
You have an upload bandwidth set and a slot allocation. So while there is demand, number of slots is bandwidth/slot allocation.
If there's less demand (queue empty), there are less slots and they get more bandwidth each.
So, your point is, you now have more slots with less bandwidth each and that's what prevents the crashes?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on October 14, 2009, 02:03:29 PM
Well, actually, my queue is (and was) almost always empty ("clients on queue"=0);
only when someone has downloaded the 10MB, he may go into the queue
for a second, before reappearing in the list of current downloaders.
And yet, there are always plenty of downloaders that have waited several minutes or
several hours before they were allocated a slot.
So, there are no people waiting, and yet they wait for minutes / hours???

Quote
So, your point is, you now have more slots with less bandwidth each and that's what prevents the crashes?

No, they each get about the same bandwidth as before; more slots + more bandwidth.
However, they dont wait that long anymore; id say their waiting time has reduced by 50 to 75%
("waited" in my uploads list)
So, the queue that is supposed to have never been there ("clients on queue"=0)
is much smaller now (individual waiting times have reduced drastically), coz i deleted
a few popular shared files. 
What prevents the crashes, in my view, is that the system has to deal with less clients waiting.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on October 14, 2009, 04:46:51 PM
You have an upload bandwidth set

I have not set a limit to that; its only limited by how much bandwidth is available
(for example: more bandwidth available in the middle of the night)

The reason why both bandwidth and slots have increased (not much, btw) is because aMule is
much more stable now; number of connections, uploads and downloads used to go up and down
like crazy all the time, because of 'small freezings' (a big freezing usually led to a crash).
So that now i can finally utilize the bandwidth available due to a lack of such 'corrections'.

Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on October 14, 2009, 10:07:42 PM
What's your setting for slot allocation? Also 0 ?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on October 15, 2009, 06:06:26 PM
What's your setting for slot allocation? Also 0 ?

Ehrr, no... Thats not possible somehow.
Mine is set at 1 kB/s.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: GonoszTopi on October 15, 2009, 08:31:25 PM
Thats not possible somehow.
That's intentional.

Mine is set at 1 kB/s.
If you can reliably upload at high speeds I'd suggest setting it to some higher value (10k, 100k, 1M, something). If you're uploading at 2MB/s you actually might be uploading to 2048 clients simultaneously, at 1kB/s each.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on October 15, 2009, 09:31:22 PM
Mine is set at 1 kB/s.
If you can reliably upload at high speeds I'd suggest setting it to some higher value (10k, 100k, 1M, something). If you're uploading at 2MB/s you actually might be uploading to 2048 clients simultaneously, at 1kB/s each.
Does this setting make sense when you don't have an upload limit? (like in RRM case)

Regards
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: GonoszTopi on October 16, 2009, 10:19:12 AM
Yes, it does. In this case the maximum number of slots is determined from the upload speed, not from the upload limit.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on October 16, 2009, 06:01:10 PM
In this case the maximum number of slots is determined from the upload speed, not from the upload limit.

But it is still determined by aMule, who needs to select the candidate downloaders.
The only difference is that the downloaders are selected on different paramters. No?
When aMule has to do that selecting, my system crashes daily.
When the demand (number of candidates)  is simply reduced (by deleting popular files for uploading),
the system does not crash, even though actual number of slots and total uploading is not reduced.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on October 16, 2009, 09:38:23 PM
What is the number of download slots you are getting? And what speed does each of them have?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on October 16, 2009, 10:16:03 PM
Right now thats 244 slots
Their download speed varies greatly; currently from 0 to 150 kbps
It seems to me that the slow downloaders are about
equally represented as the fast downloaders
Sometimes there is somebody who downloads very fast (like 300 kbps to 2 MBps)
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on October 16, 2009, 10:20:25 PM
Its hard to keep track of individual speeds
as it changes constantly
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on October 16, 2009, 11:14:45 PM
With slot allocation still at 1k/s ?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on October 17, 2009, 06:49:16 AM
yes, because aMule doesnt crash anymore.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on October 20, 2009, 12:24:03 PM
So, how about that queue that is not supposed to be there? (queue=0)
Some downloaders waited for hours (aMule>Uploads>Waited)
How is that possible?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on October 20, 2009, 09:11:12 PM
I'll have to review the code when I have time for it. You are running a very strange configuration, mind.
My guess is you are allocating unlimited slots, but allocation actually fails because you run out of TCP sockets.
Try to limit upload bandwidth at something matching your bandwidth (with a reserve), and slot allocation so you get, say, 20 upload slots. Let's see what happens then.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on October 22, 2009, 06:52:12 AM
This is weird... I just noticed that right now everybody waited for either
1 or 2 seconds. And there is always 1 client waiting in queue,
except when someone gets to the max 10MB, then its temporary (1 or 2 secs)
2 or even 3 clients waiting in queue, and then 1 again.
So, where before it was always 0, with 1 or 2 max temporary (1 or 2 secs)
its now always 1, with 2 or 3 max temporary (1 or 2 secs).
The difference: the maximum waiting time is now 2 secs (instead of hours)

Let me check whether this will last.
After that i will do what you told me.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on October 22, 2009, 06:40:05 PM
Coming home from work, the queue is empty again (clients in queue=o)
and yet the waiting time is still 1 to 2 secs.
So, my hypothesis for this is:
It took some time before the "queue that isnt supposed to be there" (the TCP sockets-queue?)
had dissolved, which seems logical to me, because even when you start
letting everybody in (with limited demand), it will take some time
before there is no (TCP sockets-)queue anymore...

But then again... why did aMule constantly list 1 client in queue this morning?
Does it still make sense to try this?
Quote
Try to limit upload bandwidth at something matching your bandwidth  (with a reserve)
, and slot allocation so you get, say, 20 upload slots. Let's see what happens then.

Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on October 22, 2009, 07:34:47 PM
Definitely.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on October 22, 2009, 07:42:53 PM
OK, i changed my settings:
Max. upload bandtwith: 3000 kbps
max. connections: 20

What happens next (right away) is REALLY weird.
- I suddenly notice downloaders that 'have waited' many hours (even 20 hours!). Most 'have waited' 20 to 45 minutes.
- Clients in queue remains 0, even though that the number of connections decreases gradually (due to new settings)
- The faster clients immediately get re-allocated a new slot once they've downloaded their 10MB
(even though they 'dont have credit') and yet their 'waiting time' has increased by a minute or 2!!!
This is no incident, it happens with almost every 'immediately re-allocated client', though not all... (some go from minutes to 2 secs)
So, now we know how they get that 'waiting time' (while downloading!!!)
....
- In the end (when total clients is actually 20), continuously the same fast downloaders get re-allocated immediately,
as if no other downloaders exist ... (clients in queue is still 0!!!)

Not weird:
- The download speed per client went up drastically (total bandtwith utilized remained the same)
...
....
Going back to my normal setting (no upload limit, no connections limit)
I notice a downloader that has 'waited for 2 days and 2 hours').
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on October 23, 2009, 06:39:46 PM
One day later.
Settings: no limits.
Clients in queue is still 0, but 'waiting times' are also mostly still
minutes to hours. About 1/3 has a waiting time of 1 to 3 secs.

All downloaders get slot re-allocation, but:
For some, their 'waiting time' is (upon reallocation) reduced to 1 to 3 secs.
For most, their 'waiting time' is increased with the time that they just spend downloading.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on October 25, 2009, 09:59:17 AM
Maybe I didn't make myself clear...
Leave your "max simultaneous connections" at what they were (500 - or what did you have there?).
Limit your upload to 3000 kB/s if your connection can handle it. (And please notice - kB stands for kilobyte,  kb for kilobit.)
Set your Slot Allocation to 150 kB/s which will result in 20 upload slots.

I'd like to see if aMule performs well with sensible settings.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on October 26, 2009, 05:19:21 PM
Thank you. Sorry, i misunderstood.
New settings:
max connections: 2000
upload limit: 3000 kB/s
Slot allocation: 100 kB/s - I tried 150 kB/s, but aMule changes that to 100 kB/s

The number of clients in queue almost immediately goes up (from 0)
to 20, 30, 50 etc.
However, the total upload speed goes drastically down as well.
Somehow, everybody seems to get eliminated step by step,
as the average upload speed doesnt go up; even down...
The latter is because the fastest downloaders (over 100 kB/s) get eliminated first,
as they are done the soonest with their 10MB, and nobody gets reallocated.

Ultimately, they are all gone...
No more downloaders...
So, im changing back my settings, naturally.

I always though that slot allocation means that this is the miminum download speed
for potential downloaders. And nobody starts downloading at a speed of 100 kB/s,
so that naturally, nobody can get over that threshold.
right?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on October 26, 2009, 10:37:35 PM
No more downloaders - but still people on queue ?  ???
How many downloaders were there at maximum?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on October 27, 2009, 09:31:12 AM
No more downloaders - but still people on queue ?  ???

Yes, everybody that was downloading under the 1 kB/s slot allocation settings, was apparently
moved to the clients in queue when the treshold (slot allocation) became 100 kB/s.
Once i changed my settings back, they gradually all moved back from the queue to downloading.

Quote
How many downloaders were there at maximum?

Before i changed the settings (so when it was still 1 kB/s slot allocation), there were about
270 downloaders.
Right after i changed the slot allocation to 100 kB/s, that number went down, and kept on going down,
and equally fast, the number of clients in queue went up, and kept going up till all downloaders were
gone (clients in queue went from 0 to 273 eventually; downloaders went from 270 to 0)
Right now clients in queue is 0 again, and 256 downloaders.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on October 27, 2009, 10:15:14 AM
According to the dictionary, allocation means:
allotment, apportioning, apportionment, assignation, parceling

So, yes, when slot allocation is set at 100 kB/s, its logical to expect that aMule will
divide the available upload bandwith, 3000 kB/s, over 30 downloaders. As in:
"the apportionment is 100 kB/s each"

However, it also means "assignation", so that the connection needs to be
100 kB/s already BEFORE you are allocated/assigned a slot. And, that, of course, never is the case
(because you use the bandwith required, which is not much for communication only).

I suspect that "slot allocation" in aMule means the latter.
Hence no more downloaders when slot allocation is set at 100 kB/s.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on October 27, 2009, 10:47:30 PM
Oh please...
Most of us are not native English speakers, and we don't have a dictionary or thesaurus open when we label our dialogs. Your conclusion is wrong. Nobody gets kicked for downloading too slowly, except if he drops below measurable speed or spends his time limit.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on October 28, 2009, 08:32:54 AM
Okay. Im just trying to find an explanation for what happened.
So, its the former then.
But why then do also the fastest downloaders, who download way
faster than 100 kB/s get kicked off?
What happens if you, on your system set slot allocation to 100 kB/s?
(or 50 kB/s or 25 kB/s)
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on October 31, 2009, 06:13:14 PM
Even when i set slot allocation to only 10 kB/s,
eventually all downloaders are eliminated.
Down to 7 kB/s seems to be a safe setting; that allows
full bandwith utilization.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on November 01, 2009, 12:56:57 PM
Like 1k/s it will result in 250 upload slots because that's the maximum number.  :)
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on November 01, 2009, 07:58:12 PM
But why then are all downloaders eliminated
when slot allocation is set at 10 kB/s or higher???
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on November 01, 2009, 09:05:43 PM
And why does the "waited" time (aMule>uploads>waited)
very often include time not spend waiting but downloading?
(maximum of 3 secs in between re-allocation = "waited" for minutes/hours))
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on November 07, 2009, 10:49:29 PM
I'm transferring now an 8GB file from my Windows client to my Linux client (in my Virtual box VM). Speed is 500-700 k/s, which is disappointing. I'll set up a transfer between two real machines for comparison.
What I noted:
- Speed is much worse with upload speed == 0 , so better set a real value
- Currently it's transferred 2.9 GB, all on the same slot.
- Current SVN will crash with memory exhaustion when it will reach 4GB, fix is on the way. Problem was introduced when we changed the upload queue so clients don't get disconnected unless necessary. Your memory crashes were there before the change was introduced IIRC, so I don't think that's the problem.
Hey, I thought this text was lost when DumbFox just crashed - but it could restore it.  :)

I'll run more tests.

Edit:
Hey, the Waited is screwed. I just paused/resumed my download, and on the uploading client it says "Waited 2:17 hours".
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on November 08, 2009, 05:14:52 AM
Hey, the Waited is screwed. I just paused/resumed my download, and on the uploading client it says "Waited 2:17 hours".

Good job, Stu. There's clearly a bug here, let's hope it can be fixed.

BTW, what is your setup for reproducing?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on November 08, 2009, 10:18:27 PM
"Waited" should be fixed in 9862.
I did several slight changes/fixes in the upload so please retry SVN 9866.

Current SVN will crash with memory exhaustion when it will reach 4GB
That was overly pessimistic - the payload counter overflowed, but it still can't prepare more than asked for. Raised it to 64 bit though (it gets displayed after all).

Setup is simple. Upload limit to something sensible, NOT zero. I couldn't test slot behavior having only one downloading client. But upload speed doesn't get limited to the slot allocation speed, so much is sure. And my client gets upload tirelessly, without disconnect/requeue even.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on November 08, 2009, 11:17:34 PM
BTW, what is your setup for reproducing?
Well - I'd suggest a bed...  ;D
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: GonoszTopi on November 09, 2009, 09:12:39 AM
ROFL
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on November 10, 2009, 10:35:13 AM
Wow... Impressing and interesting!  8)

Quote from: Stu Redman
Upload limit to something sensible, NOT zero.

Ok. I'll set upload limit to 3000 kB/s again.

As some of my upload files have become increasingly popular again,
aMule has started crashing again; i experienced 3 crashes in the last 5 days.
So, I falsely attributed the absence of crashes to setting no connection limit.
aMule simply crashes when it gets too busy, so that eliminating popular files
previously solved the issue of crashes.

Quote from: Stu Redman
my client gets upload tirelessly, without disconnect/requeue even

Yes, i regularly (continuously for a day or more) experienced that in the past,
(all my clients got upload tirelessly, without disconnect/requeue)
but this has not happened for over half a year now.
Maybe this only happens in certain conditions; for example: when the (remaining) download capacity of all
clients combined is smaller than my total upload capacity. (im just wildly speculating, of course)

Quote from: Stu Redman
I did several slight changes/fixes in the upload so please retry SVN 9866

Thank you.
Currently im using the Ubuntu 9.10 (Karmic Koala) distro's aMule 2.2.6
Can i still start using the SVN 9866?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on November 10, 2009, 04:35:45 PM
Quote from: Stu Redman
Hey, the Waited is screwed. I just paused/resumed my download, and on the uploading client it says "Waited 2:17 hours".

Yes, the 2:17 is the time you previously spend downloading (at least in my case it is)
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on November 10, 2009, 07:48:05 PM
Can i still start using the SVN 9866?
Sure, that's what I'm suggesting. (I won't investigate that problem with 2.2 anymore.)
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on November 11, 2009, 08:37:12 AM
Ehhrr, im too stupid to compile 9866 myself,
so i will have to wait for Festor's Karmic builds...
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on November 11, 2009, 09:35:35 AM
By the way:
If aMule is already quite busy, and if i then start downloading
from usenet (with incredible speed) or copy large files from one
disk to another, aMule mostly crashes.
So, maybe a high VSZ issue after all?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on November 12, 2009, 01:30:10 AM
If aMule is already quite busy, and if i then start downloading
from usenet (with incredible speed) or copy large files from one
disk to another, aMule mostly crashes.
So, maybe a high VSZ issue after all?
High VSZ should be a side-effect of the bug. It seems an internal queue gets filled at a bigger rate than it can be consumed. That shouldn't happen.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on November 14, 2009, 07:43:41 PM
Thank you, i understand; the high VSZ is just a symptom.

Remarkably, the inclusion of download time in "waited", may eventually
disappear when aMule has run uninterupted for some time.
Now (after 1.5 days of uptime) all clients have "waited" for 3 secs maximally.
I guess this depends on the conditions (how many uploads and downloads).

Ha ha :) , right after i wrote this, i checked the 'waited' list again,
and guess what: now half the same clients have 'waited' for multiple seconds (the fast ones), minutes
and even hours (a slow downloader)...
 ::)
Let me just say that there seems to be a fluctuation...
Something sets it off, and it doesnt happen all the time.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on November 15, 2009, 09:23:28 PM
9866 or older ?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on November 16, 2009, 09:07:01 PM
9866 or older ?

huh? I dont understand...
You wrote:

"Waited" should be fixed in 9862.
I did several slight changes/fixes in the upload so please retry SVN 9866.

And i just want to follow your advice, so, i have to retry 9866, no?
or 9862?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on November 16, 2009, 10:42:51 PM
You posted you'd wait for a build, then posted some results, and I wanted to know from which version they were.
I've made several changes, "waited" in 9862 is only one of them. So please try 9866 or later.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on November 17, 2009, 11:35:21 AM
Im sorry for that. Im still waiting for the 9866 build.
Thank you.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 11, 2009, 06:36:44 PM
Thanks to Festor's fantastic work, i've just installed SVN 9900.
I think its a good idea that the downloaders get to keep their slot;
that they dont have to reallocate after every 10MB downloaded,
which already makes a difference, i guess (a lot less reallocation).
Logically, everybody 'waited' for 0 secs. (nobody gets reallocated)
Up till now aMule crashed about once a day, so lets see what happens...
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 11, 2009, 09:56:36 PM
Yes, the "waited" definitely has been fixed:
After 2 to 3 hours of continuous donwloading, a couple of clients got disconnected
and subsequently reallocated, and yet everybody's "waited" time is still/again 0 secs.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 12, 2009, 06:53:46 PM
After over 24 hours no crash yet,
so i'm going to add back in an extra popular file for uploading.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 13, 2009, 06:49:00 AM
Program received signal SIGABRT, Aborted.
0x00526422 in __kernel_vsyscall ()

$ ps axl | grep amule
Code: [Select]
0  1000  2513  2494  20   0  37232  7296 poll_s S+   pts/0      0:00 gdb amule
0  1000  2515  2513  20   0 3145724 2022868 ptrace Tl pts/0   1200:29 /usr/bin/amule
0  1000  5089  5070  20   0   3036   792 pipe_w S+   pts/1      0:00 grep amule
(gdb) bt full
Code: [Select]
#0  0x00526422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x003374d1 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0x0033a932 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0x08391215 in ?? ()
No symbol table info available.
#4  0x002af415 in ?? () from /usr/lib/libstdc++.so.6
No symbol table info available.
#5  0x002af452 in std::terminate() () from /usr/lib/libstdc++.so.6
No symbol table info available.
#6  0x002af591 in __cxa_throw () from /usr/lib/libstdc++.so.6
No symbol table info available.
#7  0x002afc0f in operator new(unsigned int) () from /usr/lib/libstdc++.so.6
No symbol table info available.
#8  0x00ad8463 in wxObjectList::CreateNode(wxNodeBase*, wxNodeBase*, void*, wxListKey const&) () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#9  0x00aead4b in wxListBase::Append(void*) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#10 0x00b448e0 in wxEvtHandler::AddPendingEvent(wxEvent&) ()
---Type <return> to continue, or q <return> to quit---
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#11 0x00957920 in wxSocketBase::OnRequest(wxSocketNotify) ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#12 0x00957a14 in wx_socket_callback () from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#13 0x0095ca8b in GSocket::Detected_Write() ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#14 0x01516427 in ?? () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#15 0x00580f7c in ?? () from /usr/lib/libgdk-x11-2.0.so.0
No symbol table info available.
#16 0x009f8d5b in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#17 0x009c1e78 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
No symbol table info available.
#18 0x009c5720 in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#19 0x009c5b8f in g_main_loop_run () from /lib/libglib-2.0.so.0
No symbol table info available.
#20 0x01958419 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#21 0x01514c78 in wxEventLoop::Run() () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#22 0x015a7e3e in wxAppBase::MainLoop() ()
   from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#23 0x015a7a31 in wxAppBase::OnRun() () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#24 0x00adf7aa in wxEntry(int&, wchar_t**) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#25 0x00adf987 in wxEntry(int&, char**) () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#26 0x08272d19 in ?? ()
No symbol table info available.
#27 0x00323b56 in __libc_start_main () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#28 0x08086761 in ?? ()
No symbol table info available.

(gdb) thread apply all bt full
Code: [Select]
Thread 6 (Thread 0xb4ffcb70 (LWP 2532)):
#0  0x00526422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x0089c829 in __lll_lock_wait () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0x00897f3b in _L_lock_752 () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#3  0x00897d51 in pthread_mutex_lock () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#4  0x00b41d1d in wxMutexInternal::Lock() () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#5  0x00b41d68 in wxMutex::Lock() () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#6  0x00b448c2 in wxEvtHandler::AddPendingEvent(wxEvent&) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#7  0x0817d904 in ?? ()
No symbol table info available.
#8  0x0838e78c in ?? ()
No symbol table info available.
#9  0x00b43a98 in wxThreadInternal::PthreadStart(wxThread*) ()
   from /usr/lib/libwx_baseu-2.8.so.0
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#10 0x00b43afd in wxPthreadStart () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#11 0x0089580e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#12 0x003d97ee in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 3 (Thread 0xb67ffb70 (LWP 2529)):
#0  0x00526422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x0089d466 in nanosleep () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0x00b493b8 in wxMicroSleep(unsigned long) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#3  0x00b493e1 in wxMilliSleep(unsigned long) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#4  0x00b4169d in wxThread::Sleep(unsigned long) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#5  0x081ddf78 in ?? ()
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#6  0x00b43a98 in wxThreadInternal::PthreadStart(wxThread*) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#7  0x00b43afd in wxPthreadStart () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#8  0x0089580e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#9  0x003d97ee in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 1 (Thread 0xb7fdf760 (LWP 2515)):
#0  0x00526422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x003374d1 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0x0033a932 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0x08391215 in ?? ()
No symbol table info available.
#4  0x002af415 in ?? () from /usr/lib/libstdc++.so.6
No symbol table info available.
#5  0x002af452 in std::terminate() () from /usr/lib/libstdc++.so.6
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#6  0x002af591 in __cxa_throw () from /usr/lib/libstdc++.so.6
No symbol table info available.
#7  0x002afc0f in operator new(unsigned int) () from /usr/lib/libstdc++.so.6
No symbol table info available.
#8  0x00ad8463 in wxObjectList::CreateNode(wxNodeBase*, wxNodeBase*, void*, wxListKey const&) () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#9  0x00aead4b in wxListBase::Append(void*) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#10 0x00b448e0 in wxEvtHandler::AddPendingEvent(wxEvent&) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#11 0x00957920 in wxSocketBase::OnRequest(wxSocketNotify) ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#12 0x00957a14 in wx_socket_callback () from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#13 0x0095ca8b in GSocket::Detected_Write() ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#14 0x01516427 in ?? () from /usr/lib/libwx_gtk2u_core-2.8.so.0
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#15 0x00580f7c in ?? () from /usr/lib/libgdk-x11-2.0.so.0
No symbol table info available.
#16 0x009f8d5b in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#17 0x009c1e78 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
No symbol table info available.
#18 0x009c5720 in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#19 0x009c5b8f in g_main_loop_run () from /lib/libglib-2.0.so.0
No symbol table info available.
#20 0x01958419 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#21 0x01514c78 in wxEventLoop::Run() () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#22 0x015a7e3e in wxAppBase::MainLoop() ()
   from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#23 0x015a7a31 in wxAppBase::OnRun() () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#24 0x00adf7aa in wxEntry(int&, wchar_t**) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#25 0x00adf987 in wxEntry(int&, char**) () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#26 0x08272d19 in ?? ()
No symbol table info available.
#27 0x00323b56 in __libc_start_main () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#28 0x08086761 in ?? ()
No symbol table info available.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on December 13, 2009, 01:19:23 PM
The well known memory exhaustion. I didn't fix anything directly related to this so I'm not surprised.  :(
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 13, 2009, 06:35:30 PM
Ah, okay.
I just hoped that the memory exhaustion had something to do
with unnecessary re- and reallocation....
but unfortunately, no.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on December 13, 2009, 08:01:24 PM
Can you try to compile aMule from source? I have an idea I'd like to try out.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on December 13, 2009, 08:50:13 PM
Dear RRM, this is how I compile amule from source:

Code: [Select]
# First uninstall amule and make sure the following packages are installed:
$ sudo aptitude purge amule
$ sudo aptitude install libwxgtk2.8-dev libgeoip-dev build-essential stow
$ # Move to a temporary directory
$ mkdir ~/tmp && cd ~/tmp
$ git clone git://repo.or.cz/amule.git
$ cd amule
$ # See below for different options about configure, now assume opt-config
$ ./configure --prefix=/usr/local/stow/amule-opt/ --enable-geoip --enable-optimize --disable-debug --mandir=/share/bin
$ make -j 2 && sudo make install
$ cd /usr/local/stow
$ sudo stow amule-opt

Note that in the configure line you may use different options. You are mainly interested in

Stow is used to be able to have several installs of amule. Using stow and stow -D you can easily use one or another. Don't forget to change the directory in --prefix!
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 13, 2009, 09:03:31 PM
Can you try to compile aMule from source? I have an idea I'd like to try out.

I like trying out new ideas.
And yes, i can try, of course, but i will be needing your help.

Dear RRM, this is how I compile amule from source:

OK, I will follow your instructions, but right now i got to go to sleep
(got to get up early tomorrow).
With the combined help of both Stu and Bill, i will definitely give it a try.
I will start tomorrow after work.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on December 13, 2009, 09:32:03 PM
Here is the modified file I'd like you to try.
And always use --enable-optimize !
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: wuischke on December 13, 2009, 09:36:05 PM
Just a question:
Quote
And always use --enable-optimize !
Doesn't this interfere with debugging?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on December 13, 2009, 11:36:41 PM
Only a little. Some variables might get optimized away, execution order juggled a little, such things that mainly count if you plan to single-step through the program.
On the other hand, I suspect RRM is running his machine at the limit at his enormous upload speed, and compilation without optimize will be counter-productive here.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on December 14, 2009, 02:40:34 AM
Only a little. Some variables might get optimized away, execution order juggled a little, such things that mainly count if you plan to single-step through the program.
On the other hand, I suspect RRM is running his machine at the limit at his enormous upload speed, and compilation without optimize will be counter-productive here.

That's the key, in this case we'd ideally like to run amule as close as possible as the stock packages, that is to say, with optimizations enabled.

In general, I've been able to debug amule always with --enable-optimize enabled, so it is better to start with it.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on December 14, 2009, 02:47:10 AM
Here is the modified file I'd like you to try.
So the patch is:
Code: [Select]
--- amule.cpp 2009-12-11 01:53:56.941082794 +0100
+++ amule.cpp.new 2009-12-14 02:41:04.058052812 +0100
@@ -1145,6 +1145,12 @@
  }
 #endif
 
+ static bool recurse = false;
+ if (recurse) {
+ return;
+ }
+ recurse = true;
+
  uploadqueue->Process();
  downloadqueue->Process();
  //theApp->clientcredits->Process();
@@ -1232,6 +1238,7 @@
  // Recomended by lugdunummaster himself - from emule 0.30c
  serverconnect->KeepConnectionAlive();
 
+ recurse = false;
 }

Umm, good idea to try, let's see what happens with the patch.

In my humble opinion this bug has to do with some consumer/producer misbehavior in aMule's code, that is to say, more is produced and queued than it is possible to consume.

Ideally we should log all events and queues and see which is the one going crazy, but I couldn't make sense of aMule's event flow yet. Maybe we should rewrite it, but we'd land too far away from eMule's codebase, and I don't know if this is a wise decision.

Another option would be to limit all queuing structures.

This is a hard bug to track :(
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on December 14, 2009, 08:03:29 PM
It's rather some unexpected (at least by me) behavior of wx. I'll explain if this has an effect.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 14, 2009, 08:19:05 PM
Quote from: btkaos
First uninstall amule

To migrate the files that i'm downloading, known clients etc etc
into the new aMule, can i simply copy all the old .dat .met and .conf files
and the Incoming and Temp folders, and then paste them into the new aMule folder?

Quote from: btkaos
Don't forget to change the directory in --prefix!

What directory?

Quote from: Stu Redman
Here is the modified file I'd like you to try.

Sure, i will, but... how?
where does it come in in btkaos' instructions?

Here is the modified file I'd like you to try.
So the patch is:
Code: [Select]
--- amule.cpp 2009-12-11 01:53:56.941082794 +0100
+++ amule.cpp.new 2009-12-14 02:41:04.058052812 +0100
@@ -1145,6 +1145,12 @@
  }
 #endif
 
+ static bool recurse = false;
+ if (recurse) {
+ return;
+ }
+ recurse = true;
+
  uploadqueue->Process();
  downloadqueue->Process();
  //theApp->clientcredits->Process();
@@ -1232,6 +1238,7 @@
  // Recomended by lugdunummaster himself - from emule 0.30c
  serverconnect->KeepConnectionAlive();
 
+ recurse = false;
 }

Huh?
What does that mean???
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: wuischke on December 14, 2009, 09:00:06 PM
There's no reason to change any data files (.met, .conf,...), they won't be affected when you uninstall aMule. (All data files are on the hidden directory .aMule in your home folder.) The same applies for the Temp and Incoming folders.

The --prefix is inside the command below, in this case "/usr/local/stow/amule-opt/". The first time you compile manually, you won't have to change anything. Only if you want to have more than one aMule installed, you chose a different folder here, for instance --prefix=/usr/local/stow/amule-debug/.
Quote
$ ./configure --prefix=/usr/local/stow/amule-opt/ --enable-geoip --enable-optimize --disable-debug --mandir=/share/bin

The file aMule gave you, has to be copied in the folder 'src' inside the aMule source code directory. (If you follow btkaos' instructions, that's ~/tmp/amule, where ~ is your home folder.)

Do this before you execute "make". (Oh, "make -j2" is for a dual core processor.)

A patch is a change of two files. Do you see the lines starting with a '+'? Those lines have been added with the patch. If you meant what the contents mean: That's a part of the source code, which processes the upload and download queue. The newly added lines make sure it's not executed in a wrong way by executing itself.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on December 14, 2009, 09:12:18 PM
Quote from: btkaos
First uninstall amule

To migrate the files that i'm downloading, known clients etc etc
into the new aMule, can i simply copy all the old .dat .met and .conf files
and the Incoming and Temp folders, and then paste them into the new aMule folder?
Don't worry, those directories are configuration parameters and should be preserved, we are only modifying the binaries.
Quote
Quote from: btkaos
Don't forget to change the directory in --prefix!

What directory?

When you call configure, the --prefix parameter sets the install directory. That is to say, if you use --prefix=/usr/local/stow/amule-2 amule will be installed in that directory.

Using this parameter in combination with stow (a local package manager) you can install several versions of aMule (in /usr/local/stow/amule-stu, etc...) and change which one is used with stow. This is really useful in order quickly test different builds of aMule.

Quote
Quote from: Stu Redman
Here is the modified file I'd like you to try.

Sure, i will, but... how?
where does it come in in btkaos' instructions?

Just before configure replace the src/amule.cpp with the one provided by STU.

RRM, your bug will be very hard to track, but once you know how to compile aMule, STU will be able to test possible fixes in a quick way.

Just a note, once you have compiled aMule for the first time, you don't need to perform the whole process. Imagine STU sends you some changes, then you substitute the corresponding files and just execute:
Code: [Select]
$ make
$ sudo make install

And voilà, you have a new aMule. Of course if you want to change the install location you need to call configure again, only that.

Another trick is to upgrade current aMule. To do that go to the tmp directory and use
Code: [Select]
$ git pull
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on December 14, 2009, 09:47:28 PM
Plan B:
I have uploaded a aMule binary for you at http://www.megaupload.com/?d=KPDJLN25
(Just try it a few times if it says "not available".)
Unpack it with gzip -d amule.gz
fix permissions with chmod 755 amule
and run it with ./amule
It's a bit largish because it's linked static and with debug infos. It's built on Ubuntu Karmic 64 - that's your platform, right?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 15, 2009, 09:32:07 AM
Plan B:

Thanks. I will give it a try as plan B, right?

Quote
It's built on Ubuntu Karmic 64 - that's your platform, right?

Sorry for the confusion i caused by posting all this in a 64 thread,
which i initially did by responding to someone who thought he had a
quick fix for the crashing issue.(1st page of this thread)
I have Ubuntu Karmic running on 32 bits.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 15, 2009, 11:24:57 AM
Thank you very much for all your help
still, im getting dizzy of reading all kind of info that i dont understand...
so let me try to get things straight, before i mess up everything.
Should i wait for a new amule.cpp as my system is 32 bits, and not 64?
Is this what i should do:

1. I uninstall aMule by removing it in the Ubuntu Software Center

2. I type the following commands in a terminal window:
Code: [Select]
$ sudo aptitude purge amule
$ sudo aptitude install libwxgtk2.8-dev libgeoip-dev build-essential stow
$ mkdir ~/tmp && cd ~/tmp
$ git clone git://repo.or.cz/amule.git
$ cd amule

3. I download the modified file (amule.cpp) that Stu gave me.

4. I delete the amule.cpp in ~/tmp/amule/src/
and replace it with the downloaded amule.cpp
But: I cannot find the temp folder in my home folder...?
Or will it only be there once ive done this:
Code: [Select]
$ mkdir ~/tmp && cd ~/tmp?

5.
Code: [Select]
$ ./configure --prefix=/usr/local/stow/amule-opt/ --enable-geoip --enable-optimize --enable-debug --with-wxdebug --mandir=/share/bin
(because i have to enable both optimize and debug, because they dont interfere, right?)

6.
Code: [Select]
$ make -j 2 && sudo make install
$ cd /usr/local/stow
$ sudo stow amule-opt
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: wuischke on December 15, 2009, 12:03:55 PM
You are correct with your steps and as you suspected, the tmp-directory in your home folder will be created in step 2. That's what the following command (mkdir = make directory; cd = change directory) does:
Quote
$ mkdir ~/tmp

The cpp-file is the same for 32 bit and 64 bit, but the resulting binary is different on a 32 bit and a 64 bit system.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 15, 2009, 12:06:00 PM
Thank you!
So, i can use that cpp file now.
Ok, let me try then...
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 15, 2009, 12:20:39 PM
At step 5 i get the following response:
Code: [Select]
checking for zlib >= 1.1.4... no
configure: error: zlib >= 1.1.4 is required for aMule

how do i get zlib 1.1.4?
In the synaptic packet manager i only see
Code: [Select]
zlib1g
zlib1g-dbg
zlib1g-dev
zlib-bin
zlibc
zlib-gst

Is this one ok?
http://www.tucows.com/preview/8818

And how to install it?
Like this? (http://"http://quox.org/install/archiver/zlib-1.1.4.html")
Code: [Select]
 % bzcat ${archive}/zlib-1.1.4.tar.bz2 | tar xvf -
  % cd zlib-1.1.4
  % ./configure --prefix=${prefix} (add "--shared" to make shared-library)
  % make
  # mkdir ${prefix}
  # make install

But, what is the "%" and "#"?
I couldnt find them in UsingThe Terminal (http://"https://help.ubuntu.com/community/UsingTheTerminal)

Once i have it, should i repeat step 5?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 15, 2009, 12:58:16 PM
Aaaaah, the "#" stands for the root directory!
But when i type
Code: [Select]
$ cd / i get "/$", so is "/$" the same as "#"?
But what does the "%" stand for?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: wuischke on December 15, 2009, 01:04:02 PM
Hi,

stop, you got something wrong here: % means "executed by the normal user" and # means "executed by the root user or with sudo".

But all of this is not necessary: Please execute
Code: [Select]
sudo aptitude install zlib1g-devand the problem will be resolved.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 15, 2009, 01:09:29 PM
Thanks for stopping me! ;D
zlib1g-dev is installed now.
So, i now have to repeat step 5?
This is what i got so far:
Code: [Select]
~/tmp/amule$ ./configure --prefix=/usr/local/stow/amule-opt/ --enable-geoip --enable-optimize --enable-debug --with-wxdebug --mandir=/share/bin
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking if this is a FreeBSD 4 or earlier system... no
checking for g++... g++
checking for C++ compiler default output file name... a.out
checking whether the C++ compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking for style of include used by make... GNU
checking dependency style of g++... gcc3
checking how to run the C++ preprocessor... g++ -E
checking for gcc... gcc
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking dependency style of gcc... gcc3
checking how to run the C preprocessor... gcc -E
checking for gawk... (cached) mawk
checking for egrep... grep -E
checking whether make sets $(MAKE)... (cached) yes
checking for flex... no
checking for lex... no
checking for yywrap in -lfl... no
checking for yywrap in -ll... no
checking for a BSD-compatible install... /usr/bin/install -c
checking for ranlib... ranlib
checking for bison... no
checking for byacc... no
checking for ranlib... (cached) ranlib
checking for strip... strip
checking for ar... ar
checking for ld... ld
checking for zlib >= 1.1.4... no
configure: error: zlib >= 1.1.4 is required for aMule
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 15, 2009, 01:27:43 PM
Oh, what the hack; i will just try and see what happens...
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 15, 2009, 01:30:20 PM
Okay, that works, but...
Code: [Select]
   The requested wxWidgets build couldn't be found.
    
    The configuration you asked for aMule requires a wxWidgets
    build with the following settings:
        --debug=yes --unicode=yes
    but such build is not available.

So, let me try without debug, no?

Code: [Select]
./configure --prefix=/usr/local/stow/amule-opt/ --enable-geoip --enable-optimize --disable-debug --mandir=/share/bin
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 15, 2009, 01:32:10 PM
hmmm, now im getting this:
Code: [Select]
configure: WARNING:
        UPnP code has been disabled because libupnp >= 1.6.6 not found (try to use --with-libupnp-prefix=PREFIX).
checking for crypto++ version >= 5.1... no
configure: error:
Could not find crypto++ header file "cryptlib.h".
Please try again with --with-crypto-prefix=/my_crypto_prefix
(replace /my_crypto_prefix with a valid path to your crypto++
installation directory).

So, i need to get libupnp-dev in synaptic?
and crypt++el?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 15, 2009, 01:50:21 PM
hmm, the libupnp-dev was correct, but not the crypt++el...

Code: [Select]
configure: error:
Could not find crypto++ header file "cryptlib.h".
Please try again with --with-crypto-prefix=/my_crypto_prefix
(replace /my_crypto_prefix with a valid path to your crypto++
installation directory).

So, what is the path of my crypto++ installation directory?
AAhhhh, its probably libcrypto++-dev, no?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: wuischke on December 15, 2009, 01:51:11 PM
You might want to install the following packages:
libwxgtk2.8-dbg
libcrypto++-dev
libupnp3-dev
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 15, 2009, 02:00:01 PM
You might want to install the following packages:
libwxgtk2.8-dbg
libcrypto++-dev
libupnp3-dev

Thank you!
I only installed libwxgtk2.8-dbg,
because the other 2 i had already installed previously.
But, now i get:
Code: [Select]
$ ./configure --prefix=/usr/local/stow/amule-opt/ --enable-geoip --enable-optimize --disable-debug --mandir=/share/bin
bash: ./configure: No such file or directory

Huh???
I think i accidentally left the terminal while i hadnt completed the process yet...
Can i pick up somewhere before?
What step?
(the tmp with amule inside is still there)
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 15, 2009, 02:53:50 PM
Aaaah, of course, amule is not in my home directory...
Stupid me...
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 15, 2009, 02:56:21 PM
Now i get this:
Code: [Select]
 **** aMule Core ****
  Prefix where aMule should be installed?                    /usr/local/stow/amule-opt/
  Should aMule be compiled with i18n support?                no
  Should aMule be compiled in debug mode?                    no
  Should aMule be compiled with profiling?                   no
  Should aMule be compiled with optimizations?               yes
  Should aMule be compiled with UPnP support?                yes
  Should aMule be compiled with IP2country support?          yes
  Should aMule monolithic application be built?              yes
  Should aMule daemon version be built?                      no
  Should aMule remote gui be built? (EXPERIMENTAL)           no
  Crypto++ library/headers style?                            installed

  **** aMule TextClient ****
  Should aMule Command Line Client be built?                 no

  **** aMule WebServer ****
  Should aMule WebServer be built?                           no

  **** aMule ED2K Links Handler ****
  Should aMule ED2K Links Handler be built?                  yes

  **** aMuleLinkCreator ****
  Should aMuleLinkCreator GUI version (alc) be built?        no
  Should aMuleLinkCreator for console (alcc) be built?       no

  **** aMule Statistics ****
  Should C aMule Statistics (CAS) be built?                  no
  Should aMule GUI Statistics (wxCas) be built?              no
  Should xas XChat2 plugin be installed?                     no

  **** General Libraries and Tools ****
  Should ccache support be enabled?                          no
  Libraries aMule will use to build:
                                       wxWidgets             2.8.10 (gtk2,shared)
                                       crypto++              5.6.0 (installed, in /usr)
                                       libupnp               1.6.6
                                       libintl               Not detected
                                       libGeoIP              system
                                       zlib                  1.2.3.3


 *** Warnings during configuration ***

* You need to install GNU gettext/gettext-tools to compile aMule with i18n
  support.

* bfd.h not found or unusable, please install binutils development package if
  you are a developer or want to help testing aMule

there are quite a few gettext-tools in synaptic,
but i couldnt find anything related to bfd.h
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 15, 2009, 03:23:50 PM
Regarding the bfd.h, of course i had to install binutils-dev.
So, only the gettext tools remain...:
Code: [Select]
*** Warnings during configuration ***

* You need to install GNU gettext/gettext-tools to compile aMule with i18n
  support.

And i guess thats important, because on this page (http://"http://ubuntuforums.org/showthread.php?t=111188) i read:
Quote
Well... I always had that 100% issue with aMule and therefore only used eMule on a windows box.
With Feisty I also installed amule to see if it improved. Not at all... 100% as soon as it starts downloading.

Well... I've been searching around and someone suggested installing wxgtk2.8 and it's i18n support...
This seemed to have solved to problem for me. It's happily downloading and my CPU remains at 600Mhz, 6% load instead of 1.6Ghz with 100% load.

Maybe something like wx2.8-i18n?
or libtextwrap-dev?
gettext-kde?
(naturally im just guessing)
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: wuischke on December 15, 2009, 03:34:00 PM
Actually it shouldn't be that important (well, at least that's not a know problem), but "gettext" is probably the package you are looking for.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 15, 2009, 03:50:21 PM
but which one?
there are so many gettext packages...
oh, stupid me, again, i didnt see that one of them is described as:
"GNU internationalization utilities".
So, no more warnings!!!

While performing step 6 (installing) i noticed a lot of warnings flashing by...
hope it doesnt mean anything...

But then, after the final part of step 6:
Code: [Select]
make[2]: Leaving directory `/home/rrm/tmp/amule'
make[1]: Leaving directory `/home/rrm/tmp/amule'
rrm@rrm-desktop:~/tmp/amule$ cd /usr/local/stow
rrm@rrm-desktop:/usr/local/stow$ sudo stow amule-opt
rrm@rrm-desktop:/usr/local/stow$

What to do next?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 15, 2009, 04:11:40 PM
he he, silly me....  ::)
just start aMule!!!

IT WORKS!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!  8)
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 15, 2009, 04:16:37 PM
Can/Should i install a different version as well?
I like this shit...
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on December 15, 2009, 04:21:21 PM
IT WORKS!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!  8)
Hey congratulations RRM! The first time is always the hardest!

I'm sorry I didn't provide you with the right set of packages.

Now, as you guessed, you have aMule's source code in ~/tmp/amule

You can update the source code with git pull or by changing/replacing files as instructed.

Remember that now that you have your sourcecode and build environment set up, compiling again is a matter of

Code: [Select]
$ make
$ sudo make install

If you don't want to change the install directory. If you want to change it or modify some build options (like debug, etc...) you need to call configure previously, then make.

BTW, just to check you got right the compilation could you send us the output of
Code: [Select]
$ cd ~/tmp/amule
$ cat config.log | grep DEBUG
$ head config.log

p.d: You almost did a very dangerous thing trying to install zlib by hand, if in doubt ask us, we will gladly help you.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on December 15, 2009, 04:21:49 PM
Can/Should i install a different version as well?
I like this shit...
;D ;D ;D

I think right now you should test STU's change.

I instructed you to use stow as in the foreseeable future you may need to use several versions.

For instance, suppose you want to have a stock aMule an STU's one. With git you can create a branch, but this may be  a little bit hard for you, so better we copy the directories:
Code: [Select]
$ # Go to a temp directory
$ cd ~/tmp
$ # We have amule code already, just copy it
$ cp -r amule amule-upstream
$ mv amule amule-stu
$ # now amule-stu contains amule sourcecode and amule-upstream should contain unmodified code.
$ # Fix the changed file
$ cd amule-upstream
$ git checkout src/amule.cpp
$ # The previous command will restore the file.
$ # Now build both, we could use a shell command like for i in upstream stu to perform the build faster
$ ./configure --prefix=/usr/local/stow/amule-upstream-opt-debug/ --enable-geoip --enable-optimize --enable-debug --with-wxdebug --mandir=/share/bin
$ make -j 2 && sudo make install
$ cd ../amule-stu
$ ./configure --prefix=/usr/local/stow/amule-stu-opt-debug/ --enable-geoip --enable-optimize --enable-debug --with-wxdebug --mandir=/share/bin
$  make -j 2 && sudo make install
$ cd /usr/local/stow
$ ls
$ # Now you have several aMules here, you may switch with stow -D (unstow) and stow
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 15, 2009, 05:10:13 PM
Quote
Hey congratulations RRM!

Thank you, it was fun!

Quote
You can update the source code with git pull

Is it always the same, like this?
Code: [Select]
$ git clone git://repo.or.cz/amule.git
Quote
Remember that now that you have your sourcecode and build environment set up, compiling again is a matter of

Code: [Select]
$ make
$ sudo make install

If you don't want to change the install directory.

Will that replace the current aMule program (the tilted blue square)?
and if i call
Code: [Select]
~/tmp/amule$ ./configure --prefix=/usr/local/stow/amule-2/ --enable-geoip --enable-optimize --disable-debug --mandir=/share/bin
$ make
$ sudo make install

I will get a second program in the same folder?
or a second amule folder (amule-2) in the same tmp folder?
But why not like this?
Code: [Select]
$ make -j 2
$ sudo make install
$ cd /usr/local/stow
$ sudo stow amule-2

Quote
If you want to change it or modify some build options (like debug, etc...) you need to call configure previously, then make.

but not like this?
Code: [Select]
$ make -j 2
$ sudo make install
$ cd /usr/local/stow
$ sudo stow amule-opt

Quote
BTW, just to check you got right the compilation could you send us the output of
Code: [Select]
$ cd ~/tmp/amule
$ cat config.log | grep DEBUG

configure:7621: checking if wxWidgets was built in DEBUG mode
WX_DEBUG='0'

Quote
Code: [Select]
$ head config.log

This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

It was created by aMule configure SVN, which was
generated by GNU Autoconf 2.59.  Invocation command line was

  $ ./configure --prefix=/usr/local/stow/amule-opt/ --enable-geoip --enable-optimize --disable-debug --mandir=/share/bin

## --------- ##
## Platform. ##

Quote
You almost did a very dangerous thing trying to install zlib by hand, if in doubt ask us, we will gladly help you.

Sorry, i thought i was bothering you guys too much
and had to find some answers myself... :-[
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 15, 2009, 05:30:32 PM
Quote
you may switch with stow -D (unstow) and stow

How do you mean?
How can i run these 2 versions?
Will all 3 versions obtain and write their data from and to the same ~/.aMule folder?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on December 15, 2009, 09:39:19 PM
Wow, you've been busy I see. You know, there are instructions for building (http://wiki.amule.org/index.php/HowTo_Compile_In_Ubuntu), but it's sure more fun to figure it out on your own.  :)

I'm a little lost on that "stow" thing. You can build the source so it installs into different place using the --prefix option as you've been told. --prefix sets the path where make install will put the files. You can also install it to a path in your home (like ~/tmp/bin ) and so install it without sudo.
To run it just give the path to select the executable you want, like /usr/local/stow/amule-2/amule . You can even run it without install from the place where you've built it with src/amule, that's probably the easiest way for test versions.

And yes, wherever you've installed it, it will always use your same config / temp files / share. We aren't doing anything fancy here, so need to back up anything (well, no more need than every other day).

Now just copy the amule.cpp I posted into the src dir (overwriting the original one, cd to ~/tmp/amule, type
touch src/amule.cpp
make
and run it with
src/amule
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on December 15, 2009, 11:46:24 PM
Dear RRM, let me explain some basic concepts and see if that solves your questions.

Computer programs are usually created using a programming language, which contains instructions for the computer.

Programs using a particular programming language may be "compiled" or run directly from its source. Compiling means the computer takes the program and converts it to a faster form, by removing useless code, optimizing what the programmer wrote, etc... We call that faster form the "binary" and the editable one "source code".

In aMule's case, the programming language used is C++, which in general needs to be compiled. Compiling the whole aMule software, which consists of hundreds or source files is called building, and the result of building is called a build. Note that you cannot run source code without compiling unless you are really an expert.

Apart from that, complex programs like aMule allow to set some compiler options, and the binary will be different. Those options are optimization level, debug level, libraries to use, etc... The reason that those options are compile-time and not settable from the Preferences panel is that in general are hard to do. For instance, a debug build will contain extra low-level instructions that are impossible to remove without recompiling.

Now, lets apply all the above to your situation.

First of all, in order to produce an aMule binary you need to fetch the "source code", that is, the form of the program that programmers can easily edit. This is needed so we can easily change aMule behavior and you may test it.

There are several ways of getting aMule's source code, a quick one is using git, a program whose whole purpose is to track changes to source code.

When you do a git clone $url, you "clone" that is to say, fetch the whole source code available at $url. Note that if the developers update the source code git helps you avoiding to download the whole source code. The command to update the source code is git pull, and it will download only the changes you don't have in your local copy. Of course this is much faster than downloading again all the source code. git can be used for a lot of thing (like sending changes to aMule developers), but just knowing git clone and git pull should be enough for you. (By the way, git checkout "extracts" a file from the saved version)

So far so good, you should have learned how to fetch and update aMule source code. Now lets see what can we do with the source code: Generating an aMule binary and misc files, so you can run aMule.

The first step is to "configure" the build process. In this step you tell the build system where will  aMule binaries be installed, and may set several options. So that's exactly what prefix means, the install location.  (I know prefix is a cryptic name for that) Enabling debug and optimizations are options, you may see all options calling ./configure --help

For packages compiled by the users, Ubuntu follows a convention that binaries should be placed under /usr/local/, but as STU said, you may place the binaries whenever you want. I recommend you to place them under /usr/local/stow/$build-name

Now let me to introduce stow to you. When compiling and installing some software, the default prefix will be /usr/local, so you once you finish the build you'll get a binary like /usr/local/bin/amule

So far so good, /usr/local/bin  is in your PATH by default  (a variable which tells the system where to look for binaries) , so you can type amule and it will start.

Now imagine you want to change some build options or the actual source code. You build aMule again and you get a new /usr/loca/bin/amule. What happens if you want to have both builds available?

Now stow enters in the equation. Stow allows you to install software in /usr/local/stow/ and select which version should be made the default, that is to say, the one present in /usr/local/bin

This way, using stow you build aMule and set the prefix to install it in /usr/local/stow/amule-myowncoolversion. Now you have a complete aMule build living in /usr/local/stow/amule-myowncoolversion, but as this location is not in the default path you may encounter some problems. So you change the current directory to /usr/local/stow and do
$ stow amule-myowncoolversion. Now that version is the default one.

Now you have some changes in aMule,  so you call configure again and tell it to install this new build in other location [always under /usr/local/stow] You may go to /usr/local/stow, unstow the previous one and stow the new one. Do you need to try the old one? Just unstow/stow again and you are set.

Of course, as STU said this is not really needed, but I like to be methodical.

The last bits remaining is to explain make and make install. Make performs the actual build and make install will install the software where prefix indicated.

Really last paragraph: configuration files are stored in a per user location, so changing the binary doesn't affect them. Think of upgrading Firefox, you get a new program, but all your settings are retained because they live in a different location.

Is it always the same, like this?
Code: [Select]
$ git clone git://repo.or.cz/amule.git
git clone downloads aMule source code from zero. git pull updates it to newer versions, so you should only use git when you want to fetch changes from aMule developers.
Quote
[Will that replace the current aMule program (the tilted blue square)?
and if i call
Code: [Select]
~/tmp/amule$ ./configure --prefix=/usr/local/stow/amule-2/ --enable-geoip --enable-optimize --disable-debug --mandir=/share/bin
$ make
$ sudo make install
I will get a second program in the same folder?
or a second amule folder (amule-2) in the same tmp folder?
But why not like this?
Code: [Select]
$ make -j 2
$ sudo make install
$ cd /usr/local/stow
$ sudo stow amule-2
You will get the program in the folder you choose in configure using the --prefix parameter. If you make again without changing the folder, the new program will overwrite the old. Both behaviour make sense.
Quote
but not like this?
Code: [Select]
$ make -j 2
$ sudo make install
$ cd /usr/local/stow
$ sudo stow amule-opt
This will build amule (make -j2), install amule in whatever prefix is set (sudo make install) go to stow location (/usr/local/stow) and stow amule-opt.
Quote
Code: [Select]
configure:7621: checking if wxWidgets was built in DEBUG mode
WX_DEBUG='0'
$  head config.log
 $ ./configure --prefix=/usr/local/stow/amule-opt/ --enable-geoip --enable-optimize --disable-debug --mandir=/share/bin
You must compile with --enable-debug --with-wxdebug.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on December 16, 2009, 12:23:48 AM
Umm, summaring the long history of this crash, I got and idea.

Run
Code: [Select]
$ sudo bash -c "ulimit -n 65536; ulimit -n; su -m -c 'ulimit -n; id -nu' \"`id -un`\""
Check that it outputs 65536 two times.
Then run amule using this
Code: [Select]
$ sudo bash -c "ulimit -n 65536; ulimit -n; su -m -c 'ulimit -n; gdb amule' \"`id -un`\""
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on December 16, 2009, 12:27:25 AM
You may also try:

Code: [Select]
$ sudo bash -c "echo 2048 > /proc/sys/net/core/somaxconn"
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 16, 2009, 08:15:12 AM
To run it just give the path to select the executable you want, like /usr/local/stow/amule-2/amule

Ok, in the terminal, right?
But why then, do i type: "gdb amule" and "run" to normally run it?

Quote
You can even run it without install from the place where you've built it with src/amule,

Ah, ok, so to run the 2 other versions,
i need to write in a terminal:

tmp/amule-stu/src/amule
or
tmp/amule-upstream/src/amule

?
But i also found those executables here...
so maybe i need to type this:

/usr/local/stow/amule-opt/bin/amule
or
/usr/local/stow/amule-stu-opt-debug/bin/amule
?

Quote
Now just copy the amule.cpp I posted into the src dir

But, i already did that in step 3 and 4...


3. I download the modified file (amule.cpp) that Stu gave me.

4. I delete the amule.cpp in ~/tmp/amule/src/
and replace it with the downloaded amule.cpp

right?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 16, 2009, 09:36:12 AM
Wow, Bill...
Thank you very much for that detailed information!!!
That helped a lot, indeed.

Quote
When compiling and installing some software, the default prefix will be /usr/local,
so you once you finish the build you'll get a binary like /usr/local/bin/amule

So, i cannot simply run these executables by using a terminal?
/usr/local/stow/amule-opt/bin/amule
/usr/local/stow/amule-stu-opt-debug/bin/amule

Quote
Now imagine you want to change some build options or the actual source code.
You build aMule again and you get a new /usr/local/bin/amule.

So, the executable file over there (/usr/local/bin/amule) with the arrow
is the actual and only amule executable that i run when typing "amule"?

Quote
Stow allows you to install software in /usr/local/stow/ and select which version should be made the default, that is to say, the one present in /usr/local/bin
This way, using stow you build aMule and set the prefix to install it in /usr/local/stow/amule-myowncoolversion.

You mean:
/usr/local/stow/amule-opt
and
/usr/local/stow/amule-stu-opt-debug
right?

Quote
but as this location is not in the default path you may encounter some problems. So you change the current directory to /usr/local/stow and do
$ stow amule-myowncoolversion. Now that version is the default one.

Im sorry, i dont understand.
You mean i should change "/usr/local/stow/amule-opt" (or  "/usr/local/stow/amule-stu-opt-debug") into "/usr/local/stow" ?
How do i change that?

Quote
Now you have some changes in aMule,  so you call configure again and tell it to install this new build

Do you mean that i first type:
Code: [Select]
$ git pull git://repo.or.cz/amule.gitand then:
Code: [Select]
$ ./configure --prefix=/usr/local/stow/amule-opt/ --enable-geoip --enable-optimize --disable-debug --mandir=/share/bin
or:
$ ./configure --prefix=/usr/local/stow/amule-stu-opt-debug/ --enable-geoip --enable-optimize --enable-debug --with-wxdebug --mandir=/share/bin
and then:
Code: [Select]
$ make -j 2 && sudo make install
$ cd /usr/local/stow
$ sudo stow amule-opt
or:
$ make -j 2 && sudo make install
$ cd /usr/local/stow
$ sudo stow amule-stu-opt-debug

right?

Quote
You may go to /usr/local/stow, unstow the previous one and stow the new one. Do you need to try the old one? Just unstow/stow again and you are set.

?Huh?
I dont understand; how do i do this?

Quote
Of course, as STU said this is not really needed, but I like to be methodical.

Me too, otherwise i get confused for sure...

Quote
You must compile with --enable-debug --with-wxdebug.

For both versions?
But then they will be exactly the same, no?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 16, 2009, 09:46:14 AM
Umm, summaring the long history of this crash, I got and idea.

Run
Code: [Select]
$ sudo bash -c "ulimit -n 65536; ulimit -n; su -m -c 'ulimit -n; id -nu' \"`id -un`\""
Check that it outputs 65536 two times.
Then run amule using this
Code: [Select]
$ sudo bash -c "ulimit -n 65536; ulimit -n; su -m -c 'ulimit -n; gdb amule' \"`id -un`\""

Rev 9901 still runs smoothly,
shouldnt i wait till it crashes?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Vollstrecker on December 16, 2009, 12:49:30 PM
While we are on teaching compiling in general, just some points:

Do this before you execute "make". (Oh, "make -j2" is for a dual core processor.)

More correct, it just tells make how many jobs it should start in parallel. I use -j3 on my single-core. -j2 speeds up up compile ~5%, and you get another 2-3% with -j3. On my setup intresstingly -j4 slows it a bit down again, so just try the right params for your setup with "time make -j<x>"

You can even run it without install from the place where you've built it with src/amule, that's probably the easiest way for test versions.

This is not always good. without install, the .mo's are not where amule expects them, so you'll get a not localized version. aMule writes this into his config, and you have to change it back if you run a normal installation. A temporary install-dir is a better choice. If this temp-dir is in your home, you can just do "make -j<x> install" right after your configure call and everything is fine.

@RRM if you try to compile another app, and your in the lucky situation that it contains a debian-dir like aMule, you can just do "grep Build debian/control" and get a list of packages it needs to be installed.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on December 16, 2009, 01:09:23 PM
But why then, do i type: "gdb amule" and "run" to normally run it?

If you run it under gdb you will get a backtrace easily. STU forgot that.

Quote
Ah, ok, so to run the 2 other versions,
i need to write in a terminal:

tmp/amule-stu/src/amule
or
tmp/amule-upstream/src/amule

?
But i also found those executables here...
so maybe i need to type this:

/usr/local/stow/amule-opt/bin/amule
or
/usr/local/stow/amule-stu-opt-debug/bin/amule
?
Better always run the versions in /usr/local [as explained by Vollstrecker]
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on December 16, 2009, 01:15:02 PM
Umm, summaring the long history of this crash, I got and idea.

Run
Code: [Select]
$ sudo bash -c "ulimit -n 65536; ulimit -n; su -m -c 'ulimit -n; id -nu' \"`id -un`\""
Check that it outputs 65536 two times.
Then run amule using this
Code: [Select]
$ sudo bash -c "ulimit -n 65536; ulimit -n; su -m -c 'ulimit -n; gdb amule' \"`id -un`\""

Rev 9901 still runs smoothly,
shouldnt i wait till it crashes?

Yes of course, wait to see if your current build crashes. I recommend you to push it hard, that is to say, feed the mule some really popular files.

 Yesterday I had a little bit of time and had a deeper look into your low VZS crashes.

It seems you may be running out of file descriptors in the socket code. Keep in mind that in Ubuntu, by default just 1024 connections per user and application are allowed. And the [not so] wonderful gio code crashes in that event. As I noticed you like to run with 2000 max connections this indeed could be the cause.

Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on December 16, 2009, 01:25:29 PM
Thank you very much for that detailed information!!!
That helped a lot, indeed.
I hope so, good testers like you are not easy to find!
Quote
Quote
When compiling and installing some software, the default prefix will be /usr/local,
so you once you finish the build you'll get a binary like /usr/local/bin/amule

So, i cannot simply run these executables by using a terminal?
/usr/local/stow/amule-opt/bin/amule
/usr/local/stow/amule-stu-opt-debug/bin/amule
Yes you can, stow just creates a virtual amule pointing to the location you specified.

Quote
Quote
Now imagine you want to change some build options or the actual source code.
You build aMule again and you get a new /usr/local/bin/amule.

So, the executable file over there (/usr/local/bin/amule) with the arrow
is the actual and only amule executable that i run when typing "amule"?
Yes, when you just type amule [and don't specify the path] Ubuntu searchs several default locations, one of them is /usr/local/bin
Quote
Quote
Stow allows you to install software in /usr/local/stow/ and select which version should be made the default, that is to say, the one present in /usr/local/bin
This way, using stow you build aMule and set the prefix to install it in /usr/local/stow/amule-myowncoolversion.

You mean:
/usr/local/stow/amule-opt
and
/usr/local/stow/amule-stu-opt-debug
right?
You may use whatever name you like for your builds.
Quote
Quote
but as this location is not in the default path you may encounter some problems. So you change the current directory to /usr/local/stow and do
$ stow amule-myowncoolversion. Now that version is the default one.
You mean i should change "/usr/local/stow/amule-opt" (or  "/usr/local/stow/amule-stu-opt-debug") into "/usr/local/stow" ?
How do i change that?
Well I'm not sure I understand your question. Once you do make install, you'll have a new aMule in the directory you specified in prefix when calling configure. That directory is not included in the default search for programs, so you use stow to link your build to the standard location /usr/local/bin
Quote
Quote
Now you have some changes in aMule,  so you call configure again and tell it to install this new build

Do you mean that i first type:
Code: [Select]
$ git pull git://repo.or.cz/amule.gitand then:
Code: [Select]
$ ./configure --prefix=/usr/local/stow/amule-opt/ --enable-geoip --enable-optimize --disable-debug --mandir=/share/bin
or:
$ ./configure --prefix=/usr/local/stow/amule-stu-opt-debug/ --enable-geoip --enable-optimize --enable-debug --with-wxdebug --mandir=/share/bin
and then:
Code: [Select]
$ make -j 2 && sudo make install
$ cd /usr/local/stow
$ sudo stow amule-opt
or:
$ make -j 2 && sudo make install
$ cd /usr/local/stow
$ sudo stow amule-stu-opt-debug

right?
Right, almost perfect. You created to builds, [one with debug information and other without] and installed them under /usr/loca/stow/.... The only problem you have is that you call stow two times without unstowing the first one. You can only have a "default amule", so if you want to stow the second one [stu-opt-debug] first unstow the previous.
Quote
Quote
You may go to /usr/local/stow, unstow the previous one and stow the new one. Do you need to try the old one? Just unstow/stow again and you are set.

?Huh?
I dont understand; how do i do this?
unstow is done with stow -D

So for instance, imagine you made the build in /usr/local/stow/amule-btk the default, but want to switch to another one living in /usr/local/stow/amule-kkaos, then you do
Code: [Select]
$ cd /usr/local/stow
$ sudo stow -D amule-btk
$ sudo stow amule-kkaos
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 16, 2009, 02:05:52 PM
Quote from: btkaos
I recommend you to push it hard, that is to say, feed the mule some really popular files.

Ok, will do.  8)

Quote
Yesterday I had a little bit of time and had a deeper look into your low VZS crashes.

It seems you may be running out of file descriptors in the socket code.

So, i better not feed it too much...
Let me try to strike a balance then.

Quote
so you use stow to link your build to the standard location /usr/local/bin
....
imagine you made the build in /usr/local/stow/amule-btk the default, but want to switch to another one living in /usr/local/stow/amule-kkaos, then you do
Code: [Select]
$ cd /usr/local/stow
$ sudo stow -D amule-btk
$ sudo stow amule-kkaos

Aaaaaaaaaaahhh.... OK, wow... How elegant!  thank you!!
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 16, 2009, 02:22:04 PM
How do you guys know when a change to the source code has been made?
I mean: how do you know that its time to do
Code: [Select]
$ git pull git://repo.or.cz/amule.git
Is there an announcement board for this?

Code: [Select]
$ sudo bash -c "ulimit -n 65536; ulimit -n; su -m -c 'ulimit -n; id -nu' \"`id -un`\""
What does that do?
limit the VSZ that aMule can use?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Vollstrecker on December 16, 2009, 02:47:32 PM
As I don't know if the git repo has an webinterface, I think it's the easiest way to check the sites that offer tarballs. On gonosztopis site or my site you'll see when a new rev arrives. Sometimes one is more uptodate than the other. My is updated with every changeset, gonos one is updated when something intressting is changed.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 16, 2009, 03:20:14 PM
Thank you Vollstrecker!
Stu supplied me with an amule.cpp file to replace the original git version amule.cpp.
Will Stu normally eventually apply that change to the git version,
or will that replacement be undone when i do a new git pull?
(as git pull will level any difference, right?)
Or maybe its just a test-amule.cpp, and time (testing it) will tell if it is for keepers?
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: Vollstrecker on December 16, 2009, 03:23:24 PM
I don't know git, but svn will just report that the file has local changes and therefor don't touch it. I would just backup the file, so you can view the diff if it is changed (google will tell you how to do with git) and see if the modified section is touched or not.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on December 16, 2009, 03:23:46 PM
Stu supplied me with an amule.cpp file to replace the original git version amule.cpp.
Will Stu normally eventually apply that change to the git version,
or will that replacement be undone when i do a new git pull?
(as git pull will level any difference, right?)
Or maybe its just a test-amule.cpp, and time (testing it) will tell if it is for keepers?
The change STU sent is not likely to be applied in the git version. So your last line is spot on.

git pull will try to respect your local changes. Anyways, you can see what's changed with git status

If you are in doubt you can delete the directory and do a git clone again :p
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on December 16, 2009, 03:26:41 PM
How do you guys know when a change to the source code has been made?
I mean: how do you know that its time to do
Code: [Select]
$ git pull git://repo.or.cz/amule.git
Just git pull is enough. Git remebers where did you pull last time from.

Quote
Is there an announcement board for this?
No, but git pull is very fast, so no harm pulling when you feel like it. You may use gitk to see amule's history.
Quote
Code: [Select]
$ sudo bash -c "ulimit -n 65536; ulimit -n; su -m -c 'ulimit -n; id -nu' \"`id -un`\""
What does that do?
limit the VSZ that aMule can use?
No. It raises the limit of files [and sockets with fd] aMule can open. The code looks so complicated as one root can raise such limit, but we want amule running as your actual user.

So, push aMule [with STU patch]. If your aMule doesn't crash, we are on the right path.

If aMule crashes, run with the limit raised and push amule again.

Regards,BTK
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 16, 2009, 03:32:23 PM
Thank you Bill, thats great.

Quote from: Vollstrecker
I would just backup the file, so you can view the diff if it is changed

Of course... Excellent idea...
I should have thought of that myself.
Thank you.
Title: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on December 16, 2009, 03:49:59 PM
To some of the forum admins: Could you rename/split the thread so its title better reflects what it is about?
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: wuischke on December 16, 2009, 04:25:49 PM
To some of the forum admins: Could you rename/split the thread so its title better reflects what it is about?
Sure. :)
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 16, 2009, 04:55:46 PM
I stepped on the gas.
Everything seemed fine (doubled connections, upload speed remained the same,
a steady 1.9 MB/s currently, increased downloads from 1 to 8; 300 kB/s),
but now aMule is frozen (the page is empty, except for the header, which is frozen
in the sense that upload and download speed dont change anymore).
However, according to the terminal, aMule has not crashed yet...
ah, but now it has...
Its...
Its a boy!
or, is it a girl?...
No! ... Its a high VSZ crash!!!

$ ps axl | grep amule
Code: [Select]
0  1000 14695 14665  20   0   3036   796 pipe_w S+   pts/0      0:00 grep amule
0  1000 23813 23784  20   0  38008  4396 poll_s S+   pts/1      0:00 gdb amule
0  1000 23815 23813  20   0 3145724 2721812 ptrace Tl pts/1   699:16 /usr/local/bin/amule

Code: [Select]
Terminated after throwing an instance of 'std::bad_alloc'
what(): std::bad_alloc
Error while getting symbol table : Memory exhausted backtrace:
[2] ?? in /usr/lib/libstdc++.so.6 [0x109f415]
[3] ?? in /usr/lib/libstdc++.so.6 [0x109f452]
[4] ?? in /usr/lib/libstdc++.so.6 [0x109f591]
[5] operator new(unsigned int) in /usr/lib/libstdc++.so.6[0x109fc0f]
[6] wxObjectList::CreateNode(wxNodeBase*, wxNodeBase*, void*, wxListKey const&) in /usr/lib/libwx_baseu-2.8.so.0[0x96a463]
[7] wxListBase::Append(void*) in /usr/lib/libwx_baseu-2.8.so.0[0x97cd4b]
[8] wxEvtHandler::AddPendingEvent(wxEvent&) in /usr/lib/libwx_baseu-2.8.so.0[0x9d68b2]
[9] wxSocketBase::OnRequest(wxSocketNotify) in /usr/lib/libwx_baseu_net-2.8.so.0[0x6cf920]
[10] wx_socket_callback in /usr/lib/libwx_baseu_net-2.8.so.0[0x6cfa14]
[11] GSocket::Detected_Write() in /usr/lib/libwx_baseu_net-2.8.so.0[0x6d4a8b]
[12] ?? in /usr/lib/libwx_gtk2u_core-2.8.so.0 [0xc0b427]
[13] ?? in /usr/lib/libgdk-x11-2.0.so.0 [0x79ef7c]
[14] ?? in /lib/libglib-2.0.so.0 [0x3b0ad5b]
[15] g_main_context_dispatch in /lib/libglib-2.0.so.0[0x3ad3e78]
[16] ?? in /lib/libglib-2.0.so.0 [0x3ad7720]
[17] g_main_loop_run in /lib/libglib-2.0.so.0[0x3ad7b8f]
[18] gtk_main in /usr/lib/libgtk-x11-2.0.so.0[0x36b5419]
[19] wxEventLoop::Run() in /usr/lib/libwx_gtk2u_core-2.8.so.0[0xc09c78]
[20] wxAppBase::MainLoop() in /usr/lib/libwx_gtk2u_core-2.8.so.0[0xc9ce3e]
[21] wxAppBase::OnRun() in /usr/lib/libwx_gtk2u_core-2.8.so.0[0xc9ca31]
[22] wxEntry(int&, wchar_t**) in /usr/lib/libwx_baseu-2.8.so.0[0x9717aa]
[23] wxEntry(int&, char**) in /usr/lib/libwx_baseu-2.8.so.0[0x971987]
[24] ?? in /usr/local/bin/amule [0x817e3eb]
[25] __libc_start_main in /lib/tls/i686/cmov/libc.so.6[0x75ecb56]
[26]  in start.S:122

Program received signal SIGABRT, Aborted.
0x00ad2422 in __kernel_vsyscall ()
(gdb) bt full
Code: [Select]
#0  0x00ad2422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x076004d1 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0x07603932 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0x08278df5 in OnUnhandledException() ()
No symbol table info available.
#4  0x0109f415 in ?? () from /usr/lib/libstdc++.so.6
No symbol table info available.
#5  0x0109f452 in std::terminate() () from /usr/lib/libstdc++.so.6
No symbol table info available.
#6  0x0109f591 in __cxa_throw () from /usr/lib/libstdc++.so.6
No symbol table info available.
#7  0x0109fc0f in operator new(unsigned int) () from /usr/lib/libstdc++.so.6
No symbol table info available.
#8  0x0096a463 in wxObjectList::CreateNode(wxNodeBase*, wxNodeBase*, void*, wxListKey const&) () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#9  0x0097cd4b in wxListBase::Append(void*) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#10 0x009d68b2 in wxEvtHandler::AddPendingEvent(wxEvent&) ()
---Type <return> to continue, or q <return> to quit---
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#11 0x006cf920 in wxSocketBase::OnRequest(wxSocketNotify) ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#12 0x006cfa14 in wx_socket_callback () from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#13 0x006d4a8b in GSocket::Detected_Write() ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#14 0x00c0b427 in ?? () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#15 0x0079ef7c in ?? () from /usr/lib/libgdk-x11-2.0.so.0
No symbol table info available.
#16 0x03b0ad5b in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#17 0x03ad3e78 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
No symbol table info available.
#18 0x03ad7720 in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#19 0x03ad7b8f in g_main_loop_run () from /lib/libglib-2.0.so.0
No symbol table info available.
#20 0x036b5419 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#21 0x00c09c78 in wxEventLoop::Run() () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#22 0x00c9ce3e in wxAppBase::MainLoop() ()
   from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#23 0x00c9ca31 in wxAppBase::OnRun() () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#24 0x009717aa in wxEntry(int&, wchar_t**) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#25 0x00971987 in wxEntry(int&, char**) () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#26 0x0817e3eb in main ()
No symbol table info available.

(gdb) thread apply all bt full
Code: [Select]

Thread 5 (Thread 0xb63e5b70 (LWP 23831)):
#0  0x00ad2422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x00773142 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
   from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0x009d3854 in wxConditionInternal::WaitTimeout(unsigned long) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#3  0x009d38af in wxCondition::WaitTimeout(unsigned long) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#4  0x009d4aa4 in wxSemaphoreInternal::WaitTimeout(unsigned long) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#5  0x009d4b2f in wxSemaphore::WaitTimeout(unsigned long) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#6  0x082751c2 in CTimerThread::Entry() ()
No symbol table info available.
#7  0x009d5a98 in wxThreadInternal::PthreadStart(wxThread*) ()
   from /usr/lib/libwx_baseu-2.8.so.0
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#8  0x009d5afd in wxPthreadStart () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#9  0x0076e80e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#10 0x076a27ee in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 3 (Thread 0xb73e8b70 (LWP 23829)):
#0  0x00ad2422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x00776466 in nanosleep () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0x009db3b8 in wxMicroSleep(unsigned long) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#3  0x009db3e1 in wxMilliSleep(unsigned long) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#4  0x009d369d in wxThread::Sleep(unsigned long) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#5  0x0813fe88 in UploadBandwidthThrottler::Entry() ()
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#6  0x009d5a98 in wxThreadInternal::PthreadStart(wxThread*) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#7  0x009d5afd in wxPthreadStart () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#8  0x0076e80e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#9  0x076a27ee in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 1 (Thread 0xb7fdd760 (LWP 23815)):
#0  0x00ad2422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x076004d1 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0x07603932 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0x08278df5 in OnUnhandledException() ()
No symbol table info available.
#4  0x0109f415 in ?? () from /usr/lib/libstdc++.so.6
No symbol table info available.
#5  0x0109f452 in std::terminate() () from /usr/lib/libstdc++.so.6
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#6  0x0109f591 in __cxa_throw () from /usr/lib/libstdc++.so.6
No symbol table info available.
#7  0x0109fc0f in operator new(unsigned int) () from /usr/lib/libstdc++.so.6
No symbol table info available.
#8  0x0096a463 in wxObjectList::CreateNode(wxNodeBase*, wxNodeBase*, void*, wxListKey const&) () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#9  0x0097cd4b in wxListBase::Append(void*) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#10 0x009d68b2 in wxEvtHandler::AddPendingEvent(wxEvent&) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#11 0x006cf920 in wxSocketBase::OnRequest(wxSocketNotify) ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#12 0x006cfa14 in wx_socket_callback () from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#13 0x006d4a8b in GSocket::Detected_Write() ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#14 0x00c0b427 in ?? () from /usr/lib/libwx_gtk2u_core-2.8.so.0
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#15 0x0079ef7c in ?? () from /usr/lib/libgdk-x11-2.0.so.0
No symbol table info available.
#16 0x03b0ad5b in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#17 0x03ad3e78 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
No symbol table info available.
#18 0x03ad7720 in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#19 0x03ad7b8f in g_main_loop_run () from /lib/libglib-2.0.so.0
No symbol table info available.
#20 0x036b5419 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#21 0x00c09c78 in wxEventLoop::Run() () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#22 0x00c9ce3e in wxAppBase::MainLoop() ()
   from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#23 0x00c9ca31 in wxAppBase::OnRun() () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#24 0x009717aa in wxEntry(int&, wchar_t**) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#25 0x00971987 in wxEntry(int&, char**) () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#26 0x0817e3eb in main ()
No symbol table info available.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 16, 2009, 05:02:56 PM
Quote from: btkaos
Code: [Select]
$ sudo bash -c "ulimit -n 65536; ulimit -n; su -m -c 'ulimit -n; id -nu' \"`id -un`\""
Check that it outputs 65536 two times.

65536
65536
rrm

Quote
Then run amule using this
Code: [Select]
$ sudo bash -c "ulimit -n 65536; ulimit -n; su -m -c 'ulimit -n; gdb amule' \"`id -un`\""

done.
Rev 9901 is running again,
but shouldnt i switch to amule-stu-opt-debug?
(because of no symbol table info available)
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on December 16, 2009, 05:37:53 PM
Now - was it the version with the patched amule.cpp ?
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 16, 2009, 05:44:06 PM
You may also try:

Code: [Select]
$ sudo bash -c "echo 2048 > /proc/sys/net/core/somaxconn"

When should i do this?
After aMule has crashed?
Do i need a special run-code after that?
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 16, 2009, 05:44:36 PM
Now - was it the version with the patched amule.cpp ?

Yes...
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 16, 2009, 07:44:45 PM
proceeded by the usual:
Code: [Select]
(amule:14755): GLib-WARNING **: /build/buildd/glib2.0-2.22.2/glib/giounix.c:406Error while getting flags for FD: Bad file descriptor (9)
aMule crashed
High VSZ

$ ps axl | grep amule
Code: [Select]
4     0 14742 14665  20   0   3980   300 wait   S+   pts/0      0:00 bash -c ulimit -n 65536; ulimit -n; su -m -c 'ulimit -n; gdb amule' "rrm"
4  1000 14743 14742  20   0   4200   576 wait   S+   pts/0      0:00 su -m -c ulimit -n; gdb amule rrm
0  1000 14752 14743  20   0   4484   296 wait   S+   pts/0      0:00 bash -c ulimit -n; gdb amule
0  1000 14753 14752  20   0  37264  4440 poll_s S+   pts/0      0:00 gdb amule
0  1000 14755 14753  20   0 3145724 2710344 ptrace Tl pts/0   119:05 /usr/local/bin/amule
0  1000 15246 15216  20   0   3036   796 pipe_w S+   pts/1      0:00 grep amule

Terminated after throwing an instance of 'std::bad_alloc'
   what(): std::bad_alloc

Terminated after throwing an instance of 'std::bad_alloc'
   what(): std::bad_alloc
* Could not get symbol names for backtrace
   backtrace:

* Could not get symbol names for backtrace
   backtrace:


Program received signal SIGABRT, Aborted.
[Switching to Thread 0xb63e5b70 (LWP 14776)]
0x00ab2422 in __kernel_vsyscall ()
(gdb) bt full
Code: [Select]
#0  0x00ab2422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x005d84d1 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0x005db932 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0x08278df5 in OnUnhandledException() ()
No symbol table info available.
#4  0x00576415 in ?? () from /usr/lib/libstdc++.so.6
No symbol table info available.
#5  0x00576452 in std::terminate() () from /usr/lib/libstdc++.so.6
No symbol table info available.
#6  0x00576591 in __cxa_throw () from /usr/lib/libstdc++.so.6
No symbol table info available.
#7  0x00576c0f in operator new(unsigned int) () from /usr/lib/libstdc++.so.6
No symbol table info available.
#8  0x08274e3e in CTimerEvent::Clone() const ()
No symbol table info available.
#9  0x00356888 in wxEvtHandler::AddPendingEvent(wxEvent&) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#10 0x082751e0 in CTimerThread::Entry() ()
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#11 0x00355a98 in wxThreadInternal::PthreadStart(wxThread*) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#12 0x00355afd in wxPthreadStart () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#13 0x00fab80e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#14 0x0067a7ee in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

(gdb) thread apply all bt full
Code: [Select]
Thread 5 (Thread 0xb63e5b70 (LWP 14776)):
#0  0x00ab2422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x005d84d1 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0x005db932 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0x08278df5 in OnUnhandledException() ()
No symbol table info available.
#4  0x00576415 in ?? () from /usr/lib/libstdc++.so.6
No symbol table info available.
#5  0x00576452 in std::terminate() () from /usr/lib/libstdc++.so.6
No symbol table info available.
#6  0x00576591 in __cxa_throw () from /usr/lib/libstdc++.so.6
No symbol table info available.
#7  0x00576c0f in operator new(unsigned int) () from /usr/lib/libstdc++.so.6
No symbol table info available.
#8  0x08274e3e in CTimerEvent::Clone() const ()
No symbol table info available.
#9  0x00356888 in wxEvtHandler::AddPendingEvent(wxEvent&) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#10 0x082751e0 in CTimerThread::Entry() ()
No symbol table info available.
#11 0x00355a98 in wxThreadInternal::PthreadStart(wxThread*) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#12 0x00355afd in wxPthreadStart () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#13 0x00fab80e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#14 0x0067a7ee in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 3 (Thread 0xb73e8b70 (LWP 14774)):
#0  0x080ef655 in CEMSocket::Send(unsigned int, unsigned int, bool) ()
No symbol table info available.
#1  0x080b6c44 in CClientTCPSocket::SendFileAndControlData(unsigned int, unsigned int) ()
No symbol table info available.
#2  0x0813fa58 in UploadBandwidthThrottler::Entry() ()
No symbol table info available.
#3  0x00355a98 in wxThreadInternal::PthreadStart(wxThread*) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#4  0x00355afd in wxPthreadStart () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#5  0x00fab80e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#6  0x0067a7ee in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 1 (Thread 0xb7fdd760 (LWP 14755)):
#0  0x00ab2422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x005d84d1 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0x005db932 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0x08278df5 in OnUnhandledException() ()
No symbol table info available.
#4  0x00576415 in ?? () from /usr/lib/libstdc++.so.6
No symbol table info available.
#5  0x00576452 in std::terminate() () from /usr/lib/libstdc++.so.6
No symbol table info available.
#6  0x00576591 in __cxa_throw () from /usr/lib/libstdc++.so.6
No symbol table info available.
#7  0x00576c0f in operator new(unsigned int) () from /usr/lib/libstdc++.so.6
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#8  0x009e37f9 in wxSocketEvent::Clone() const ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#9  0x00356888 in wxEvtHandler::AddPendingEvent(wxEvent&) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#10 0x009e2920 in wxSocketBase::OnRequest(wxSocketNotify) ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#11 0x009e2a14 in wx_socket_callback () from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#12 0x009e7a8b in GSocket::Detected_Write() ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#13 0x010f7427 in ?? () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#14 0x008a5f7c in ?? () from /usr/lib/libgdk-x11-2.0.so.0
No symbol table info available.
#15 0x069cad5b in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#16 0x06993e78 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#17 0x06997720 in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#18 0x06997b8f in g_main_loop_run () from /lib/libglib-2.0.so.0
No symbol table info available.
#19 0x0704a419 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#20 0x010f5c78 in wxEventLoop::Run() () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#21 0x01188e3e in wxAppBase::MainLoop() ()
   from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#22 0x01188a31 in wxAppBase::OnRun() () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#23 0x002f17aa in wxEntry(int&, wchar_t**) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#24 0x002f1987 in wxEntry(int&, char**) () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#25 0x0817e3eb in main ()
No symbol table info available.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 16, 2009, 07:51:42 PM
So, let me switch to the debug enabled version...
Code: [Select]
$ cd /usr/local/stow
$ sudo stow -D amule-opt
$ sudo stow amule-stu-opt-debug
$ cd
$ gdb amule
(gdb) run

Yes, its working!
im running amule-stu-opt-debug now...  8)
(it said: "Reading symbols from /usr/local/stow/amule-stu-opt-debug/bin/amule...done.")
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 16, 2009, 09:56:56 PM
and aMule is frozen again...
no crash yet...
but now there is...

$ ps axl | grep amule
Code: [Select]
0  1000 15304 15274  20   0  37916  2624 poll_s S+   pts/0      0:00 gdb amule
0  1000 15306 15304  20   0 3145724 2751344 ptrace Tl pts/0   127:32 /usr/local/stow/amule-stu-opt-debug/bin/amule
0  1000 15809 15779  20   0   3036   792 pipe_w S+   pts/1      0:00 grep amule

Huh?
Still no symbol table info available...

Program received signal SIGABRT, Aborted.
0x00937422 in __kernel_vsyscall ()
(gdb) bt full
Code: [Select]
#0  0x00937422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x006434d1 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0x00646932 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0x08278df5 in OnUnhandledException() ()
No symbol table info available.
#4  0x00481415 in ?? () from /usr/lib/libstdc++.so.6
No symbol table info available.
#5  0x00481452 in std::terminate() () from /usr/lib/libstdc++.so.6
No symbol table info available.
#6  0x00481591 in __cxa_throw () from /usr/lib/libstdc++.so.6
No symbol table info available.
#7  0x00481c0f in operator new(unsigned int) () from /usr/lib/libstdc++.so.6
No symbol table info available.
#8  0x00282463 in wxObjectList::CreateNode(wxNodeBase*, wxNodeBase*, void*, wxListKey const&) () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#9  0x00294d4b in wxListBase::Append(void*) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#10 0x002ee8e0 in wxEvtHandler::AddPendingEvent(wxEvent&) ()
---Type <return> to continue, or q <return> to quit---
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#11 0x001fa920 in wxSocketBase::OnRequest(wxSocketNotify) ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#12 0x001faa14 in wx_socket_callback () from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#13 0x001ffa8b in GSocket::Detected_Write() ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#14 0x00ec5427 in ?? () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#15 0x004fff7c in ?? () from /usr/lib/libgdk-x11-2.0.so.0
No symbol table info available.
#16 0x05b9fd5b in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#17 0x05b68e78 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
No symbol table info available.
#18 0x05b6c720 in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#19 0x05b6cb8f in g_main_loop_run () from /lib/libglib-2.0.so.0
No symbol table info available.
#20 0x06ab6419 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#21 0x00ec3c78 in wxEventLoop::Run() () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#22 0x00f56e3e in wxAppBase::MainLoop() ()
   from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#23 0x00f56a31 in wxAppBase::OnRun() () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#24 0x002897aa in wxEntry(int&, wchar_t**) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#25 0x00289987 in wxEntry(int&, char**) () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#26 0x0817e3eb in main ()
No symbol table info available.

(gdb) thread apply all bt full
Code: [Select]
Thread 5 (Thread 0xb63e5b70 (LWP 15324)):
#0  0x00937422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x0060c829 in __lll_lock_wait () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0x00607f3b in _L_lock_752 () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#3  0x00607d51 in pthread_mutex_lock () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#4  0x002ebd1d in wxMutexInternal::Lock() () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#5  0x002ebd68 in wxMutex::Lock() () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#6  0x002ee8c2 in wxEvtHandler::AddPendingEvent(wxEvent&) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#7  0x082751e0 in CTimerThread::Entry() ()
No symbol table info available.
#8  0x002eda98 in wxThreadInternal::PthreadStart(wxThread*) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#9  0x002edafd in wxPthreadStart () from /usr/lib/libwx_baseu-2.8.so.0
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#10 0x0060580e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#11 0x006e57ee in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 3 (Thread 0xb73e8b70 (LWP 15322)):
#0  0x00937422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x0060d466 in nanosleep () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0x002f33b8 in wxMicroSleep(unsigned long) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#3  0x002f33e1 in wxMilliSleep(unsigned long) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#4  0x002eb69d in wxThread::Sleep(unsigned long) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#5  0x0813fe88 in UploadBandwidthThrottler::Entry() ()
No symbol table info available.
#6  0x002eda98 in wxThreadInternal::PthreadStart(wxThread*) ()
---Type <return> to continue, or q <return> to quit---
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#7  0x002edafd in wxPthreadStart () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#8  0x0060580e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#9  0x006e57ee in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 1 (Thread 0xb7fdd760 (LWP 15306)):
#0  0x00937422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x006434d1 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0x00646932 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0x08278df5 in OnUnhandledException() ()
No symbol table info available.
#4  0x00481415 in ?? () from /usr/lib/libstdc++.so.6
No symbol table info available.
#5  0x00481452 in std::terminate() () from /usr/lib/libstdc++.so.6
No symbol table info available.
#6  0x00481591 in __cxa_throw () from /usr/lib/libstdc++.so.6
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#7  0x00481c0f in operator new(unsigned int) () from /usr/lib/libstdc++.so.6
No symbol table info available.
#8  0x00282463 in wxObjectList::CreateNode(wxNodeBase*, wxNodeBase*, void*, wxListKey const&) () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#9  0x00294d4b in wxListBase::Append(void*) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#10 0x002ee8e0 in wxEvtHandler::AddPendingEvent(wxEvent&) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#11 0x001fa920 in wxSocketBase::OnRequest(wxSocketNotify) ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#12 0x001faa14 in wx_socket_callback () from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#13 0x001ffa8b in GSocket::Detected_Write() ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#14 0x00ec5427 in ?? () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#15 0x004fff7c in ?? () from /usr/lib/libgdk-x11-2.0.so.0
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#16 0x05b9fd5b in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#17 0x05b68e78 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
No symbol table info available.
#18 0x05b6c720 in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#19 0x05b6cb8f in g_main_loop_run () from /lib/libglib-2.0.so.0
No symbol table info available.
#20 0x06ab6419 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#21 0x00ec3c78 in wxEventLoop::Run() () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#22 0x00f56e3e in wxAppBase::MainLoop() ()
   from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#23 0x00f56a31 in wxAppBase::OnRun() () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#24 0x002897aa in wxEntry(int&, wchar_t**) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#25 0x00289987 in wxEntry(int&, char**) () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#26 0x0817e3eb in main ()
No symbol table info available.

im taking my foot off the gaspedal now...
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on December 17, 2009, 02:28:02 AM
All right good job RRM, I keep thinking amule is using too many sockets or something like that.

I need some days so I can inspect the results and think of a solution. Certainly, knowing that with a limit of 65536 aMule crashed is not helpful :(

Try the echo 2048 thing, but I highly doubt that will solve it.

By the way, when you refer to pushing the gas pedal, care to explain the settings (max connections/sec, max connections, slot, etc...) I got a little bit confused, so if you post "working settings" and "gas pedal settings" I'd appreciatte it. Sorry for that.

Maybe STU has some other idea.

I think a good idea would be to get a core dump and analyze it, but keep in mind it has the following drawbacks:
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 17, 2009, 06:59:02 AM
Quote
Try the echo 2048 thing, but I highly doubt that will solve it.

OK, but when?
In between crashes?
Or now, as aMule is running?
Just the echo, or something else after it (special run code?)

Quote
when you refer to pushing the gas pedal, care to explain the settings (max connections/sec, max connections, slot, etc...)
 I got a little bit confused, so if you post "working settings" and "gas pedal settings"

OK, sorry for that.
Working settings (as read in stats):
Code: [Select]
1 downloads: 1
active connections: 60
max. connections: no
peak connections: 70
average download rate 6 kB/s
average uploadsrate 1.9 MB/s

Gas pedal settings:
Code: [Select]
1 downloads: 8
active connections: 130
max. connections: no
peak connections: 195
average download rate 340 kB/s
average uploadsrate 1.9 MB/s


Quote
I think a good idea would be to get a core dump and analyze it, but keep in mind it has the following drawbacks:
  • Personal information about RRM will be revealed (everything that aMule knows :()
Sure, no problem.
You are not going to post it, right  ;)
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on December 17, 2009, 01:55:20 PM
Quote
Try the echo 2048 thing, but I highly doubt that will solve it.

OK, but when?
In between crashes?
Or now, as aMule is running?
Just the echo, or something else after it (special run code?)
It doesn't matter, as soon as you execute it the limit will be raised.

Quote
Quote
when you refer to pushing the gas pedal, care to explain the settings (max connections/sec, max connections, slot, etc...)
 I got a little bit confused, so if you post "working settings" and "gas pedal settings"

Sorry I wasn't clear, I'm talking about the settings as you set them in the preferences panel, not as seen in the stats.

I want this exactly again in order to try to reproduce it (I got some ideas, let's see if I have time)

Quote
Quote
I think a good idea would be to get a core dump and analyze it, but keep in mind it has the following drawbacks:
  • Personal information about RRM will be revealed (everything that aMule knows :()
Sure, no problem.
You are not going to post it, right  ;)
:) All right, anyways, getting a core dump is a last-resort measure, let's see what other thinks, I wan't to investigate more the gio crashes.[/list]
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 17, 2009, 06:27:57 PM
Quote
Try the echo 2048 thing, but I highly doubt that will solve it.

done.

Quote
I'm talking about the settings as you set them in the preferences panel, not as seen in the stats.

No difference in settings between "normal" and "stepping on the gaspedal",
for both it is:
Code: [Select]
Download bandwidth limit: 3 MB/s
Upload bandwidth limit: 3 MB/s
Max sources per downloading file: 150
Max simultaneous connections: 5000
Slot allocation: 1 kB/s

When stepping on the gaspedal, i just add a few popular files for uploading
and some downloads.
After the 3rd crash of last night,
i removed those files again. aMule has not crashed since.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on December 17, 2009, 08:54:12 PM
Quote
Try the echo 2048 thing, but I highly doubt that will solve it.

done.

Umm, you are using 5000 simultaneous connections! Try then to raise the number in the echo up to 16384. That's a lot of connections.

Quote
Quote
I'm talking about the settings as you set them in the preferences panel, not as seen in the stats.

No difference in settings between "normal" and "stepping on the gaspedal",
for both it is:
Code: [Select]
Download bandwidth limit: 3 MB/s
Upload bandwidth limit: 3 MB/s
Max sources per downloading file: 150
Max simultaneous connections: 5000
Slot allocation: 1 kB/s

When stepping on the gaspedal, i just add a few popular files for uploading
and some downloads.
After the 3rd crash of last night,
i removed those files again. aMule has not crashed since.

Good job RRM, thanks for the information. Now I see  several scenarios you may want to try:

All right, what I suggest is to perform the following test in the two previous scenarios: Go to preferences and adjust the number of connections in a binary search. That is to say, start with a very high value, let call it n. If amule crashes then try n/2. If it crashes then reduce it to n/4,  otherwise use middle value of n/2, n. They key point here is find what is to get near the number of connections in the preferences that make amule crash, in both scenarios.

Apart from that, when you get a crash, please send the output of the following commands:

Code: [Select]
$ cd /proc/`pidof amule`
$ ls fd | wc
$ cd net
$ cat sockstat
$ cat sockstat6
$  wc tcp tcp6 udp udp6
Note that pidof amule should return the pid number you see in ps ax, maybe you need to use pidof gdb amule. This will give us detailed information about what sockets is amule using. None of those commands will reveal personal information about you.

Thanks for your patient RRM, I'm having fun with this bug!

Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on December 17, 2009, 10:36:01 PM
From the last backtrace it looks to me like the upload thread is posting events like mad and the main thread doesn't get along with processing them anymore (so it's not a matter of running out of sockets). I think the core timer needs some throttling although it's not a recursion problem as I thought.
Quote
Huh?
Still no symbol table info available...
Symbols are for aMule and that's all wx or library code. No problem.
Quote
Maybe STU has some other idea.
Btw - it's just "Stu" (short for "Stuart"). STU is a secure telephone unit (according to Tom Clancy novels at least...)
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 18, 2009, 05:15:53 PM
Quote from: btkaos
Umm, you are using 5000 simultaneous connections! Try then to raise the number in the echo up to 16384. That's a lot of connections.

Isnt it just a setting?
5000 connections maximally
I think i never get near that number...

Quote
  • Set ulimit to 65536 and max to 16386, let's call this scenario non-limited

Huh, didnt i do th e first thing already by typing
Code: [Select]
$ sudo bash -c "ulimit -n 65536; ulimit -n; su -m -c 'ulimit -n; id -nu' \"`id -un`\""?
7500 max connections seems to be the maximum setting possible.

Quote
All right, what I suggest is to perform the following test in the two previous scenarios: Go to preferences and adjust the number of connections in a binary search. That is to say, start with a very high value, let call it n. If amule crashes then try n/2. If it crashes then reduce it to n/4,  otherwise use middle value of n/2, n. They key point here is find what is to get near the number of connections in the preferences that make amule crash, in both scenarios.

I did that already a while ago.
Only if i set the maximum connections lower than 50, it has a positive effect.
However, this even affects my single download (max connections = download + upload connections)
and of course seriously diminishes uploading (people are waiting in queue)

Quote
Apart from that, when you get a crash, please send the output of the following commands:

Code: [Select]
$ cd /proc/`pidof amule`
$ ls fd | wc
$ cd net
$ cat sockstat
$ cat sockstat6
$  wc tcp tcp6 udp udp6
Note that pidof amule should return the pid number you see in ps ax, maybe you need to use pidof gdb amule.

OK, i will.
So far, so good; aMule has not crashed for 29 hours,
so i will have to step on the gas again...

Quote
Thanks for your patient RRM, I'm having fun with this bug!

Actually, i would really like to thank you guys for your patience and help.
The pleasure is all mine and im very grateful for the time and effort that you put into this (and in developing aMule in general)
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 18, 2009, 05:17:02 PM
Quote from: Stu Redman
Btw - it's just "Stu" (short for "Stuart"). STU is a secure telephone unit (according to Tom Clancy novels at least...)

 ;D
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 18, 2009, 06:40:00 PM
Another high VSZ crash,
after just over one hour:

This was before the crash
Code: [Select]
$ cd /proc/`pidof amule`
/proc/18589$ ls fd | wc
    107     107     319
/proc/18589$ cd net
/proc/18589/net$ cat sockstat
sockets: used 770
TCP: inuse 91 orphan 4 tw 2 alloc 92 mem 2403
UDP: inuse 5 mem 4
UDPLITE: inuse 0
RAW: inuse 0
FRAG: inuse 0 memory 0
/proc/18589/net$ cat sockstat6
TCP6: inuse 1
UDP6: inuse 0
UDPLITE6: inuse 0
RAW6: inuse 0
FRAG6: inuse 0 memory 0
/proc/18589/net$ wc tcp tcp6 udp udp6
95 1610 14250 tcp
2 29 313 tcp6
6 80 768 udp
1 15 163 udp6
104 1734 15494 total
/proc/18589/net$

a little later:
Code: [Select]
$ cd /proc/`pidof amule`
/proc/18589$ ls fd | wc
    159     159     526
/proc/18589$ cd net
/proc/18589/net$ cat sockstat
sockets: used 840
TCP: inuse 147 orphan 6 tw 2 alloc 148 mem 2951
UDP: inuse 5 mem 4
UDPLITE: inuse 0
RAW: inuse 0
FRAG: inuse 0 memory 0
/proc/18589/net$ cat sockstat6
TCP6: inuse 1
UDP6: inuse 0
UDPLITE6: inuse 0
RAW6: inuse 0
FRAG6: inuse 0 memory 0
/proc/18589/net$ wc tcp tcp6 udp udp6
151 2552 22650 tcp
2 29 313 tcp6
6 80 768 udp
1 15 163 udp6
160 2676 23894 total

GDB aMule,
also before the crash:
Code: [Select]
$ cd /proc/`pidof gdb amule`
/proc/18587$ ls fd | wc
      6       6      12
/proc/18587$ cd net
/proc/18587/net$ cat sockstat
sockets: used 819
TCP: inuse 121 orphan 1 tw 8 alloc 122 mem 2615
UDP: inuse 5 mem 4
UDPLITE: inuse 0
RAW: inuse 0
FRAG: inuse 0 memory 0
/proc/18587/net$ cat sockstat6
TCP6: inuse 1
UDP6: inuse 0
UDPLITE6: inuse 0
RAW6: inuse 0
FRAG6: inuse 0 memory 0
/18587/net$ wc tcp tcp6 udp udp6
120 1975 18000 tcp
2 29 313 tcp6
6 80 768 udp
1 15 163 udp6
129 2099 19244 total

a little later (still before the crash)
Code: [Select]
$ cd /proc/`pidof gdb amule`
/proc/18587$ ls fd | wc
      6       6      12
/proc/18587$ cd net
/proc/18587/net$ cat sockstat
sockets: used 848
TCP: inuse 150 orphan 1 tw 0 alloc 151 mem 2993
UDP: inuse 5 mem 4
UDPLITE: inuse 0
RAW: inuse 0
FRAG: inuse 0 memory 0
/proc/18587/net$ cat sockstat6
TCP6: inuse 1
UDP6: inuse 0
UDPLITE6: inuse 0
RAW6: inuse 0
FRAG6: inuse 0 memory 0
/proc/18587/net$ wc tcp tcp6 udp udp6
151 2562 22650 tcp
2 29 313 tcp6
6 80 768 udp
1 15 163 udp6
160 2686 23894 total

$ ps axl | grep amule
Code: [Select]
0  1000 18589 18587  20   0 159084 104872 -     Rl+  pts/0     32:59 /usr/local/stow/amule-stu-opt-debug/bin/amule
0  1000 18589 18587  20   0 163324 108792 log_wa Dl+ pts/0     36:54 /usr/local/stow/amule-stu-opt-debug/bin/amule
0  1000 18589 18587  20   0 165748 111064 futex_ Rl+ pts/0     43:45 /usr/local/stow/amule-stu-opt-debug/bin/amule
0  1000 18589 18587  20   0 168376 113616 futex_ Sl+ pts/0     55:42 /usr/local/stow/amule-stu-opt-debug/bin/amule
0  1000 18589 18587  20   0 3145724 2736672 ptrace Tl pts/0    66:19 /usr/local/stow/amule-stu-opt-debug/bin/amule

And after the crash:
Code: [Select]
$ cd /proc/`pidof amule`
/proc/18589$ ls fd | wc
    162     162     540
/proc/18589$ cd net
/proc/18589/net$ cat sockstat
sockets: used 842
TCP: inuse 105 orphan 0 tw 0 alloc 150 mem 3923
UDP: inuse 5 mem 31
UDPLITE: inuse 0
RAW: inuse 0
FRAG: inuse 0 memory 0
/proc/18589/net$ cat sockstat6
TCP6: inuse 1
UDP6: inuse 0
UDPLITE6: inuse 0
RAW6: inuse 0
FRAG6: inuse 0 memory 0
/proc/18589/net$ wc tcp tcp6 udp udp6
122 1989 18300 tcp
2 29 313 tcp6
6 80 768 udp
1 15 163 udp6
131 2113 19544 total

Code: [Select]
$ cd /proc/`pidof gdb amule`
/proc/18587$ ls fd | wc
      6       6      12
/proc/18587$ cd net
/proc/18587/net$ cat sockstat
sockets: used 842
TCP: inuse 105 orphan 0 tw 0 alloc 150 mem 3941
UDP: inuse 5 mem 31
UDPLITE: inuse 0
RAW: inuse 0
FRAG: inuse 0 memory 0
/proc/18587/net$ cat sockstat6
TCP6: inuse 1
UDP6: inuse 0
UDPLITE6: inuse 0
RAW6: inuse 0
FRAG6: inuse 0 memory 0
/proc/18587/net$ wc tcp tcp6 udp udp6
121 1977 18150 tcp
2 29 313 tcp6
6 80 768 udp
1 15 163 udp6
130 2101 19394 total
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 18, 2009, 06:44:29 PM
Terminated after throwing an instance of 'std::bad_alloc'
   what(): std::bad_alloc
Error while getting symbol table : Memory exhausted   backtrace:
Code: [Select]
[2] ?? in /usr/lib/libstdc++.so.6 [0x9a3415]
[3] ?? in /usr/lib/libstdc++.so.6 [0x9a3452]
[4] ?? in /usr/lib/libstdc++.so.6 [0x9a3591]
[5] operator new(unsigned int) in /usr/lib/libstdc++.so.6[0x9a3c0f]
[6] wxSocketEvent::Clone() const in /usr/lib/libwx_baseu_net-2.8.so.0[0x7277f9]
[7] wxEvtHandler::AddPendingEvent(wxEvent&) in /usr/lib/libwx_baseu-2.8.so.0[0x84b888]
[8] wxSocketBase::OnRequest(wxSocketNotify) in /usr/lib/libwx_baseu_net-2.8.so.0[0x726920]
[9] wx_socket_callback in /usr/lib/libwx_baseu_net-2.8.so.0[0x726a14]
[10] GSocket::Detected_Write() in /usr/lib/libwx_baseu_net-2.8.so.0[0x72ba8b]
[11] ?? in /usr/lib/libwx_gtk2u_core-2.8.so.0 [0xbcd427]
[12] ?? in /usr/lib/libgdk-x11-2.0.so.0 [0x3b95f7c]
[13] ?? in /lib/libglib-2.0.so.0 [0x657dd5b]
[14] g_main_context_dispatch in /lib/libglib-2.0.so.0[0x6546e78]
[15] ?? in /lib/libglib-2.0.so.0 [0x654a720]
[16] g_main_loop_run in /lib/libglib-2.0.so.0[0x654ab8f]
[17] gtk_main in /usr/lib/libgtk-x11-2.0.so.0[0x1072419]
[18] wxEventLoop::Run() in /usr/lib/libwx_gtk2u_core-2.8.so.0[0xbcbc78]
[19] wxAppBase::MainLoop() in /usr/lib/libwx_gtk2u_core-2.8.so.0[0xc5ee3e]
[20] wxAppBase::OnRun() in /usr/lib/libwx_gtk2u_core-2.8.so.0[0xc5ea31]
[21] wxEntry(int&, wchar_t**) in /usr/lib/libwx_baseu-2.8.so.0[0x7e67aa]
[22] wxEntry(int&, char**) in /usr/lib/libwx_baseu-2.8.so.0[0x7e6987]
[23] ?? in /usr/local/stow/amule-stu-opt-debug/bin/amule [0x817e3eb]
[24] __libc_start_main in /lib/tls/i686/cmov/libc.so.6[0xe0db56]
[25]  in start.S:122


Program received signal SIGABRT, Aborted.
0x00156422 in __kernel_vsyscall ()
(gdb) bt full
Code: [Select]
#0  0x00156422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x00e214d1 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0x00e24932 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0x08278df5 in OnUnhandledException() ()
No symbol table info available.
#4  0x009a3415 in ?? () from /usr/lib/libstdc++.so.6
No symbol table info available.
#5  0x009a3452 in std::terminate() () from /usr/lib/libstdc++.so.6
No symbol table info available.
#6  0x009a3591 in __cxa_throw () from /usr/lib/libstdc++.so.6
No symbol table info available.
#7  0x009a3c0f in operator new(unsigned int) () from /usr/lib/libstdc++.so.6
No symbol table info available.
#8  0x007277f9 in wxSocketEvent::Clone() const ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#9  0x0084b888 in wxEvtHandler::AddPendingEvent(wxEvent&) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#10 0x00726920 in wxSocketBase::OnRequest(wxSocketNotify) ()
---Type <return> to continue, or q <return> to quit---
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#11 0x00726a14 in wx_socket_callback () from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#12 0x0072ba8b in GSocket::Detected_Write() ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#13 0x00bcd427 in ?? () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#14 0x03b95f7c in ?? () from /usr/lib/libgdk-x11-2.0.so.0
No symbol table info available.
#15 0x0657dd5b in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#16 0x06546e78 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
No symbol table info available.
#17 0x0654a720 in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#18 0x0654ab8f in g_main_loop_run () from /lib/libglib-2.0.so.0
No symbol table info available.
#19 0x01072419 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#20 0x00bcbc78 in wxEventLoop::Run() () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#21 0x00c5ee3e in wxAppBase::MainLoop() ()
   from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#22 0x00c5ea31 in wxAppBase::OnRun() () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#23 0x007e67aa in wxEntry(int&, wchar_t**) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#24 0x007e6987 in wxEntry(int&, char**) () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#25 0x0817e3eb in main ()
No symbol table info available.

(gdb) thread apply all bt full
Code: [Select]
Thread 5 (Thread 0xb63e5b70 (LWP 18605)):
#0  0x00156422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x0024d142 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
   from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0x00848854 in wxConditionInternal::WaitTimeout(unsigned long) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#3  0x008488af in wxCondition::WaitTimeout(unsigned long) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#4  0x00849aa4 in wxSemaphoreInternal::WaitTimeout(unsigned long) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#5  0x00849b2f in wxSemaphore::WaitTimeout(unsigned long) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#6  0x082751c2 in CTimerThread::Entry() ()
No symbol table info available.
#7  0x0084aa98 in wxThreadInternal::PthreadStart(wxThread*) ()
   from /usr/lib/libwx_baseu-2.8.so.0
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#8  0x0084aafd in wxPthreadStart () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#9  0x0024880e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#10 0x00ec37ee in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 3 (Thread 0xb73e8b70 (LWP 18603)):
#0  0x00156422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x00250466 in nanosleep () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0x008503b8 in wxMicroSleep(unsigned long) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#3  0x008503e1 in wxMilliSleep(unsigned long) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#4  0x0084869d in wxThread::Sleep(unsigned long) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#5  0x0813fe88 in UploadBandwidthThrottler::Entry() ()
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#6  0x0084aa98 in wxThreadInternal::PthreadStart(wxThread*) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#7  0x0084aafd in wxPthreadStart () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#8  0x0024880e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#9  0x00ec37ee in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 1 (Thread 0xb7fdd760 (LWP 18589)):
#0  0x00156422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x00e214d1 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0x00e24932 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0x08278df5 in OnUnhandledException() ()
No symbol table info available.
#4  0x009a3415 in ?? () from /usr/lib/libstdc++.so.6
No symbol table info available.
#5  0x009a3452 in std::terminate() () from /usr/lib/libstdc++.so.6
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#6  0x009a3591 in __cxa_throw () from /usr/lib/libstdc++.so.6
No symbol table info available.
#7  0x009a3c0f in operator new(unsigned int) () from /usr/lib/libstdc++.so.6
No symbol table info available.
#8  0x007277f9 in wxSocketEvent::Clone() const ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#9  0x0084b888 in wxEvtHandler::AddPendingEvent(wxEvent&) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#10 0x00726920 in wxSocketBase::OnRequest(wxSocketNotify) ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#11 0x00726a14 in wx_socket_callback () from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#12 0x0072ba8b in GSocket::Detected_Write() ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#13 0x00bcd427 in ?? () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#14 0x03b95f7c in ?? () from /usr/lib/libgdk-x11-2.0.so.0
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#15 0x0657dd5b in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#16 0x06546e78 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
No symbol table info available.
#17 0x0654a720 in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#18 0x0654ab8f in g_main_loop_run () from /lib/libglib-2.0.so.0
No symbol table info available.
#19 0x01072419 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#20 0x00bcbc78 in wxEventLoop::Run() () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#21 0x00c5ee3e in wxAppBase::MainLoop() ()
   from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#22 0x00c5ea31 in wxAppBase::OnRun() () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#23 0x007e67aa in wxEntry(int&, wchar_t**) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#24 0x007e6987 in wxEntry(int&, char**) () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#25 0x0817e3eb in main ()
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 18, 2009, 09:47:06 PM
And another high VSZ crash:
$ ps axl | grep amule
Code: [Select]
0  1000 19635 19605  20   0  37920  2620 poll_s S+   pts/0      0:00 gdb amule
0  1000 19637 19635  20   0 3145724 2718752 ptrace Tl pts/0   145:26 /usr/local/stow/amule-stu-opt-debug/bin/amule
0  1000 20162 20117  20   0   3036   796 pipe_w S+   pts/1      0:00 grep amule


(process:19637): GLib-ERROR (recursed) **: /build/buildd/glib2.0-2.22.2/glib/gmem.c:175: failed to allocate 32 bytes
aborting...

Program received signal SIGABRT, Aborted.
[Switching to Thread 0xb73e8b70 (LWP 19655)]
0x00240422 in __kernel_vsyscall ()
(gdb) bt full
Code: [Select]
#0  0x00240422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x00f944d1 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0x00f97932 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0x01af0036 in g_logv () from /lib/libglib-2.0.so.0
No symbol table info available.
#4  0x01af0066 in g_log () from /lib/libglib-2.0.so.0
No symbol table info available.
#5  0x01aee219 in g_realloc () from /lib/libglib-2.0.so.0
No symbol table info available.
#6  0x01b091cf in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#7  0x01b09d48 in g_string_insert_len () from /lib/libglib-2.0.so.0
No symbol table info available.
#8  0x01b0a12c in g_string_append () from /lib/libglib-2.0.so.0
No symbol table info available.
#9  0x01aef661 in g_log_default_handler () from /lib/libglib-2.0.so.0
No symbol table info available.
#10 0x01aefbfa in g_logv () from /lib/libglib-2.0.so.0
No symbol table info available.
#11 0x01af0066 in g_log () from /lib/libglib-2.0.so.0
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#12 0x01aee295 in g_malloc0 () from /lib/libglib-2.0.so.0
No symbol table info available.
#13 0x01ae5570 in g_source_new () from /lib/libglib-2.0.so.0
No symbol table info available.
#14 0x01b1ce89 in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#15 0x01ada819 in g_io_create_watch () from /lib/libglib-2.0.so.0
No symbol table info available.
#16 0x01add703 in g_io_add_watch_full () from /lib/libglib-2.0.so.0
No symbol table info available.
#17 0x002e1e8b in gdk_input_add_full () from /usr/lib/libgdk-x11-2.0.so.0
No symbol table info available.
#18 0x002e1ede in gdk_input_add () from /usr/lib/libgdk-x11-2.0.so.0
No symbol table info available.
#19 0x00ab56c5 in GSocketGUIFunctionsTableConcrete::Install_Callback(GSocket*, GSocketEvent) () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#20 0x003a975d in GSocket::Enable(GSocketEvent) ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#21 0x003aab2a in GSocket::Write(char const*, int) ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#22 0x003a5db6 in wxSocketBase::_Write(void const*, unsigned int) ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#23 0x003a5f27 in wxSocketBase::Write(void const*, unsigned int) ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#24 0x0823832d in CSocketClientProxy::Write(void const*, unsigned int) ()
No symbol table info available.
#25 0x080f017c in CEncryptedStreamSocket::Write(void const*, unsigned int) ()
No symbol table info available.
#26 0x080ef477 in CEMSocket::Send(unsigned int, unsigned int, bool) ()
No symbol table info available.
#27 0x080b6c44 in CClientTCPSocket::SendFileAndControlData(unsigned int, unsigned int) ()
No symbol table info available.
#28 0x0813f50a in UploadBandwidthThrottler::Entry() ()
No symbol table info available.
#29 0x00f00a98 in wxThreadInternal::PthreadStart(wxThread*) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#30 0x00f00afd in wxPthreadStart () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#31 0x002b180e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#32 0x010367ee in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
(gdb) thread apply all bt full
Code: [Select]

Thread 5 (Thread 0xb63e5b70 (LWP 19657)):
#0  0x00240422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x002b8829 in __lll_lock_wait () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0x002b3f4a in _L_lock_832 () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#3  0x002b3dc8 in pthread_mutex_lock () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#4  0x0106c7f9 in dl_iterate_phdr () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#5  0x002366ff in _Unwind_Find_FDE () from /lib/libgcc_s.so.1
No symbol table info available.
#6  0x00233d4d in ?? () from /lib/libgcc_s.so.1
No symbol table info available.
#7  0x00234be0 in _Unwind_RaiseException () from /lib/libgcc_s.so.1
No symbol table info available.
#8  0x00904584 in __cxa_throw () from /usr/lib/libstdc++.so.6
No symbol table info available.
#9  0x00904c0f in operator new(unsigned int) () from /usr/lib/libstdc++.so.6
No symbol table info available.
#10 0x00e95463 in wxObjectList::CreateNode(wxNodeBase*, wxNodeBase*, void*, wxLi---Type <return> to continue, or q <return> to quit---
stKey const&) () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#11 0x00ea7d4b in wxListBase::Append(void*) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#12 0x00f018b2 in wxEvtHandler::AddPendingEvent(wxEvent&) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#13 0x082751e0 in CTimerThread::Entry() ()
No symbol table info available.
#14 0x00f00a98 in wxThreadInternal::PthreadStart(wxThread*) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#15 0x00f00afd in wxPthreadStart () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#16 0x002b180e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#17 0x010367ee in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 3 (Thread 0xb73e8b70 (LWP 19655)):
#0  0x00240422 in __kernel_vsyscall ()
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#1  0x00f944d1 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0x00f97932 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0x01af0036 in g_logv () from /lib/libglib-2.0.so.0
No symbol table info available.
#4  0x01af0066 in g_log () from /lib/libglib-2.0.so.0
No symbol table info available.
#5  0x01aee219 in g_realloc () from /lib/libglib-2.0.so.0
No symbol table info available.
#6  0x01b091cf in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#7  0x01b09d48 in g_string_insert_len () from /lib/libglib-2.0.so.0
No symbol table info available.
#8  0x01b0a12c in g_string_append () from /lib/libglib-2.0.so.0
No symbol table info available.
#9  0x01aef661 in g_log_default_handler () from /lib/libglib-2.0.so.0
No symbol table info available.
#10 0x01aefbfa in g_logv () from /lib/libglib-2.0.so.0
No symbol table info available.
#11 0x01af0066 in g_log () from /lib/libglib-2.0.so.0
No symbol table info available.
#12 0x01aee295 in g_malloc0 () from /lib/libglib-2.0.so.0
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#13 0x01ae5570 in g_source_new () from /lib/libglib-2.0.so.0
No symbol table info available.
#14 0x01b1ce89 in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#15 0x01ada819 in g_io_create_watch () from /lib/libglib-2.0.so.0
No symbol table info available.
#16 0x01add703 in g_io_add_watch_full () from /lib/libglib-2.0.so.0
No symbol table info available.
#17 0x002e1e8b in gdk_input_add_full () from /usr/lib/libgdk-x11-2.0.so.0
No symbol table info available.
#18 0x002e1ede in gdk_input_add () from /usr/lib/libgdk-x11-2.0.so.0
No symbol table info available.
#19 0x00ab56c5 in GSocketGUIFunctionsTableConcrete::Install_Callback(GSocket*, GSocketEvent) () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#20 0x003a975d in GSocket::Enable(GSocketEvent) ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#21 0x003aab2a in GSocket::Write(char const*, int) ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#22 0x003a5db6 in wxSocketBase::_Write(void const*, unsigned int) ()
---Type <return> to continue, or q <return> to quit---
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#23 0x003a5f27 in wxSocketBase::Write(void const*, unsigned int) ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#24 0x0823832d in CSocketClientProxy::Write(void const*, unsigned int) ()
No symbol table info available.
#25 0x080f017c in CEncryptedStreamSocket::Write(void const*, unsigned int) ()
No symbol table info available.
#26 0x080ef477 in CEMSocket::Send(unsigned int, unsigned int, bool) ()
No symbol table info available.
#27 0x080b6c44 in CClientTCPSocket::SendFileAndControlData(unsigned int, unsigned int) ()
No symbol table info available.
#28 0x0813f50a in UploadBandwidthThrottler::Entry() ()
No symbol table info available.
#29 0x00f00a98 in wxThreadInternal::PthreadStart(wxThread*) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#30 0x00f00afd in wxPthreadStart () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#31 0x002b180e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#32 0x010367ee in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 1 (Thread 0xb7fdd760 (LWP 19637)):
#0  0x0106c8e8 in dl_iterate_phdr () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#1  0x002366ff in _Unwind_Find_FDE () from /lib/libgcc_s.so.1
No symbol table info available.
#2  0x00233d4d in ?? () from /lib/libgcc_s.so.1
No symbol table info available.
#3  0x00234be0 in _Unwind_RaiseException () from /lib/libgcc_s.so.1
No symbol table info available.
#4  0x00904584 in __cxa_throw () from /usr/lib/libstdc++.so.6
No symbol table info available.
#5  0x00904c0f in operator new(unsigned int) () from /usr/lib/libstdc++.so.6
No symbol table info available.
#6  0x00e95463 in wxObjectList::CreateNode(wxNodeBase*, wxNodeBase*, void*, wxListKey const&) () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#7  0x00ea7d4b in wxListBase::Append(void*) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#8  0x00f018b2 in wxEvtHandler::AddPendingEvent(wxEvent&) ()
---Type <return> to continue, or q <return> to quit---
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#9  0x003a6920 in wxSocketBase::OnRequest(wxSocketNotify) ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#10 0x003a6a14 in wx_socket_callback () from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#11 0x003aba8b in GSocket::Detected_Write() ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
No symbol table info available.
#12 0x00ab5427 in ?? () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#13 0x002e1f7c in ?? () from /usr/lib/libgdk-x11-2.0.so.0
No symbol table info available.
#14 0x01b1cd5b in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#15 0x01ae5e78 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
No symbol table info available.
#16 0x01ae9720 in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#17 0x01ae9b8f in g_main_loop_run () from /lib/libglib-2.0.so.0
No symbol table info available.
#18 0x04704419 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#19 0x00ab3c78 in wxEventLoop::Run() () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#20 0x00b46e3e in wxAppBase::MainLoop() ()
   from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#21 0x00b46a31 in wxAppBase::OnRun() () from /usr/lib/libwx_gtk2u_core-2.8.so.0
No symbol table info available.
#22 0x00e9c7aa in wxEntry(int&, wchar_t**) ()
   from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#23 0x00e9c987 in wxEntry(int&, char**) () from /usr/lib/libwx_baseu-2.8.so.0
No symbol table info available.
#24 0x0817e3eb in main ()
No symbol table info available.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 18, 2009, 09:55:25 PM
Code: [Select]
$ cd /proc/`pidof amule`
/proc/19637$ ls fd | wc
    136     136     437
/proc/19637$ cd net
/proc/19637/net$ cat sockstat
sockets: used 816
TCP: inuse 88 orphan 0 tw 0 alloc 125 mem 3543
UDP: inuse 5 mem 31
UDPLITE: inuse 0
RAW: inuse 0
FRAG: inuse 0 memory 0
/proc/19637/net$ cat sockstat6
TCP6: inuse 1
UDP6: inuse 0
UDPLITE6: inuse 0
RAW6: inuse 0
FRAG6: inuse 0 memory 0
/proc/19637/net$ wc tcp tcp6 udp udp6
105 1700 15750 tcp
2 29 313 tcp6
6 80 768 udp
1 15 163 udp6
114 1824 16994 total

and gdb

Code: [Select]
$ cd /proc/`pidof gdb amule`
/proc/19635$ ls fd | wc
      6       6      12
/proc/19635$ cd net
/proc/19635/net$ cat sockstat
sockets: used 816
TCP: inuse 88 orphan 0 tw 0 alloc 125 mem 3543
UDP: inuse 5 mem 31
UDPLITE: inuse 0
RAW: inuse 0
FRAG: inuse 0 memory 0
/proc/19635/net$ cat sockstat6
TCP6: inuse 1
UDP6: inuse 0
UDPLITE6: inuse 0
RAW6: inuse 0
FRAG6: inuse 0 memory 0
/proc/19635/net$ wc tcp tcp6 udp udp6
104 1688 15600 tcp
2 29 313 tcp6
6 80 768 udp
1 15 163 udp6
113 1812 16844 total

taking my foot off the gaspedal again...
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on December 19, 2009, 06:18:01 PM
All right, thanks RRM, I guess this new information rules out problem with an excessive number of sockets/files.

I don't need the /proc information anymore, the one you posted is enough.

I'm still clueless, let's see if I can dig a little bit.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on December 19, 2009, 06:37:29 PM
Let's try something else. Maybe it's a problem in wx's network code? I've made a test build with wx 2.9 (http://www.megaupload.com/?d=IWX6DM2T) which has it's network code widely rewritten. Build system is Karmic 32.
RRM please try it out and tell me if it crashes too.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 19, 2009, 10:23:59 PM
I've made a test build with wx 2.9 (http://www.megaupload.com/?d=IWX6DM2T) ...
RRM please try it out

OK, ive downloaded it.
Sorry, for asking, but how do i need to install it?
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on December 19, 2009, 11:25:20 PM
Unpack it with gzip -d amule.gz and just run it with ./amule  :)
(If you want national language support you have to move it to the place where your build before installed it. And there is a visual glitch that the category tabs are not displayed, but that shouldn't affect the transfer problem.)
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 20, 2009, 03:11:11 PM
I've made a test build with wx 2.9 (http://www.megaupload.com/?d=IWX6DM2T)

Thats weird.
I unpacked and moved the file into my ~/tmp file,
which now contains:
amule-stu (folder)
amule-upstream (folder)
amule (the executable you just supplied me with)
and called: ~/tmp$ amule

aMule starts running, but it says: "Initialising aMule SVN using wxGTK2 v2.8.10 (Snapshot: rev. 9901)"
which should be v2.9, no?
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: wuischke on December 20, 2009, 03:16:57 PM
"amule" will call your installed version of aMule. Please execute "./amule", this will execute aMule in your current working directory (i.e. ~/tmp in your case).
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 20, 2009, 03:18:33 PM
Thank you!
I tried that, but then it said: bash: ./amule: Permission denied
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: Vollstrecker on December 20, 2009, 03:24:06 PM
You have to permit execution for this file. Just do "chmod u+x amule" and try again.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 20, 2009, 03:31:55 PM
Cool, that works!!!

"Initialising aMule SVN using wxGTK2 v2.9.1 (Debugging) (Snapshot: rev. 9900)"
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 20, 2009, 04:51:37 PM
Code: [Select]
Terminated after throwing an instance of 'std::bad_alloc'
what(): std::bad_alloc
Aborted

The wxGTK2 v2.9.1 amule version has crashed.
I dont know whether its a high VSZ crash, because i cannot get it from
$ ps axl | grep amule
just
Code: [Select]
0  1000 12846 12671  20   0   3036   792 pipe_w S+   pts/1      0:00 grep amule
while i could get it before the crash (to monitor the build-up of VSZ)

And i also dont have a backtrace because i didnt use (gdb).
Can i do that with this version?
Maybe by calling something like $ gdb ./amule ?

Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 20, 2009, 04:53:52 PM
Quote
And i dont have a backtrace because i didnt use (gdb).
Can i do that with this version?
Maybe by calling something like $ gdb ./amule ?

Ha haaaa, yes, that works!!!  8)

... moving on to the next crash...

but how to get the "ps axl | grep amule" after the crash?
why couldnt i get it?
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on December 20, 2009, 05:15:16 PM
Can i do that with this version?
Maybe by calling something like $ gdb ./amule ?
Sure, please try it.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 20, 2009, 05:18:20 PM
Yes, i did that already. thank you.
and, stupid me...
it should be "ps axl | grep ./amule" !!!
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: wuischke on December 20, 2009, 05:36:45 PM
grep amule will actually work, too. (grep looks for lines containing the word "amule" and "./amule" contains "amule")

You can't get this information after the crash, because the application doesn't run any more. If it crashes inside gdb, everything will be saved as it was when it crashed and you can check memory usage.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 20, 2009, 05:46:59 PM
Aaaaah, great tool!!
Thank you for the info!
nice stuff...
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 20, 2009, 06:02:42 PM
Hey, we got ourselves a low-VSZ crash for a change...

$ ps axl | grep amule
Code: [Select]
0  1000 12896 12864  20   0  88344 40416 poll_s S+   pts/0      0:01 gdb ./amule
0  1000 12898 12896  20   0 181920 53496 ptrace Tl   pts/0     19:45 /home/rrm/tmp/amule
0  1000 13222 13076  20   0   3036   788 -      R+   pts/1      0:00 grep amule

Program received signal SIGSEGV, Segmentation fault.
0x085acf43 in wxSocket_GDK_Input ()
(gdb) bt full
Code: [Select]
#0  0x085acf43 in wxSocket_GDK_Input ()
No symbol table info available.
#1  0x009fcf7c in ?? () from /usr/lib/libgdk-x11-2.0.so.0
No symbol table info available.
#2  0x003a1d5b in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#3  0x0036ae78 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
No symbol table info available.
#4  0x0036e720 in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#5  0x0036eb8f in g_main_loop_run () from /lib/libglib-2.0.so.0
No symbol table info available.
#6  0x00f21419 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#7  0x085a9816 in wxGUIEventLoop::Run() ()
No symbol table info available.
#8  0x08630190 in wxAppConsoleBase::MainLoop() ()
No symbol table info available.
#9  0x086ae605 in wxEntry(int&, wchar_t**) ()
No symbol table info available.
#10 0x0824147b in main (argc=1, argv=0xbffff504)
    at ../../trunk/src/amule-gui.cpp:94
No locals.

(gdb) thread apply all bt full
Code: [Select]
Thread 6 (Thread 0xb1a14b70 (LWP 12930)):
#0  0x00316422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x032caba6 in poll () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0x016d3cc2 in ?? () from /usr/lib/libpulse.so.0
No symbol table info available.
#3  0x016c0e09 in pa_mainloop_poll () from /usr/lib/libpulse.so.0
No symbol table info available.
#4  0x016c2c23 in pa_mainloop_iterate () from /usr/lib/libpulse.so.0
No symbol table info available.
#5  0x016c2cf4 in pa_mainloop_run () from /usr/lib/libpulse.so.0
No symbol table info available.
#6  0x016d3bc3 in ?? () from /usr/lib/libpulse.so.0
No symbol table info available.
#7  0x02029ac2 in ?? () from /usr/lib/libpulsecommon-0.9.19.so
No symbol table info available.
#8  0x0031e80e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#9  0x032d87ee in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

---Type <return> to continue, or q <return> to quit---
Thread 5 (Thread 0xb6be9b70 (LWP 12929)):
#0  0x00316422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x00323142 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
   from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0x0875cbee in wxConditionInternal::WaitTimeout(unsigned long) ()
No symbol table info available.
#3  0x0875d8b3 in wxSemaphoreInternal::WaitTimeout(unsigned long) ()
No symbol table info available.
#4  0x083600a2 in CTimerThread::Entry() ()
No symbol table info available.
#5  0x0876273d in wxThreadInternal::PthreadStart(wxThread*) ()
No symbol table info available.
#6  0x0031e80e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#7  0x032d87ee in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 3 (Thread 0xb7eb0b70 (LWP 12925)):
#0  0x00316422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x00326466 in nanosleep () from /lib/tls/i686/cmov/libpthread.so.0
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#2  0x0876489c in wxMicroSleep(unsigned long) ()
No symbol table info available.
#3  0x081cf044 in UploadBandwidthThrottler::Entry (this=0x9575798)
    at ../../trunk/src/UploadBandwidthThrottler.cpp:320
        timeSinceLastLoop = 2
        minFragSize = 1300
        doubleSendSize = 2600
        bytesToSpend = 51200
        sleepTime = 25
        thisLoopTick = 2901404066
        realBytesToSpend = 35840999
        extraSleepTime = 25
        lastLoopTick = 2901404066
        allowedDataRate = <value optimized out>
        rememberedSlotCounter = 56
        sendLock = {m_isOk = 88, m_mutex = @0x807d3d6}
#4  0x0876273d in wxThreadInternal::PthreadStart(wxThread*) ()
No symbol table info available.
#5  0x0031e80e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#6  0x032d87ee in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
---Type <return> to continue, or q <return> to quit---

Thread 1 (Thread 0xb7fdf7e0 (LWP 12898)):
#0  0x085acf43 in wxSocket_GDK_Input ()
No symbol table info available.
#1  0x009fcf7c in ?? () from /usr/lib/libgdk-x11-2.0.so.0
No symbol table info available.
#2  0x003a1d5b in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#3  0x0036ae78 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
No symbol table info available.
#4  0x0036e720 in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#5  0x0036eb8f in g_main_loop_run () from /lib/libglib-2.0.so.0
No symbol table info available.
#6  0x00f21419 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#7  0x085a9816 in wxGUIEventLoop::Run() ()
No symbol table info available.
#8  0x08630190 in wxAppConsoleBase::MainLoop() ()
No symbol table info available.
#9  0x086ae605 in wxEntry(int&, wchar_t**) ()
No symbol table info available.
#10 0x0824147b in main (argc=1, argv=0xbffff504)
---Type <return> to continue, or q <return> to quit---
    at ../../trunk/src/amule-gui.cpp:94
No locals.

Do you need another bt from ./amule?
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 20, 2009, 06:08:30 PM
oh shit, i forgot to do the "$ cat /proc/PID/maps"
(for the ? in the first few lines of the bt)
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on December 20, 2009, 06:39:00 PM
OK, I think wx 2.9 is no help either.  :(
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 20, 2009, 06:59:14 PM
Sorry about that...
On a lighter note,  ;D wanne see a crash in slow motion?  ;D
As aMule started freezin a bit, i grabbed the camera and took this shot:

ps axl | grep amule

Code: [Select]
0  1000 13277 13275  20   0 1332184 1212796 -   Rl+  pts/0     21:14 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 1349344 1230020 -   Rl+  pts/0     21:15 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 1370068 1250740 -   Rl+  pts/0     21:17 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 1395148 1275760 -   Rl+  pts/0     21:19 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 1409800 1290500 -   Rl+  pts/0     21:20 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 1426828 1307436 -   Rl+  pts/0     21:21 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 1449268 1329860 -   Rl+  pts/0     21:23 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 1466164 1346756 -   Rl+  pts/0     21:24 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 1483192 1363804 -   Rl+  pts/0     21:25 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 1498768 1379360 -   Rl+  pts/0     21:26 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 1515268 1395856 -   Rl+  pts/0     21:28 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 1532428 1413104 -   Rl+  pts/0     21:29 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 1554604 1435220 -   Rl+  pts/0     21:31 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 1579156 1459780 -   Rl+  pts/0     21:32 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 1596712 1477368 -   Rl+  pts/0     21:34 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 1612552 1493172 -   Rl+  pts/0     21:35 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 1633540 1514204 -   Rl+  pts/0     21:36 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 1651624 1532200 -   Rl+  pts/0     21:38 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 1669708 1550316 -   Rl+  pts/0     21:39 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 1695844 1576540 -   Rl+  pts/0     21:41 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 1715380 1596048 -   Rl+  pts/0     21:42 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 1734256 1614948 -   Rl+  pts/0     21:43 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 1751860 1632828 -   Rl+  pts/0     21:44 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 1771316 1651664 -   Rl+  pts/0     21:46 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 1789748 1670136 -   Rl+  pts/0     21:47 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 1808180 1689156 -   Rl+  pts/0     21:48 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 1827636 1708940 -   Rl+  pts/0     21:50 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 1849140 1729504 -   Rl+  pts/0     21:51 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 1867572 1748020 -   Rl+  pts/0     21:52 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 1886004 1766296 -   Rl+  pts/0     21:53 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 1914676 1795048 -   Rl+  pts/0     21:55 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 1943348 1824288 -   Rl+  pts/0     21:57 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 1962804 1843192 -   Rl+  pts/0     21:59 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 1981236 1862196 -   Rl+  pts/0     22:00 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2000692 1881168 -   Rl+  pts/0     22:01 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2022196 1903492 -   Rl+  pts/0     22:03 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2040628 1921156 -   Rl+  pts/0     22:04 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2058036 1939320 -   Rl+  pts/0     22:05 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2075444 1956336 -   Rl+  pts/0     22:06 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2092852 1973612 -   Rl+  pts/0     22:07 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2119476 2000384 -   Rl+  pts/0     22:09 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2137908 2018848 -   Rl+  pts/0     22:10 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2155316 2035940 -   Rl+  pts/0     22:11 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2173748 2054404 -   Rl+  pts/0     22:12 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2191156 2071448 -   Rl+  pts/0     22:13 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2207540 2088776 -   Rl+  pts/0     22:15 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2225972 2106276 -   Rl+  pts/0     22:16 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2247476 2128032 -   Rl+  pts/0     22:17 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2272052 2152688 -   Rl+  pts/0     22:19 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2292532 2173808 -   Rl+  pts/0     22:20 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2314036 2194636 -   Rl+  pts/0     22:21 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2332468 2213564 -   Rl+  pts/0     22:23 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2353972 2234212 -   Rl+  pts/0     22:24 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2377524 2258476 -   Rl+  pts/0     22:26 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2407220 2288112 -   Rl+  pts/0     22:27 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2435852 2316168 -   Rl+  pts/0     22:29 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2455256 2335364 -   Rl+  pts/0     22:30 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2485616 2365332 -   Rl+  pts/0     22:32 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2503964 2383792 -   Rl+  pts/0     22:34 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2538416 2417788 -   Rl+  pts/0     22:36 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2556368 2435728 -   Rl+  pts/0     22:37 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2576300 2455664 -   Rl+  pts/0     22:38 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2595968 2474252 -   Rl+  pts/0     22:39 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2614844 2492404 -   Rl+  pts/0     22:41 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2633588 2511192 -   Rl+  pts/0     22:42 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2651804 2528556 -   Rl+  pts/0     22:43 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2666852 2543168 -   Rl+  pts/0     22:44 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2679132 2554948 -   Rl+  pts/0     22:45 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2694492 2570436 -   Rl+  pts/0     22:46 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2709852 2586200 -   Rl+  pts/0     22:47 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2723164 2599384 -   Rl+  pts/0     22:48 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2736476 2612724 -   Rl+  pts/0     22:49 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2749788 2625924 -   Rl+  pts/0     22:49 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2768220 2644488 -   Rl+  pts/0     22:51 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2780508 2656524 -   Rl+  pts/0     22:52 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2792796 2668928 -   Rl+  pts/0     22:52 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2807132 2682576 -   Rl+  pts/0     22:53 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2822492 2698484 -   Rl+  pts/0     22:54 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2840924 2716904 -   Rl+  pts/0     22:56 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2858332 2733900 -   Rl+  pts/0     22:57 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2868572 2743740 conges Dl+ pts/0   22:57 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2877788 2750148 conges Dl+ pts/0   22:58 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2885980 2750104 -   Rl+  pts/0     22:58 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2905436 2763812 -   Rl+  pts/0     23:00 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2934108 2782024 -   Rl+  pts/0     23:01 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2952540 2797000 -   Rl+  pts/0     23:03 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2968924 2809380 -   Rl+  pts/0     23:04 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2986332 2813544 -   Rl+  pts/0     23:05 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 3005788 2822364 -   Rl+  pts/0     23:06 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 3022172 2826840 -   Rl+  pts/0     23:07 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 3040604 2825984 -   Rl+  pts/0     23:08 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 3056988 2826048 -   Rl+  pts/0     23:09 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 3075816 2828108 -   Rl+  pts/0     23:10 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 3091176 2828548 -   Rl+  pts/0     23:11 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 3114728 2826104 -   Dl+  pts/0     23:13 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 3130088 2828268 -   Rl+  pts/0     23:14 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 3145724 2825208 sync_b Dl+ pts/0   23:15 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 3145724 2822940 ptrace Tl+ pts/0   23:15 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 3145724 2816060 ptrace Tl+ pts/0   23:15 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 3145724 2813052 ptrace Tl pts/0    23:15 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 3145724 2812388 ptrace Tl pts/0    23:15 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 3145724 2810576 ptrace Tl pts/0    23:15 /home/rrm/tmp/amule
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 20, 2009, 07:05:35 PM
Terminated after throwing an instance of 'std::bad_alloc'
   what(): std::bad_alloc
* Could not get symbol names for backtrace
   backtrace:


Program received signal SIGABRT, Aborted.
0x0053c422 in __kernel_vsyscall ()
(gdb) bt full
Code: [Select]
#0  0x0053c422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x0668f4d1 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0x06692932 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0x0836480d in OnUnhandledException ()
    at ../../../../trunk/src/libs/common/MuleDebug.cpp:103
        t = 0x0
        output = 0x67a5560
#4  0x005f7415 in ?? () from /usr/lib/libstdc++.so.6
No symbol table info available.
#5  0x005f7452 in std::terminate() () from /usr/lib/libstdc++.so.6
No symbol table info available.
#6  0x005f7591 in __cxa_throw () from /usr/lib/libstdc++.so.6
No symbol table info available.
#7  0x005f7c0f in operator new(unsigned int) () from /usr/lib/libstdc++.so.6
No symbol table info available.
#8  0x0840f7d3 in wxObjectList::CreateNode(wxNodeBase*, wxNodeBase*, void*, wxListKey const&) ()
No symbol table info available.
#9  0x086c2267 in wxListBase::Append(void*) ()
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#10 0x0876e22f in wxEvtHandler::QueueEvent(wxEvent*) ()
No symbol table info available.
#11 0x08619d15 in wxSocketBase::OnRequest(wxSocketNotify) ()
No symbol table info available.
#12 0x08623c3e in wxSocketImplUnix::OnStateChange(wxSocketNotify) ()
No symbol table info available.
#13 0x08623ea1 in wxSocketImplUnix::OnWriteWaiting() ()
No symbol table info available.
#14 0x0012cf7c in ?? () from /usr/lib/libgdk-x11-2.0.so.0
No symbol table info available.
#15 0x00366d5b in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#16 0x0032fe78 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
No symbol table info available.
#17 0x00333720 in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#18 0x00333b8f in g_main_loop_run () from /lib/libglib-2.0.so.0
No symbol table info available.
#19 0x03991419 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#20 0x085a9816 in wxGUIEventLoop::Run() ()
No symbol table info available.
#21 0x08630190 in wxAppConsoleBase::MainLoop() ()
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#22 0x086ae605 in wxEntry(int&, wchar_t**) ()
No symbol table info available.
#23 0x0824147b in main (argc=1, argv=0xbffff504)
    at ../../trunk/src/amule-gui.cpp:94
No locals.

(gdb) thread apply all bt full
Code: [Select]
Thread 6 (Thread 0xb23e7b70 (LWP 13309)):
#0  0x0053c422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x06723ba6 in poll () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0x00afbcc2 in ?? () from /usr/lib/libpulse.so.0
No symbol table info available.
#3  0x00ae8e09 in pa_mainloop_poll () from /usr/lib/libpulse.so.0
No symbol table info available.
#4  0x00aeac23 in pa_mainloop_iterate () from /usr/lib/libpulse.so.0
No symbol table info available.
#5  0x00aeacf4 in pa_mainloop_run () from /usr/lib/libpulse.so.0
No symbol table info available.
#6  0x00afbbc3 in ?? () from /usr/lib/libpulse.so.0
No symbol table info available.
#7  0x00b6cac2 in ?? () from /usr/lib/libpulsecommon-0.9.19.so
No symbol table info available.
#8  0x00a4480e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#9  0x067317ee in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

---Type <return> to continue, or q <return> to quit---
Thread 5 (Thread 0xb6be9b70 (LWP 13308)):
#0  0x0053c422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x00a49142 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
   from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0x0875cbee in wxConditionInternal::WaitTimeout(unsigned long) ()
No symbol table info available.
#3  0x0875d8b3 in wxSemaphoreInternal::WaitTimeout(unsigned long) ()
No symbol table info available.
#4  0x083600a2 in CTimerThread::Entry() ()
No symbol table info available.
#5  0x0876273d in wxThreadInternal::PthreadStart(wxThread*) ()
No symbol table info available.
#6  0x00a4480e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#7  0x067317ee in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 3 (Thread 0xb73ebb70 (LWP 13304)):
#0  0x0053c422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x00a4c466 in nanosleep () from /lib/tls/i686/cmov/libpthread.so.0
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#2  0x0876489c in wxMicroSleep(unsigned long) ()
No symbol table info available.
#3  0x081cf044 in UploadBandwidthThrottler::Entry (this=0x957ef00)
    at ../../trunk/src/UploadBandwidthThrottler.cpp:320
        timeSinceLastLoop = 1
        minFragSize = 1300
        doubleSendSize = 2600
        bytesToSpend = 3118080
        sleepTime = 1000
        thisLoopTick = 2905923846
        realBytesToSpend = 46080999
        extraSleepTime = 1000
        lastLoopTick = 2905923846
        allowedDataRate = <value optimized out>
        rememberedSlotCounter = 34
        sendLock = {m_isOk = 88, m_mutex = @0x807d3d6}
#4  0x0876273d in wxThreadInternal::PthreadStart(wxThread*) ()
No symbol table info available.
#5  0x00a4480e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#6  0x067317ee in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
---Type <return> to continue, or q <return> to quit---

Thread 1 (Thread 0xb7fdf7e0 (LWP 13277)):
#0  0x0053c422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x0668f4d1 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0x06692932 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0x0836480d in OnUnhandledException ()
    at ../../../../trunk/src/libs/common/MuleDebug.cpp:103
        t = 0x0
        output = 0x67a5560
#4  0x005f7415 in ?? () from /usr/lib/libstdc++.so.6
No symbol table info available.
#5  0x005f7452 in std::terminate() () from /usr/lib/libstdc++.so.6
No symbol table info available.
#6  0x005f7591 in __cxa_throw () from /usr/lib/libstdc++.so.6
No symbol table info available.
#7  0x005f7c0f in operator new(unsigned int) () from /usr/lib/libstdc++.so.6
No symbol table info available.
#8  0x0840f7d3 in wxObjectList::CreateNode(wxNodeBase*, wxNodeBase*, void*, wxListKey const&) ()
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#9  0x086c2267 in wxListBase::Append(void*) ()
No symbol table info available.
#10 0x0876e22f in wxEvtHandler::QueueEvent(wxEvent*) ()
No symbol table info available.
#11 0x08619d15 in wxSocketBase::OnRequest(wxSocketNotify) ()
No symbol table info available.
#12 0x08623c3e in wxSocketImplUnix::OnStateChange(wxSocketNotify) ()
No symbol table info available.
#13 0x08623ea1 in wxSocketImplUnix::OnWriteWaiting() ()
No symbol table info available.
#14 0x0012cf7c in ?? () from /usr/lib/libgdk-x11-2.0.so.0
No symbol table info available.
#15 0x00366d5b in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#16 0x0032fe78 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
No symbol table info available.
#17 0x00333720 in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#18 0x00333b8f in g_main_loop_run () from /lib/libglib-2.0.so.0
No symbol table info available.
#19 0x03991419 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#20 0x085a9816 in wxGUIEventLoop::Run() ()
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#21 0x08630190 in wxAppConsoleBase::MainLoop() ()
No symbol table info available.
#22 0x086ae605 in wxEntry(int&, wchar_t**) ()
No symbol table info available.
#23 0x0824147b in main (argc=1, argv=0xbffff504)
    at ../../trunk/src/amule-gui.cpp:94
No locals.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 20, 2009, 07:11:03 PM
$ cat /proc/13277/maps

Up till this first line it was all 0000, so here's the rest:

(ehrr, this shot includes file ID's, so i better delete them; if you need them after all, i pm them to you)
Code: [Select]
b1700000-b1800000 rw-p 00000000 00:00 0
b1800000-b18ff000 rw-p 00000000 00:00 0
b18ff000-b1900000 ---p 00000000 00:00 0
b1900000-b1a00000 rw-p 00000000 00:00 0
b1a00000-b1b00000 rw-p 00000000 00:00 0
b1b00000-b1b3f000 rw-p 00000000 00:00 0
b1b3f000-b1b42000 rw-s 4417b000 08:11 23920933   /home/rrm/.aMule/Temp/004.part
b1b42000-b1b45000 rw-p 00000000 00:00 0
b1b45000-b1b49000 rw-s 31969000 08:11 23920730   /home/rrm/.aMule/Temp/002.part
b1b49000-b1b4d000 rw-s 3a84b000 08:11 23920730   /home/rrm/.aMule/Temp/002.part
b1b4d000-b1b50000 rw-s 1a0f6000 08:11 23920730   /home/rrm/.aMule/Temp/002.part
b1b50000-b1b54000 rw-s 322b8000 08:11 23920933   /home/rrm/.aMule/Temp/004.part
b1b54000-b1b57000 rw-s 4417e000 08:11 23920933   /home/rrm/.aMule/Temp/004.part
b1b57000-b1b5b000 rw-s 322bb000 08:11 23920933   /home/rrm/.aMule/Temp/004.part
b1b5b000-b1be7000 r--p 00000000 08:11 14895905   /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-Bold.ttf
b1be7000-b1be8000 ---p 00000000 00:00 0
b1be8000-b23e8000 rw-p 00000000 00:00 0
b23e8000-b63e9000 rw-s 00000000 00:11 896651     /dev/shm/pulse-shm-594648316
b63e9000-b63ea000 ---p 00000000 00:00 0
b63ea000-b6beb000 rw-p 00000000 00:00 0
b6beb000-b6bec000 ---p 00000000 00:00 0
b6bec000-b73ec000 rw-p 00000000 00:00 0
b73ec000-b73ef000 rw-s 00000000 00:09 10092565   /SYSV00000000 (deleted)
b73ef000-b7487000 r--p 00000000 08:11 14895904   /usr/share/fonts/truetype/...deleted..
b7487000-b7488000 r--s 00000000 08:11 46989320   /var/cache/fontconfig/...deleted..
b7488000-b748e000 r--s 00000000 08:11 47022229   /var/cache/fontconfig/...deleted..
b748e000-b7490000 r--s 00000000 08:11 46989316   /var/cache/fontconfig/...deleted..
b7490000-b7492000 r--s 00000000 08:11 41804529   /var/cache/fontconfig/...deleted..
b7492000-b7495000 r--s 00000000 08:11 41805236   /var/cache/fontconfig/...deleted..
b7495000-b7498000 r--s 00000000 08:11 41804923   /var/cache/fontconfig/...deleted..
b7498000-b7499000 r--s 00000000 08:11 41805234   /var/cache/fontconfig/...deleted..
b7499000-b749d000 r--s 00000000 08:11 46989317   /var/cache/fontconfig/...deleted..
b749d000-b74a0000 r--s 00000000 08:11 41805232   /var/cache/fontconfig/...deleted...
b74a0000-b7500000 rw-s 00000000 00:09 10059796   /SYSV00000000 (deleted)
b7500000-b75e2000 rw-p 00000000 00:00 0
b75e2000-b7600000 ---p 00000000 00:00 0
b7600000-b7601000 rw-p 00000000 00:00 0
b7601000-b7604000 r--s 00000000 08:11 41805179   /var/cache/fontconfig/...deleted..
b7604000-b760c000 r--s 00000000 08:11 41805229   /var/cache/fontconfig/...deleted..
b760c000-b7617000 r--s 00000000 08:11 47023527   /var/cache/fontconfig/...deleted..
b7617000-b7619000 r--s 00000000 08:11 41805178   /var/cache/fontconfig/...deleted..
b7619000-b761a000 r--s 00000000 08:11 47023526   /var/cache/fontconfig/...deleted..
b761a000-b763c000 r--s 00000000 08:11 41805659   /var/cache/fontconfig/...deleted..
b763c000-b763e000 r--s 00000000 08:11 46989318   /var/cache/fontconfig/...deleted..
b763e000-b7646000 r--s 00000000 08:11 41805150   /var/cache/fontconfig/...deleted..
b7646000-b764c000 r--s 00000000 08:11 41805223   /var/cache/fontconfig/...deleted..
b764c000-b764e000 r--s 00000000 08:11 46989321   /var/cache/fontconfig/...deleted..
b764e000-b7650000 r--s 00000000 08:11 41805657   /var/cache/fontconfig/...deleted..
b7650000-b76b0000 rw-s 00000000 00:09 10027027   /SYSV00000000 (deleted)
b76b0000-b76b1000 ---p 00000000 00:00 0
b76b1000-b7eb3000 rw-p 00000000 00:00 0
b7eb3000-b7fa0000 r--p 00000000 08:11 15057930   /usr/lib/locale/en_US.utf8/LC_COLLATE
b7fa0000-b7fdf000 r--p 00000000 08:11 14779364   /usr/lib/locale/en_US.utf8/LC_CTYPE
b7fdf000-b7fed000 rw-p 00000000 00:00 0
b7fed000-b7fee000 r--p 00000000 08:11 14779369   /usr/lib/locale/en_US.utf8/LC_NUMERIC
b7fee000-b7fef000 r--p 00000000 08:11 14779081   /usr/lib/locale/en_US.utf8/LC_TIME
b7fef000-b7ff0000 r--p 00000000 08:11 14779082   /usr/lib/locale/en_US.utf8/LC_MONETARY
b7ff0000-b7ff1000 r--p 00000000 08:11 14786562   /usr/lib/locale/en_US.utf8/LC_MESSAGES/SYS_LC_MESSAGES
b7ff1000-b7ff2000 r--p 00000000 08:11 14779235   /usr/lib/locale/en_US.utf8/LC_PAPER
b7ff2000-b7ff3000 r--p 00000000 08:11 14779258   /usr/lib/locale/en_US.utf8/LC_NAME
b7ff3000-b7ff4000 r--p 00000000 08:11 14779083   /usr/lib/locale/en_US.utf8/LC_ADDRESS
b7ff4000-b7ff5000 r--p 00000000 08:11 14779084   /usr/lib/locale/en_US.utf8/LC_TELEPHONE
b7ff5000-b7ff6000 r--p 00000000 08:11 14779344   /usr/lib/locale/en_US.utf8/LC_MEASUREMENT
b7ff6000-b7ff7000 r--p 00000000 08:11 14779085   /usr/lib/locale/en_US.utf8/LC_IDENTIFICATION
b7ff7000-b7ffe000 r--s 00000000 08:11 14762000   /usr/lib/gconv/gconv-modules.cache
b7ffe000-b8000000 rw-p 00000000 00:00 0
b8000000-bca00000 rw-p 00000000 00:00 0
bca00000-bcc00000 rw-p 00000000 00:00 0
bcc00000-bff00000 rw-p 00000000 00:00 0
bff00000-bffeb000 rw-p 00000000 00:00 0
bffeb000-c0000000 rw-p 00000000 00:00 0          [stack]

Ok, im taking my foot off the gaspedal again...
Slow down baby, hoooo, easy mule....
easy now....
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: wuischke on December 20, 2009, 07:14:33 PM
Quote
0  1000 13277 13275  20   0 2868572 2743740 conges Dl+ pts/0   22:57 /home/rrm/tmp/amule
0  1000 13277 13275  20   0 2877788 2750148 conges Dl+ pts/0   22:58 /home/rrm/tmp/amule
These lines look interesting.

Notice the "conges"? And the state of  "D    Uninterruptible sleep (usually IO)"?

Unfortunately I don't know exactly what "conges" refers to, but I think it's interesting.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 20, 2009, 07:30:00 PM
In dutch there is this expression
(translated) giving somebody the conges (/translated)
Meaning: ending the relationship between you and that person...
So... basically i get dumped a lot....

by mules...
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: wuischke on December 20, 2009, 07:34:55 PM
Well, my guess was rather "congested" since it's related to IO, but if I was your mule, I would probably dump you, too, if you always put the food on the gas pedal and expected me to run and run and run. Mules are stubborn like that. ;)
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on December 20, 2009, 10:55:05 PM
Just did some code reading of the UploadbandwidthThrottler, and boy, it's a mess. See the comment of 4406.  :(
I really don't understand that "bytesToSpend / realBytesToSpend" logic. And part of that int32/int64 arithmetic is fishy or even buggy. It's plain eMule code at its core.
But I'm rather suspecting the socket code. It's also pretty similar to eMule's and pretty unmaintainable and I'm not sure the MFC sockets and the wx sockets are similar enough for that, especially on Linux. Maybe something there causes the socket's event notification mechanism to backfire in an infinite loop.

Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on December 22, 2009, 12:58:36 AM
Cleaned up the UploadbandwidthThrottler mess (9907). I don't think there was anything in it that could have caused RRM's problem. Well - there was that strange setting bytesToSpend to 2^32, though I doubt it ever triggered. Anyway, RRM please check it out. Here is the modified file for you to recompile.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 22, 2009, 09:58:42 AM
Wow, thats fast!!!
Ive downloaded your UploadBandwidthThrottler.cpp, and replaced the existing ones in:
~/tmp/amule-stu/src
~/tmp/amule-upstream/src

then i have to call:
Code: [Select]
$ cd ~/tmp/amule-stu
$ ./configure --prefix=/usr/local/stow/amule-opt/ --enable-geoip --enable-optimize --disable-debug --mandir=/share/bin
$ make -j 2 && sudo make install
$ cd /usr/local/stow
$ sudo stow amule-opt

and then:
Code: [Select]
$ sudo stow -D amule-opt
$ cd ~/tmp/amule-upstream
$ ./configure --prefix=/usr/local/stow/amule-stu-opt-debug/ --enable-geoip --enable-optimize --enable-debug --with-wxdebug --mandir=/share/bin
$ make -j 2 && sudo make install
$ cd /usr/local/stow
$ sudo stow amule-stu-opt-debug

Correct?
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on December 22, 2009, 10:53:04 AM
Wow, thats fast!!!
Ive downloaded your UploadBandwidthThrottler.cpp, and replaced the existing ones in:
~/tmp/amule-stu/src
~/tmp/amule-upstream/src

then i have to call:
Code: [Select]
$ cd ~/tmp/amule-stu
$ ./configure --prefix=/usr/local/stow/amule-opt/ --enable-geoip --enable-optimize --disable-debug --mandir=/share/bin
$ make -j 2 && sudo make install
$ cd /usr/local/stow
$ sudo stow amule-opt

and then:
Code: [Select]
$ sudo stow -D amule-opt
$ cd ~/tmp/amule-upstream
$ ./configure --prefix=/usr/local/stow/amule-stu-opt-debug/ --enable-geoip --enable-optimize --enable-debug --with-wxdebug --mandir=/share/bin
$ make -j 2 && sudo make install
$ cd /usr/local/stow
$ sudo stow amule-stu-opt-debug

Correct?

I RRM.

Let's see, having two versions of source (amule-stu, amule-upstream) is only useful if you leave the amule-upstream one unmodified, so you can test both.

Anyways, you did it right, but you can do it more efficiently. For instance, if you got the ./configure parameters all right, you only need to call make again.


Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 22, 2009, 12:27:33 PM
Thank you, so (after eplacing the file) i just need to call:

Code: [Select]
$ cd ~/tmp/amule-stu
$ make -j 2 && sudo make install
$ cd ~/tmp/amule-upstream
$ make -j 2 && sudo make install
$ cd /usr/local/stow
$ sudo stow amule-stu-opt-debug

But then, at the end, i get this:
Code: [Select]
collect2: ld returned 1 exit status
make[3]: *** [amule] Error 1
make[3]: Leaving directory `/home/rrm/tmp/amule-upstream/src'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/rrm/tmp/amule-upstream/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/rrm/tmp/amule-upstream'
make: *** [all] Error 2

So, i will have to start  with the amule-stu version, i guess...

Code: [Select]
cd /usr/local/stow
sudo stow amule-opt
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 22, 2009, 12:29:00 PM
ooops, im making a mess of it:

Code: [Select]
stow: CONFLICT: /usr/local/stow/amule-opt/bin/ed2k vs. /usr/local/bin/ed2k
rrm@rrm-desktop:/usr/local/stow$

and when i try to run amule:
Code: [Select]
Fatal Error: Mismatch between the program and library build versions detected.
The library used 2.8 (debug,Unicode,compiler with C++ ABI 1002,wx containers,compatible with 2.6),
and your program used 2.8 (no debug,Unicode,compiler with C++ ABI 1002,wx containers,compatible with 2.6).

So, i will have to configure with debug, no?
hmm, that doesnt work either...
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 22, 2009, 03:26:27 PM
I tried both

Code: [Select]
$ cd ~/tmp/amule-stu
$ ./configure --prefix=/usr/local/stow/amule-opt/ --enable-geoip --enable-optimize --disable-debug --mandir=/share/bin
$ make -j 2 && sudo make install
$ cd /usr/local/stow
$ sudo stow amule-opt

and
Code: [Select]
$ cd ~/tmp/amule-stu
$ ./configure --prefix=/usr/local/stow/amule-opt/ --enable-geoip --enable-optimize --enable-debug --with-wxdebug --mandir=/share/bin
$ make -j 2 && sudo make install
$ cd /usr/local/stow
$ sudo stow amule-opt

but in both cases i get
Code: [Select]
Fatal Error: Mismatch between the program and library build versions detected.
The library used 2.8 (debug,Unicode,compiler with C++ ABI 1002,wx containers,compatible with 2.6),
and your program used 2.8 (no debug,Unicode,compiler with C++ ABI 1002,wx containers,compatible with 2.6).
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on December 22, 2009, 04:14:25 PM
Use the second one and run make clean before make.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 22, 2009, 04:37:55 PM
Fantastic!
Thank you.
Im running it and stepping on the gaspedal...
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 22, 2009, 05:59:05 PM
Its a high-VSZ crash

$ ps axl | grep amule
Code: [Select]
0  1000  4805  4774  20   0 122960  5300 poll_s S+   pts/0      0:01 gdb amule
0  1000  4807  4805  20   0 3145724 2716400 ptrace Tl pts/0    70:04 /usr/local/stow/amule-opt/bin/amule
0  1000  5056  4965  20   0   3036   792 pipe_w S+   pts/1      0:00 grep amule

Terminated after throwing an instance of 'std::bad_alloc'
   what(): std::bad_alloc
* Could not get symbol names for backtrace
   backtrace:


Program received signal SIGABRT, Aborted.
0x0093d422 in __kernel_vsyscall ()
(gdb) bt full
Code: [Select]
#0  0x0093d422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x00af64d1 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0x00af9932 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0x0834fecd in OnUnhandledException () at MuleDebug.cpp:103
        t = 0x0
        output = 0xc0c560
#4  0x0082f415 in ?? () from /usr/lib/libstdc++.so.6
No symbol table info available.
#5  0x0082f452 in std::terminate() () from /usr/lib/libstdc++.so.6
No symbol table info available.
#6  0x0082f591 in __cxa_throw () from /usr/lib/libstdc++.so.6
No symbol table info available.
#7  0x0082fc0f in operator new(unsigned int) () from /usr/lib/libstdc++.so.6
No symbol table info available.
#8  0x009c7633 in wxObjectList::CreateNode (this=0x90c8ec0, prev=0x4c294ab0,
    next=0x0, data=0x4c294af0, key=...) at ../include/wx/list.h:1185
No locals.
#9  0x009dc6b9 in wxListBase::Append (this=0x90c8ec0, object=0x4c294af0)
    at ../src/common/list.cpp:244
        __FUNCTION__ = "Append"
---Type <return> to continue, or q <return> to quit---
        node = <value optimized out>
#10 0x00a45f96 in wxObjectList::Append (this=0x8672600, event=...)
    at ../include/wx/list.h:1185
No locals.
#11 wxEvtHandler::AddPendingEvent (this=0x8672600, event=...)
    at ../src/common/event.cpp:1143
        eventCopy = <value optimized out>
        __FUNCTION__ = "AddPendingEvent"
#12 0x0015ad60 in wxSocketBase::OnRequest (this=0x9292ee0,
    notification=wxSOCKET_OUTPUT) at ../src/common/socket.cpp:1006
        event = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x866b788,
              static ms_classInfo = {m_className = 0xa74d98 L"wxObject",
                m_objectSize = 8, m_objectConstructor = 0, m_baseInfo1 = 0x0,
                m_baseInfo2 = 0x0, static sm_first = 0x7728cc,
                m_next = 0xaca8a4, static sm_classTable = 0x8860008},
              m_refData = 0x0}, m_eventObject = 0x9292ee0,
            m_eventType = 10002, m_timeStamp = 0, m_id = 6123,
            m_callbackUserData = 0x0, m_propagationLevel = 0,
            m_skipped = false, m_isCommandEvent = false,
            static ms_classInfo = {m_className = 0xa86590 L"wxEvent",
              m_objectSize = 36, m_objectConstructor = 0,
              m_baseInfo1 = 0xaca838, m_baseInfo2 = 0x0,
              static sm_first = 0x7728cc, m_next = 0xacb8e8,
---Type <return> to continue, or q <return> to quit---
              static sm_classTable = 0x8860008}}, m_event = wxSOCKET_OUTPUT,
          m_clientData = 0x0, static ms_classInfo = {
            m_className = 0x162f80 L"wxSocketEvent", m_objectSize = 44,
            m_objectConstructor = 0x1595e0 <wxSocketEvent::wxCreateObject()>,
            m_baseInfo1 = 0xacb900, m_baseInfo2 = 0x0,
            static sm_first = 0x7728cc, m_next = 0x16c54c,
            static sm_classTable = 0x8860008}}
        flag = <value optimized out>
#13 0x0015ae54 in wx_socket_callback (notification=GSOCK_OUTPUT,
    cdata=0x9292ee0 "\350\206?\b") at ../src/common/socket.cpp:942
No locals.
#14 0x0016027b in GSocket::Detected_Write (this=0xb2bf1f8)
    at ../src/unix/gsocket.cpp:1836
No locals.
#15 0x00f47927 in _GSocket_GDK_Input (data=0xb2bf1f8, source=139,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:41
No locals.
#16 0x00cf4f7c in ?? () from /usr/lib/libgdk-x11-2.0.so.0
No symbol table info available.
#17 0x06670d5b in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#18 0x06639e78 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#19 0x0663d720 in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#20 0x0663db8f in g_main_loop_run () from /lib/libglib-2.0.so.0
No symbol table info available.
#21 0x049b8419 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#22 0x00f45ec8 in wxEventLoop::Run (this=0x92c4578)
    at ../src/gtk/evtloop.cpp:76
        __FUNCTION__ = "Run"
        exitcode = <value optimized out>
#23 0x00fe72ac in wxAppBase::MainLoop (this=0x888fee0)
    at ../src/common/appcmn.cpp:312
        mainLoop = {<wxEventLoopPtr> = {m_ptr = 0x92c4578}, m_pp = 0x888ff20,
          m_pOld = 0x0}
#24 0x00fe7001 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
No locals.
#25 0x009cf3ea in wxEntry (argc=@0xac96ac, argv=0x887e470)
    at ../src/common/init.cpp:460
No locals.
#26 0x009cf497 in wxEntry (argc=@0xbffff440, argv=0xbffff4e4)
    at ../src/common/init.cpp:472
No locals.
#27 0x08252a1b in main (argc=1, argv=0xbffff4e4) at amule-gui.cpp:94
---Type <return> to continue, or q <return> to quit---
No locals.

(gdb) thread apply all bt full
Code: [Select]
Thread 6 (Thread 0xb7eaeb70 (LWP 4826)):
#0  0x0093d422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x00b8aba6 in poll () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0x059f0cc2 in ?? () from /usr/lib/libpulse.so.0
No symbol table info available.
#3  0x059dde09 in pa_mainloop_poll () from /usr/lib/libpulse.so.0
No symbol table info available.
#4  0x059dfc23 in pa_mainloop_iterate () from /usr/lib/libpulse.so.0
No symbol table info available.
#5  0x059dfcf4 in pa_mainloop_run () from /usr/lib/libpulse.so.0
No symbol table info available.
#6  0x059f0bc3 in ?? () from /usr/lib/libpulse.so.0
No symbol table info available.
#7  0x05a95ac2 in ?? () from /usr/lib/libpulsecommon-0.9.19.so
No symbol table info available.
#8  0x0089d80e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#9  0x00b987ee in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

---Type <return> to continue, or q <return> to quit---
Thread 5 (Thread 0xb63e5b70 (LWP 4825)):
#0  0x0093d422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x008a2142 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
   from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0x00a41a3e in wxConditionInternal::WaitTimeout (this=0x89279c0,
    milliseconds=100) at ../src/unix/threadpsx.cpp:405
        tspec = {tv_sec = 1261500610, tv_nsec = 860000000}
        err = <value optimized out>
#3  0x00a41aca in wxCondition::WaitTimeout (this=0x92ae81c, milliseconds=100)
    at ../include/wx/thrimpl.cpp:256
        __FUNCTION__ = "WaitTimeout"
#4  0x00a437a4 in wxSemaphoreInternal::WaitTimeout (this=0x92ae818,
    milliseconds=100) at ../src/unix/threadpsx.cpp:552
        remainingTime = <value optimized out>
        locker = {m_isOk = true, m_mutex = @0x92ae818}
#5  0x00a4382a in wxSemaphore::WaitTimeout (this=0x9113138, milliseconds=100)
    at ../include/wx/thrimpl.cpp:320
        __FUNCTION__ = "WaitTimeout"
#6  0x0834c472 in CTimerThread::Entry (this=0x9113118) at Timer.cpp:66
        now = <value optimized out>
        delta = 0
---Type <return> to continue, or q <return> to quit---
        evt = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x84db408,
              static ms_classInfo = {m_className = 0xa74d98 L"wxObject",
                m_objectSize = 8, m_objectConstructor = 0, m_baseInfo1 = 0x0,
                m_baseInfo2 = 0x0, static sm_first = 0x7728cc,
                m_next = 0xaca8a4, static sm_classTable = 0x8860008},
              m_refData = 0x0}, m_eventObject = 0x0, m_eventType = 10244,
            m_timeStamp = 0, m_id = 6128, m_callbackUserData = 0x0,
            m_propagationLevel = 0, m_skipped = false,
            m_isCommandEvent = false, static ms_classInfo = {
              m_className = 0xa86590 L"wxEvent", m_objectSize = 36,
              m_objectConstructor = 0, m_baseInfo1 = 0xaca838,
              m_baseInfo2 = 0x0, static sm_first = 0x7728cc,
              m_next = 0xacb8e8,
              static sm_classTable = 0x8860008}}, <No data fields>}
        lastEvent = 3075193032
#7  0x00a449e3 in wxThreadInternal::PthreadStart (thread=0x9113118)
    at ../src/unix/threadpsx.cpp:766
        pthread = 0x92cc958
        rc = <value optimized out>
        dontRunAtAll = false
        __FUNCTION__ = "PthreadStart"
#8  0x00a44aed in wxPthreadStart (ptr=0x9113118)
    at ../src/unix/threadpsx.cpp:718
---Type <return> to continue, or q <return> to quit---
No locals.
#9  0x0089d80e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#10 0x00b987ee in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 3 (Thread 0xb73e8b70 (LWP 4823)):
#0  0x0093d422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x008a5466 in nanosleep () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0x00a4b468 in wxMicroSleep (microseconds=1000000)
    at ../src/unix/utilsunx.cpp:191
        tmReq = {tv_sec = 1, tv_nsec = 0}
#3  0x00a4b491 in wxMilliSleep (milliseconds=1000)
    at ../src/unix/utilsunx.cpp:212
No locals.
#4  0x00a4176d in wxThread::Sleep (milliseconds=1000)
    at ../src/unix/threadpsx.cpp:986
No locals.
#5  0x081c5858 in UploadBandwidthThrottler::Entry (this=0x8fa5e78)
    at UploadBandwidthThrottler.cpp:323
        timeSinceLastLoop = 0
---Type <return> to continue, or q <return> to quit---
        minFragSize = 1300
        doubleSendSize = 2600
        sleepTime = 1000
        thisLoopTick = 3075192409
        bytesToSpend = <value optimized out>
        extraSleepTime = 1000
        lastLoopTick = 3075192409
        allowedDataRate = 3072000
        rememberedSlotCounter = 87
        sendLock = {m_isOk = 184, m_mutex = @0x0}
#6  0x00a449e3 in wxThreadInternal::PthreadStart (thread=0x8fa5e78)
    at ../src/unix/threadpsx.cpp:766
        pthread = 0x8fce970
        rc = <value optimized out>
        dontRunAtAll = false
        __FUNCTION__ = "PthreadStart"
#7  0x00a44aed in wxPthreadStart (ptr=0x8fa5e78)
    at ../src/unix/threadpsx.cpp:718
No locals.
#8  0x0089d80e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#9  0x00b987ee in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
---Type <return> to continue, or q <return> to quit---

Thread 1 (Thread 0xb7fdd760 (LWP 4807)):
#0  0x0093d422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x00af64d1 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0x00af9932 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0x0834fecd in OnUnhandledException () at MuleDebug.cpp:103
        t = 0x0
        output = 0xc0c560
#4  0x0082f415 in ?? () from /usr/lib/libstdc++.so.6
No symbol table info available.
#5  0x0082f452 in std::terminate() () from /usr/lib/libstdc++.so.6
No symbol table info available.
#6  0x0082f591 in __cxa_throw () from /usr/lib/libstdc++.so.6
No symbol table info available.
#7  0x0082fc0f in operator new(unsigned int) () from /usr/lib/libstdc++.so.6
No symbol table info available.
#8  0x009c7633 in wxObjectList::CreateNode (this=0x90c8ec0, prev=0x4c294ab0,
    next=0x0, data=0x4c294af0, key=...) at ../include/wx/list.h:1185
No locals.
#9  0x009dc6b9 in wxListBase::Append (this=0x90c8ec0, object=0x4c294af0)
---Type <return> to continue, or q <return> to quit---
    at ../src/common/list.cpp:244
        __FUNCTION__ = "Append"
        node = <value optimized out>
#10 0x00a45f96 in wxObjectList::Append (this=0x8672600, event=...)
    at ../include/wx/list.h:1185
No locals.
#11 wxEvtHandler::AddPendingEvent (this=0x8672600, event=...)
    at ../src/common/event.cpp:1143
        eventCopy = <value optimized out>
        __FUNCTION__ = "AddPendingEvent"
#12 0x0015ad60 in wxSocketBase::OnRequest (this=0x9292ee0,
    notification=wxSOCKET_OUTPUT) at ../src/common/socket.cpp:1006
        event = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x866b788,
              static ms_classInfo = {m_className = 0xa74d98 L"wxObject",
                m_objectSize = 8, m_objectConstructor = 0, m_baseInfo1 = 0x0,
                m_baseInfo2 = 0x0, static sm_first = 0x7728cc,
                m_next = 0xaca8a4, static sm_classTable = 0x8860008},
              m_refData = 0x0}, m_eventObject = 0x9292ee0,
            m_eventType = 10002, m_timeStamp = 0, m_id = 6123,
            m_callbackUserData = 0x0, m_propagationLevel = 0,
            m_skipped = false, m_isCommandEvent = false,
            static ms_classInfo = {m_className = 0xa86590 L"wxEvent",
              m_objectSize = 36, m_objectConstructor = 0,
---Type <return> to continue, or q <return> to quit---
              m_baseInfo1 = 0xaca838, m_baseInfo2 = 0x0,
              static sm_first = 0x7728cc, m_next = 0xacb8e8,
              static sm_classTable = 0x8860008}}, m_event = wxSOCKET_OUTPUT,
          m_clientData = 0x0, static ms_classInfo = {
            m_className = 0x162f80 L"wxSocketEvent", m_objectSize = 44,
            m_objectConstructor = 0x1595e0 <wxSocketEvent::wxCreateObject()>,
            m_baseInfo1 = 0xacb900, m_baseInfo2 = 0x0,
            static sm_first = 0x7728cc, m_next = 0x16c54c,
            static sm_classTable = 0x8860008}}
        flag = <value optimized out>
#13 0x0015ae54 in wx_socket_callback (notification=GSOCK_OUTPUT,
    cdata=0x9292ee0 "\350\206?\b") at ../src/common/socket.cpp:942
No locals.
#14 0x0016027b in GSocket::Detected_Write (this=0xb2bf1f8)
    at ../src/unix/gsocket.cpp:1836
No locals.
#15 0x00f47927 in _GSocket_GDK_Input (data=0xb2bf1f8, source=139,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:41
No locals.
#16 0x00cf4f7c in ?? () from /usr/lib/libgdk-x11-2.0.so.0
No symbol table info available.
#17 0x06670d5b in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#18 0x06639e78 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
No symbol table info available.
#19 0x0663d720 in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#20 0x0663db8f in g_main_loop_run () from /lib/libglib-2.0.so.0
No symbol table info available.
#21 0x049b8419 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#22 0x00f45ec8 in wxEventLoop::Run (this=0x92c4578)
    at ../src/gtk/evtloop.cpp:76
        __FUNCTION__ = "Run"
        exitcode = <value optimized out>
#23 0x00fe72ac in wxAppBase::MainLoop (this=0x888fee0)
    at ../src/common/appcmn.cpp:312
        mainLoop = {<wxEventLoopPtr> = {m_ptr = 0x92c4578}, m_pp = 0x888ff20,
          m_pOld = 0x0}
#24 0x00fe7001 in wxAppBase::OnRun (this=0x0) at ../src/common/appcmn.cpp:367
No locals.
#25 0x009cf3ea in wxEntry (argc=@0xac96ac, argv=0x887e470)
    at ../src/common/init.cpp:460
No locals.
#26 0x009cf497 in wxEntry (argc=@0xbffff440, argv=0xbffff4e4)
    at ../src/common/init.cpp:472
---Type <return> to continue, or q <return> to quit---
No locals.
#27 0x08252a1b in main (argc=1, argv=0xbffff4e4) at amule-gui.cpp:94
No locals.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on December 22, 2009, 07:10:22 PM
So that wasn't it either.  :(
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 22, 2009, 07:33:21 PM
At least the code gets cleaned up  ;D
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 22, 2009, 07:34:44 PM
...and the more you clean up that is not the culprit,
the closer we get to finding what IS
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: Vollstrecker on December 22, 2009, 09:28:23 PM
I'm afraid of the moment when this bug is solved, and all the cleaned up code that had nothing to do with it explodes, or kills the network or something. Huh, you think it's possible that we get a bug that makes the clients of these network poiseners crash?
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on December 22, 2009, 10:20:20 PM
I'm afraid of the moment when this bug is solved, and all the cleaned up code that had nothing to do with it explodes, or kills the network or something.
So far, including the clean ups is an orthogonal issue to the bugs. If the cleanups doesn't meet some quality criteria, just don't commit them.

Anyways, this is a consequence of the poor development model that the closed svn imposes. For instance, if we'd use git, creating a cleanup branch a testing it would be easy cake.

Another problem with aMule is that wx + gtk + x11 is a poor toolkit in comparison with my favorite one: QT. I had to dig deep in the code and I was not happy with what I saw, specially in the gtk side. GTK is certainly an amateurish-coded toolkit, whatever the hype the have built around it, just see the support it has for concurrency. WX may be a little bit better, but in some places is half-finished, sometimes lacks documentation and proper structuring of layers, and has aberrations like WxString.

No surprise aMule is so fragile.

I say all the above with a big IMVHO and big respect for developers.  That is to say, I don't think I could code something better. I don't want to troll, that's just my what I think. In fact I want to thank all WX and GTK developers for their code, I just think we can do better.

Quote
Huh, you think it's possible that we get a bug that makes the clients of these network poiseners crash?

I'm afraid I don't understand what you mean. If you mean the clients of anti-emule business, they are custom coded and I guess they wouldn't take too much impact. More successful attacks against those guys where based just on hacking their [Windows] computers and networks.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: Vollstrecker on December 22, 2009, 11:50:27 PM
Svn vs. git: there is something like a git-mirror of amule, and svn should be able to do something like this, too. But why? That's what the development version is for.

gtk vs. qt: I you compare wx + gtk with just qt it's a bit unfair, because there is no layer in between. I work with kdelibs + qt and like every project, beginning is hard. But even a poor widgetset is no excuse for, let's call it, unclean code, so the problems of the past have it's origin somewhere else.

My whole post and especially anti-emule: Adjust your sarcasm-detector and answer with a smiley.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on December 23, 2009, 01:03:39 AM
 ;D
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on December 23, 2009, 01:44:28 PM
If the cleanups doesn't meet some quality criteria, just don't commit them.
"Cleanup" means "better code than before", that's my understanding of quality. Just because it doesn't fix this problem (which I didn't really expected anyway) is no reason not to commit it.

Quote
Anyways, this is a consequence of the poor development model that the closed svn imposes. For instance, if we'd use git, creating a cleanup branch a testing it would be easy cake.
Creating a branch is just as easy with SVN. Merging it back (and finding someone to test it) is the harder part.
I wouldn't call our dev model poor. It's almost fully open with tarballs for most versions and the second-source GIT repo  (much more open than many other OS projects, including eMule).

Quote
Another problem with aMule is that wx + gtk + x11 is a poor toolkit in comparison with my favorite one: QT.
I hear QT has its pitfalls too (and looks poor on many platforms with it's non-native widgets). Anyway, aMule without wx would be a separate project.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 23, 2009, 02:48:25 PM
Vollstrecker was only joking,
and btkaos responded to that (in seriousness, but not understanding) trying to find a way out.
So, no serious intentions here!
Of course, when the code has been cleaned up it should be committed.

Quote from: Stu Redman
Creating a branch is just as easy with SVN. Merging it back (and finding someone to test it) is the harder part.

Great!
Of course i would like to test anything (with your help).
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on December 24, 2009, 02:06:02 PM
Quote
Anyways, this is a consequence of the poor development model that the closed svn imposes. For instance, if we'd use git, creating a cleanup branch a testing it would be easy cake.
Creating a branch is just as easy with SVN. Merging it back (and finding someone to test it) is the harder part.
I wouldn't call our dev model poor. It's almost fully open with tarballs for most versions and the second-source GIT repo  (much more open than many other OS projects, including eMule).
Well I mean the svn is closed, and git aMule's [which I use] has no bearing with the original svn commits. This is extremly fustrating as I cannot branch aMule and have any changes back. Also, for testers like rrm is very easy to tell them to use git branch/clone. I know of the commit messages, fun problem, etc, but it is easy to filter that. The fact that eMule does it the wrong way is no excuse IMO.
Quote
Quote
Another problem with aMule is that wx + gtk + x11 is a poor toolkit in comparison with my favorite one: QT.
I hear QT has its pitfalls too (and looks poor on many platforms with it's non-native widgets). Anyway, aMule without wx would be a separate project.
AFAICT QT has now native widgets. Of course no programming library is free of pitfalls, but QT feels much more professional. And Wx is not bad, but that event-based programming cannot scale well in all cases IMO, in fact, following code-flow is a nightmare in some cases. GTK is really bad, just look at gtknotebook code.

Keep in mind I spoke after 5 hours wandering in the WxSocket and aMule code :p I'm afraid I didn't advance in resolving RRMs issue. So far we know about this bug:
I'd speculate the problem is that when RRM shares some popular file, a lot of people tries to connect to him/her. For each connection attempt a new event is generated. But the problem comes as aMule (I don't understand why yet) refuses to process all the connection event, which eventually will get the application to crash (bad socket due to very late processing) or to OOM.

Given the current code, I suspect this may be very hard to solve without deep changes, but I'm not familiar enough with the code yet.

Well guys, Merry Christmas to all which celebrate it, I hope you have today a good day.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on December 24, 2009, 02:07:45 PM
Vollstrecker was only joking,
and btkaos responded to that (in seriousness, but not understanding) trying to find a way out.
I'm sorry for that, but I'm afraid my irony detector fails often, so I'm not very socially capable in the Internets :)
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 24, 2009, 04:12:33 PM
Merry Christmas to you too Bill, and everybody else who is into it.
I hope we can find a way somehow.
Of course, there always is a way; we just have to find it.
(and im a guy, btw  :) )
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 24, 2009, 05:42:16 PM
Quote from: btkaos
Memory consumption goes up slowly ...
...the problem is that when RRM shares some popular file, a lot of people tries to connect to him/her

Even if uploading to only 50 clients simultaneously, aMule will crash within 3 days
if uploading to only 65 clients simultaneously, aMule will crash within 2 days
if uploading to 100 clients simultaneously, aMule will crash within 1 day
if uploading to 200 clients simultaneously, aMule will usually crash within 3 hours (sometimes much sooner)

On low speed connections, most clients get queued, and dont make connection attempts.
On high speed connections all clients make connection attempts.

A characteristic of the crashes is that the build of VSZ starts very slowly,
and accelerates exponentially as VSZ increases.
So, this may mean that a connection attempt that does not succeed immediately,
due to a (relative) lack of capacity to process connection attempts,
generates additional events.
Explaining the exponential increase in VSZ, no?

Yes, not all crashes are high VSZ, but maybe thats because the crash is caused by a (relative) lack of capacity to process connection attempts,
and sometimes occurs (just) before the VSZ skyrockets.
Of course i know nothing about programming or how aMule works; the above is just a notion.

Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on December 24, 2009, 06:09:55 PM
Thanks RRM, that was valuable information.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 25, 2009, 08:53:04 PM
Huh?
How can i have been uploading ("Upload Time") right now to 17 clients for over 5 hours straight,
while my terminal says aMule is running since only 3 hours and 37 minutes?

$ ps axl | grep amule
Code: [Select]
0  1000  2334  2303  20   0 122964 55684 rt_sig S    pts/0      0:01 gdb amule
0  1000  2336  2334  20   0 234196 102708 -     Rl+  pts/0    217:36 /usr/local/stow/amule-stu-opt-debug/bin/amule
0  1000  3572  2360  20   0   3036   784 -      R+   pts/1      0:00 grep amule

(im using 9907 now, after i used git)
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on December 25, 2009, 09:23:08 PM
That's CPU time what ps tells you. aMule has been running longer, since it doesn't use 100% CPU all the time.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 26, 2009, 05:27:57 PM
Aaaaah, ok, thank you.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 26, 2009, 05:45:58 PM
Rev 9907 had another low VSZ crash,
but somehow the bt seems a bit different to me, so i though i share it with you:

Program received signal SIGSEGV, Segmentation fault.
0x010e3924 in _GSocket_GDK_Input (data=0x9fc5300, source=34,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:41
41   ../src/gtk/gsockgtk.cpp: No such file or directory.
   in ../src/gtk/gsockgtk.cpp

(gdb) bt full
Code: [Select]
#0  0x010e3924 in _GSocket_GDK_Input (data=0x9fc5300, source=34,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:41
No locals.
#1  0x00585f7c in ?? () from /usr/lib/libgdk-x11-2.0.so.0
No symbol table info available.
#2  0x04e67d5b in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#3  0x04e30e78 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
No symbol table info available.
#4  0x04e34720 in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#5  0x04e34b8f in g_main_loop_run () from /lib/libglib-2.0.so.0
No symbol table info available.
#6  0x01491419 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#7  0x010e1ec8 in wxEventLoop::Run (this=0x9139b00)
    at ../src/gtk/evtloop.cpp:76
        __FUNCTION__ = "Run"
        exitcode = <value optimized out>
#8  0x011832ac in wxAppBase::MainLoop (this=0x888ff30)
    at ../src/common/appcmn.cpp:312
        mainLoop = {<wxEventLoopPtr> = {m_ptr = 0x9139b00}, m_pp = 0x888ff70,
          m_pOld = 0x0}
---Type <return> to continue, or q <return> to quit---
#9  0x01183001 in wxAppBase::OnRun (this=0x2a26)
    at ../src/common/appcmn.cpp:367
No locals.
#10 0x0046c3ea in wxEntry (argc=@0x5666ac, argv=0x887e470)
    at ../src/common/init.cpp:460
No locals.
#11 0x0046c497 in wxEntry (argc=@0xbffff430, argv=0xbffff4d4)
    at ../src/common/init.cpp:472
No locals.
#12 0x082529bb in main (argc=1, argv=0xbffff4d4) at amule-gui.cpp:94
No locals.

(gdb) thread apply all bt full
Code: [Select]

Thread 6 (Thread 0xb7eaeb70 (LWP 2115)):
#0  0x006e8422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x00be7ba6 in poll () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0x05e4ecc2 in ?? () from /usr/lib/libpulse.so.0
No symbol table info available.
#3  0x05e3be09 in pa_mainloop_poll () from /usr/lib/libpulse.so.0
No symbol table info available.
#4  0x05e3dc23 in pa_mainloop_iterate () from /usr/lib/libpulse.so.0
No symbol table info available.
#5  0x05e3dcf4 in pa_mainloop_run () from /usr/lib/libpulse.so.0
No symbol table info available.
#6  0x05e4ebc3 in ?? () from /usr/lib/libpulse.so.0
No symbol table info available.
#7  0x0366cac2 in ?? () from /usr/lib/libpulsecommon-0.9.19.so
No symbol table info available.
#8  0x00d5380e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#9  0x00bf57ee in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

---Type <return> to continue, or q <return> to quit---
Thread 5 (Thread 0xb63e5b70 (LWP 2114)):
#0  0x006e8422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x00d58142 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
   from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0x004dea3e in wxConditionInternal::WaitTimeout (this=0x9cfd1c8,
    milliseconds=100) at ../src/unix/threadpsx.cpp:405
        tspec = {tv_sec = 1261815097, tv_nsec = 767000000}
        err = <value optimized out>
#3  0x004deaca in wxCondition::WaitTimeout (this=0x892823c, milliseconds=100)
    at ../include/wx/thrimpl.cpp:256
        __FUNCTION__ = "WaitTimeout"
#4  0x004e07a4 in wxSemaphoreInternal::WaitTimeout (this=0x8928238,
    milliseconds=100) at ../src/unix/threadpsx.cpp:552
        remainingTime = <value optimized out>
        locker = {m_isOk = true, m_mutex = @0x8928238}
#5  0x004e082a in wxSemaphore::WaitTimeout (this=0x9139ad0, milliseconds=100)
    at ../include/wx/thrimpl.cpp:320
        __FUNCTION__ = "WaitTimeout"
#6  0x0834c412 in CTimerThread::Entry (this=0x9139ab0) at Timer.cpp:66
        now = <value optimized out>
        delta = 0
---Type <return> to continue, or q <return> to quit---
        evt = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x84db3a8,
              static ms_classInfo = {m_className = 0x511d98 L"wxObject",
                m_objectSize = 8, m_objectConstructor = 0, m_baseInfo1 = 0x0,
                m_baseInfo2 = 0x0, static sm_first = 0x2398cc,
                m_next = 0x5678a4, static sm_classTable = 0x8860008},
              m_refData = 0x0}, m_eventObject = 0x0, m_eventType = 10244,
            m_timeStamp = 0, m_id = 6128, m_callbackUserData = 0x0,
            m_propagationLevel = 0, m_skipped = false,
            m_isCommandEvent = false, static ms_classInfo = {
              m_className = 0x523590 L"wxEvent", m_objectSize = 36,
              m_objectConstructor = 0, m_baseInfo1 = 0x567838,
              m_baseInfo2 = 0x0, static sm_first = 0x2398cc,
              m_next = 0x5688e8,
              static sm_classTable = 0x8860008}}, <No data fields>}
        lastEvent = 3389679939
#7  0x004e19e3 in wxThreadInternal::PthreadStart (thread=0x9139ab0)
    at ../src/unix/threadpsx.cpp:766
        pthread = 0x9139ad8
        rc = <value optimized out>
        dontRunAtAll = false
        __FUNCTION__ = "PthreadStart"
#8  0x004e1aed in wxPthreadStart (ptr=0x9139ab0)
    at ../src/unix/threadpsx.cpp:718
---Type <return> to continue, or q <return> to quit---
No locals.
#9  0x00d5380e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#10 0x00bf57ee in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 3 (Thread 0xb73e8b70 (LWP 2112)):
#0  0x006e8422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x00be4bd3 in __fxstat64 () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0x04e68339 in g_io_channel_unix_new () from /lib/libglib-2.0.so.0
No symbol table info available.
#3  0x00585e5a in gdk_input_add_full () from /usr/lib/libgdk-x11-2.0.so.0
No symbol table info available.
#4  0x00585ede in gdk_input_add () from /usr/lib/libgdk-x11-2.0.so.0
No symbol table info available.
#5  0x010e3bc5 in GSocketGUIFunctionsTableConcrete::Install_Callback (
    this=0x1355a48, socket=0x4d, event=GSOCK_OUTPUT)
    at ../src/gtk/gsockgtk.cpp:98
        c = <value optimized out>
#6  0x00130f3d in GSocket::Enable (this=0xad541c0, event=GSOCK_OUTPUT)
    at ../src/unix/gsocket.cpp:1521
---Type <return> to continue, or q <return> to quit---
No locals.
#7  0x0013230a in GSocket::Write (this=0xad541c0,
    buffer=0xa49cd82 "\201\333J\016\267\350R3(\214h&ٵ\212_f\266Cy\211\220\361m\327r\252\274\023\337\315BH\\R\301\352b\034\274\277\362\347\"\\Z\316&\251S\371\330\355b\f\036\216\264F$\346\372\063\346t\036B=W\271\032?G\213\317\314e4\261\350\066\215@/\276.\330Ӕ\374\327\351c\213\027/&\375\324\061'\223\343\a\374Lz\377T(\227\017\031\070\350\070\363;\204\067\333\r9\032\021L{\035\225:#\233~ĩT\343f\216eO@\243\207\316yNHm\327\a\222\343\035\f\305\065\201\070c\237\215\306\372\261\352\005\301\061M6\021\355,\277\347\221!\233\257\324a\263\aej~ط\303\311|\230n\037\200D"..., size=2084) at ../src/unix/gsocket.cpp:1257
        ret = -1
        __PRETTY_FUNCTION__ = "int GSocket::Write(const char*, int)"
#8  0x0012d486 in wxSocketBase::_Write (this=0xb40b488, buffer=0xa49cd82,
    nbytes=2084) at ../src/common/socket.cpp:539
        total = 0
        ret = <value optimized out>
#9  0x0012d5f7 in wxSocketBase::Write (this=0xb40b488, buffer=0xa49cd82,
    nbytes=2084) at ../src/common/socket.cpp:507
No locals.
#10 0x0830eaca in CSocketClientProxy::Write (this=0xb40b488, buffer=0xa49cd82,
    nbytes=2084) at Proxy.cpp:1292
        lock = {m_isOk = true, m_mutex = @0xb40b544}
#11 0x08137a4b in CEncryptedStreamSocket::Write (this=0xb40b488,
---Type <return> to continue, or q <return> to quit---
    lpBuf=0xa49cd82, nBufLen=2084) at EncryptedStreamSocket.cpp:210
        __FUNCTION__ = "Write"
#12 0x0813476b in CEMSocket::Send (this=0xb40b488,
    maxNumberOfBytesToSend=2600, minFragSize=2600,
    onlyAllowedToSendControlPacket=false) at EMSocket.cpp:623
        tosend = 2084
        result = <value optimized out>
        bWasLongTimeSinceSend = false
        sentControlPacketBytesThisCall = 0
        __FUNCTION__ = "Send"
        lock = {m_isOk = true, m_mutex = @0xb40b818}
        anErrorHasOccured = false
        sentStandardPacketBytesThisCall = 0
#13 0x080e23ff in CEMSocket::SendFileAndControlData (this=0xb40b488,
    maxNumberOfBytesToSend=2600, minFragSize=2600) at EMSocket.h:71
No locals.
#14 0x080d3b1c in CClientTCPSocket::SendFileAndControlData (this=0xb40b488,
    maxNumberOfBytesToSend=2600, overchargeMaxBytesToSend=2600)
    at ClientTCPSocket.cpp:2132
        returnStatus = {success = true, sentBytesStandardPackets = 0,
          sentBytesControlPackets = 0}
#15 0x081c537d in UploadBandwidthThrottler::Entry (this=0x8fc7598)
    at UploadBandwidthThrottler.cpp:419
---Type <return> to continue, or q <return> to quit---
        socketSentBytes = {success = true, sentBytesStandardPackets = 0,
          sentBytesControlPackets = 0}
        data = 2600
        socket = <value optimized out>
        slotCounter = 5
        slots = 53
        spentBytes = <value optimized out>
        spentOverhead = <value optimized out>
        sendLock = {m_isOk = true, m_mutex = @0x8fc75a8}
        timeSinceLastLoop = <value optimized out>
        minFragSize = 1300
        doubleSendSize = 2600
        sleepTime = 0
        thisLoopTick = 3389679959
        bytesToSpend = <value optimized out>
        extraSleepTime = 1
        lastLoopTick = 53
        allowedDataRate = <value optimized out>
        rememberedSlotCounter = 52
        sendLock = {m_isOk = 48, m_mutex = @0x0}
#16 0x004e19e3 in wxThreadInternal::PthreadStart (thread=0x8fc7598)
    at ../src/unix/threadpsx.cpp:766
        pthread = 0x8fbffb8
---Type <return> to continue, or q <return> to quit---
        rc = <value optimized out>
        dontRunAtAll = false
        __FUNCTION__ = "PthreadStart"
#17 0x004e1aed in wxPthreadStart (ptr=0x8fc7598)
    at ../src/unix/threadpsx.cpp:718
No locals.
#18 0x00d5380e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#19 0x00bf57ee in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 1 (Thread 0xb7fdd760 (LWP 2098)):
#0  0x010e3924 in _GSocket_GDK_Input (data=0x9fc5300, source=34,
    condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:41
No locals.
#1  0x00585f7c in ?? () from /usr/lib/libgdk-x11-2.0.so.0
No symbol table info available.
#2  0x04e67d5b in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#3  0x04e30e78 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
No symbol table info available.
#4  0x04e34720 in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#5  0x04e34b8f in g_main_loop_run () from /lib/libglib-2.0.so.0
No symbol table info available.
#6  0x01491419 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#7  0x010e1ec8 in wxEventLoop::Run (this=0x9139b00)
    at ../src/gtk/evtloop.cpp:76
        __FUNCTION__ = "Run"
        exitcode = <value optimized out>
#8  0x011832ac in wxAppBase::MainLoop (this=0x888ff30)
    at ../src/common/appcmn.cpp:312
        mainLoop = {<wxEventLoopPtr> = {m_ptr = 0x9139b00}, m_pp = 0x888ff70,
          m_pOld = 0x0}
#9  0x01183001 in wxAppBase::OnRun (this=0x2a26)
    at ../src/common/appcmn.cpp:367
No locals.
#10 0x0046c3ea in wxEntry (argc=@0x5666ac, argv=0x887e470)
    at ../src/common/init.cpp:460
No locals.
#11 0x0046c497 in wxEntry (argc=@0xbffff430, argv=0xbffff4d4)
    at ../src/common/init.cpp:472
No locals.
#12 0x082529bb in main (argc=1, argv=0xbffff4d4) at amule-gui.cpp:94
No locals.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 26, 2009, 05:54:38 PM
$ cat /proc/2098/maps

Part 1:
Code: [Select]
003a5000-003a6000 rw-p 00018000 08:11 14746777   /usr/lib/libgdk_pixbuf-2.0.so.0.1800.3
003a6000-003aa000 r-xp 00000000 08:11 14747742   /usr/lib/libgthread-2.0.so.0.2200.2
003aa000-003ab000 r--p 00003000 08:11 14747742   /usr/lib/libgthread-2.0.so.0.2200.2
003ab000-003ac000 rw-p 00004000 08:11 14747742   /usr/lib/libgthread-2.0.so.0.2200.2
003ac000-003b3000 r-xp 00000000 08:11 89268244   /lib/tls/i686/cmov/librt-2.10.1.so
003b3000-003b4000 r--p 00006000 08:11 89268244   /lib/tls/i686/cmov/librt-2.10.1.so
003b4000-003b5000 rw-p 00007000 08:11 89268244   /lib/tls/i686/cmov/librt-2.10.1.so
003b5000-003b7000 r-xp 00000000 08:11 14748272   /usr/lib/libXinerama.so.1.0.0
003b7000-003b8000 rw-p 00001000 08:11 14748272   /usr/lib/libXinerama.so.1.0.0
003b8000-003ba000 r-xp 00000000 08:11 63979612   /usr/lib/libXcomposite.so.1.0.0
003ba000-003bb000 r--p 00001000 08:11 63979612   /usr/lib/libXcomposite.so.1.0.0
003bb000-003bc000 rw-p 00002000 08:11 63979612   /usr/lib/libXcomposite.so.1.0.0
003be000-003d9000 r-xp 00000000 08:11 35012609   /lib/ld-2.10.1.so
003d9000-003da000 r--p 0001a000 08:11 35012609   /lib/ld-2.10.1.so
003da000-003db000 rw-p 0001b000 08:11 35012609   /lib/ld-2.10.1.so
003db000-0055a000 r-xp 00000000 08:11 14749245   /usr/lib/libwx_baseud-2.8.so.0.6.0
0055a000-0055b000 ---p 0017f000 08:11 14749245   /usr/lib/libwx_baseud-2.8.so.0.6.0
0055b000-0055f000 r--p 0017f000 08:11 14749245   /usr/lib/libwx_baseud-2.8.so.0.6.0
0055f000-00561000 rw-p 00183000 08:11 14749245   /usr/lib/libwx_baseud-2.8.so.0.6.0
00561000-00569000 rw-p 00000000 00:00 0
00569000-005fb000 r-xp 00000000 08:11 14746759   /usr/lib/libgdk-x11-2.0.so.0.1800.3
005fb000-005fd000 r--p 00092000 08:11 14746759   /usr/lib/libgdk-x11-2.0.so.0.1800.3
005fd000-005fe000 rw-p 00094000 08:11 14746759   /usr/lib/libgdk-x11-2.0.so.0.1800.3
005fe000-00605000 r-xp 00000000 08:11 14745728   /usr/lib/libSM.so.6.0.0
00605000-00606000 r--p 00006000 08:11 14745728   /usr/lib/libSM.so.6.0.0
00606000-00607000 rw-p 00007000 08:11 14745728   /usr/lib/libSM.so.6.0.0
00607000-00612000 r-xp 00000000 08:11 14747774   /usr/lib/libpangocairo-1.0.so.0.2600.0
00612000-00613000 r--p 0000a000 08:11 14747774   /usr/lib/libpangocairo-1.0.so.0.2600.0
00613000-00614000 rw-p 0000b000 08:11 14747774   /usr/lib/libpangocairo-1.0.so.0.2600.0
00614000-00616000 r-xp 00000000 08:11 14748258   /usr/lib/libXdamage.so.1.1.0
00616000-00617000 rw-p 00001000 08:11 14748258   /usr/lib/libXdamage.so.1.1.0
00617000-0061b000 r-xp 00000000 08:11 63979550   /usr/lib/libXfixes.so.3.1.0
0061b000-0061c000 r--p 00003000 08:11 63979550   /usr/lib/libXfixes.so.3.1.0
0061c000-0061d000 rw-p 00004000 08:11 63979550   /usr/lib/libXfixes.so.3.1.0
0061d000-00624000 r-xp 00000000 08:11 63979576   /usr/lib/libXrandr.so.2.2.0
00624000-00625000 r--p 00006000 08:11 63979576   /usr/lib/libXrandr.so.2.2.0
00625000-00626000 rw-p 00007000 08:11 63979576   /usr/lib/libXrandr.so.2.2.0
00626000-0063a000 r-xp 00000000 08:11 35012643   /lib/libz.so.1.2.3.3
0063a000-0063b000 r--p 00013000 08:11 35012643   /lib/libz.so.1.2.3.3
0063b000-0063c000 rw-p 00014000 08:11 35012643   /lib/libz.so.1.2.3.3
0063c000-006cf000 r-xp 00000000 08:11 14747743   /usr/lib/libgio-2.0.so.0.2200.2
006cf000-006d0000 r--p 00092000 08:11 14747743   /usr/lib/libgio-2.0.so.0.2200.2
006d0000-006d1000 rw-p 00093000 08:11 14747743   /usr/lib/libgio-2.0.so.0.2200.2
006d1000-006d2000 rw-p 00000000 00:00 0
006d2000-006e0000 r-xp 00000000 08:11 14745602   /usr/lib/libXext.so.6.4.0
006e0000-006e1000 r--p 0000d000 08:11 14745602   /usr/lib/libXext.so.6.4.0
006e1000-006e2000 rw-p 0000e000 08:11 14745602   /usr/lib/libXext.so.6.4.0
006e2000-006e5000 r-xp 00000000 08:11 35012651   /lib/libuuid.so.1.3.0
006e5000-006e6000 r--p 00002000 08:11 35012651   /lib/libuuid.so.1.3.0
006e6000-006e7000 rw-p 00003000 08:11 35012651   /lib/libuuid.so.1.3.0
006e8000-006e9000 r-xp 00000000 00:00 0          [vdso]
006e9000-00a9d000 r-xp 00000000 08:11 14749234   /usr/lib/libcrypto++.so.8.0.0
00a9d000-00ad3000 r--p 003b4000 08:11 14749234   /usr/lib/libcrypto++.so.8.0.0
00ad3000-00ad5000 rw-p 003ea000 08:11 14749234   /usr/lib/libcrypto++.so.8.0.0
00ad5000-00ad9000 rw-p 00000000 00:00 0
00ad9000-00aff000 r-xp 00000000 08:11 14747758   /usr/lib/libpng12.so.0.37.0
00aff000-00b00000 r--p 00025000 08:11 14747758   /usr/lib/libpng12.so.0.37.0
00b00000-00b01000 rw-p 00026000 08:11 14747758   /usr/lib/libpng12.so.0.37.0
00b03000-00b27000 r-xp 00000000 08:11 89268232   /lib/tls/i686/cmov/libm-2.10.1.so
00b27000-00b28000 r--p 00023000 08:11 89268232   /lib/tls/i686/cmov/libm-2.10.1.so
00b28000-00b29000 rw-p 00024000 08:11 89268232   /lib/tls/i686/cmov/libm-2.10.1.so
00b29000-00c67000 r-xp 00000000 08:11 89268228   /lib/tls/i686/cmov/libc-2.10.1.so
00c67000-00c69000 r--p 0013e000 08:11 89268228   /lib/tls/i686/cmov/libc-2.10.1.so
00c69000-00c6a000 rw-p 00140000 08:11 89268228   /lib/tls/i686/cmov/libc-2.10.1.so
00c6a000-00c6d000 rw-p 00000000 00:00 0
00c6d000-00cb3000 r-xp 00000000 08:11 14747773   /usr/lib/libpango-1.0.so.0.2600.0
00cb3000-00cb4000 r--p 00045000 08:11 14747773   /usr/lib/libpango-1.0.so.0.2600.0
00cb4000-00cb5000 rw-p 00046000 08:11 14747773   /usr/lib/libpango-1.0.so.0.2600.0
00cb5000-00cbd000 r-xp 00000000 08:11 14747768   /usr/lib/libXrender.so.1.3.0
00cbd000-00cbe000 r--p 00007000 08:11 14747768   /usr/lib/libXrender.so.1.3.0
00cbe000-00cbf000 rw-p 00008000 08:11 14747768   /usr/lib/libXrender.so.1.3.0
00cbf000-00cc8000 r-xp 00000000 08:11 14746793   /usr/lib/libXi.so.6.0.0
00cc8000-00cc9000 r--p 00008000 08:11 14746793   /usr/lib/libXi.so.6.0.0
00cc9000-00cca000 rw-p 00009000 08:11 14746793   /usr/lib/libXi.so.6.0.0
00ccd000-00ce7000 r-xp 00000000 08:11 14749196   /usr/lib/libupnp.so.3.0.5
00ce7000-00ce8000 r--p 00019000 08:11 14749196   /usr/lib/libupnp.so.3.0.5
00ce8000-00ce9000 rw-p 0001a000 08:11 14749196   /usr/lib/libupnp.so.3.0.5
00ce9000-00cea000 rw-p 00000000 00:00 0
00cea000-00d15000 r-xp 00000000 08:11 14748516   /usr/lib/libfontconfig.so.1.3.0
00d15000-00d16000 r--p 0002a000 08:11 14748516   /usr/lib/libfontconfig.so.1.3.0
00d16000-00d17000 rw-p 0002b000 08:11 14748516   /usr/lib/libfontconfig.so.1.3.0
00d17000-00d39000 r-xp 00000000 08:11 63979541   /usr/lib/libjpeg.so.62.0.0
00d39000-00d3a000 r--p 00021000 08:11 63979541   /usr/lib/libjpeg.so.62.0.0
00d3a000-00d3b000 rw-p 00022000 08:11 63979541   /usr/lib/libjpeg.so.62.0.0
00d3b000-00d44000 r-xp 00000000 08:11 14746020   /usr/lib/libXcursor.so.1.0.2
00d44000-00d45000 r--p 00008000 08:11 14746020   /usr/lib/libXcursor.so.1.0.2
00d45000-00d46000 rw-p 00009000 08:11 14746020   /usr/lib/libXcursor.so.1.0.2
00d46000-00d49000 r-xp 00000000 08:11 14747549   /usr/lib/libxcb-render-util.so.0.0.0
00d49000-00d4a000 r--p 00002000 08:11 14747549   /usr/lib/libxcb-render-util.so.0.0.0
00d4a000-00d4b000 rw-p 00003000 08:11 14747549   /usr/lib/libxcb-render-util.so.0.0.0
00d4e000-00d63000 r-xp 00000000 08:11 89268242   /lib/tls/i686/cmov/libpthread-2.10.1.so
00d63000-00d64000 r--p 00014000 08:11 89268242   /lib/tls/i686/cmov/libpthread-2.10.1.so
00d64000-00d65000 rw-p 00015000 08:11 89268242   /lib/tls/i686/cmov/libpthread-2.10.1.so
00d65000-00d67000 rw-p 00000000 00:00 0
00d67000-00de1000 r-xp 00000000 08:11 14747755   /usr/lib/libfreetype.so.6.3.20
00de1000-00de5000 r--p 00079000 08:11 14747755   /usr/lib/libfreetype.so.6.3.20
00de5000-00de6000 rw-p 0007d000 08:11 14747755   /usr/lib/libfreetype.so.6.3.20
00de6000-00e22000 r-xp 00000000 08:11 14746432   /usr/lib/libgobject-2.0.so.0.2200.2
00e22000-00e23000 r--p 0003b000 08:11 14746432   /usr/lib/libgobject-2.0.so.0.2200.2
00e23000-00e24000 rw-p 0003c000 08:11 14746432   /usr/lib/libgobject-2.0.so.0.2200.2
00e24000-00e34000 r-xp 00000000 08:11 89268243   /lib/tls/i686/cmov/libresolv-2.10.1.so
00e34000-00e35000 r--p 00010000 08:11 89268243   /lib/tls/i686/cmov/libresolv-2.10.1.so
00e35000-00e36000 rw-p 00011000 08:11 89268243   /lib/tls/i686/cmov/libresolv-2.10.1.so
00e36000-00e38000 rw-p 00000000 00:00 0
00e38000-00e3a000 r-xp 00000000 08:11 14747760   /usr/lib/libXau.so.6.0.0
00e3a000-00e3b000 r--p 00001000 08:11 14747760   /usr/lib/libXau.so.6.0.0
00e3b000-00e3c000 rw-p 00002000 08:11 14747760   /usr/lib/libXau.so.6.0.0
00e3d000-00e58000 r-xp 00000000 08:11 14747670   /usr/lib/libatk-1.0.so.0.2809.1
00e58000-00e59000 r--p 0001b000 08:11 14747670   /usr/lib/libatk-1.0.so.0.2809.1
00e59000-00e5a000 rw-p 0001c000 08:11 14747670   /usr/lib/libatk-1.0.so.0.2809.1
00e5a000-00e89000 r-xp 00000000 08:11 58286180   /lib/libpcre.so.3.12.1
00e89000-00e8a000 r--p 0002e000 08:11 58286180   /lib/libpcre.so.3.12.1
00e8a000-00e8b000 rw-p 0002f000 08:11 58286180   /lib/libpcre.so.3.12.1
00e8b000-00e93000 r-xp 00000000 08:11 14747749   /usr/lib/libfusion-1.2.so.0.7.0
00e93000-00e94000 r--p 00007000 08:11 14747749   /usr/lib/libfusion-1.2.so.0.7.0
00e94000-00e95000 rw-p 00008000 08:11 14747749   /usr/lib/libfusion-1.2.so.0.7.0
00e98000-00f61000 r-xp 00000000 08:11 14746047   /usr/lib/libbfd-2.20.so
00f61000-00f6a000 r--p 000c8000 08:11 14746047   /usr/lib/libbfd-2.20.so
00f6a000-00f6c000 rw-p 000d1000 08:11 14746047   /usr/lib/libbfd-2.20.so
00f6c000-00f70000 rw-p 00000000 00:00 0
00f70000-00f89000 r-xp 00000000 08:11 58286186   /lib/libselinux.so.1
00f89000-00f8a000 r--p 00018000 08:11 58286186   /lib/libselinux.so.1
00f8a000-00f8b000 rw-p 00019000 08:11 58286186   /lib/libselinux.so.1
00f8b000-00f92000 r-xp 00000000 08:11 14747765   /usr/lib/libxcb-render.so.0.0.0
00f92000-00f93000 r--p 00007000 08:11 14747765   /usr/lib/libxcb-render.so.0.0.0
00f93000-00f94000 rw-p 00008000 08:11 14747765   /usr/lib/libxcb-render.so.0.0.0
00f94000-00f98000 r-xp 00000000 08:11 14748260   /usr/lib/libXdmcp.so.6.0.0
00f98000-00f99000 rw-p 00003000 08:11 14748260   /usr/lib/libXdmcp.so.6.0.0
00f9c000-00fa4000 r-xp 00000000 08:11 14749194   /usr/lib/libixml.so.2.0.4
00fa4000-00fa5000 r--p 00007000 08:11 14749194   /usr/lib/libixml.so.2.0.4
00fa5000-00fa6000 rw-p 00008000 08:11 14749194   /usr/lib/libixml.so.2.0.4
00fa6000-01327000 r-xp 00000000 08:11 14749257   /usr/lib/libwx_gtk2ud_core-2.8.so.0.6.0
01327000-01328000 ---p 00381000 08:11 14749257   /usr/lib/libwx_gtk2ud_core-2.8.so.0.6.0
01328000-0134f000 r--p 00381000 08:11 14749257   /usr/lib/libwx_gtk2ud_core-2.8.so.0.6.0
0134f000-01354000 rw-p 003a8000 08:11 14749257   /usr/lib/libwx_gtk2ud_core-2.8.so.0.6.0
01354000-0135a000 rw-p 00000000 00:00 0
0135a000-01712000 r-xp 00000000 08:11 14746757   /usr/lib/libgtk-x11-2.0.so.0.1800.3
01712000-01713000 ---p 003b8000 08:11 14746757   /usr/lib/libgtk-x11-2.0.so.0.1800.3
01713000-01717000 r--p 003b8000 08:11 14746757   /usr/lib/libgtk-x11-2.0.so.0.1800.3
01717000-01719000 rw-p 003bc000 08:11 14746757   /usr/lib/libgtk-x11-2.0.so.0.1800.3
01719000-0171b000 rw-p 00000000 00:00 0
0171b000-0175f000 r-xp 00000000 08:11 14747453   /usr/lib/libpixman-1.so.0.14.0
0175f000-01761000 r--p 00043000 08:11 14747453   /usr/lib/libpixman-1.so.0.14.0
01761000-01762000 rw-p 00045000 08:11 14747453   /usr/lib/libpixman-1.so.0.14.0
01762000-01778000 r-xp 00000000 08:11 14747747   /usr/lib/libdirect-1.2.so.0.7.0
01778000-01779000 r--p 00015000 08:11 14747747   /usr/lib/libdirect-1.2.so.0.7.0
01779000-0177a000 rw-p 00016000 08:11 14747747   /usr/lib/libdirect-1.2.so.0.7.0
0177a000-01788000 r-xp 00000000 08:11 14746774   /usr/lib/libcanberra.so.0.1.7
01788000-01789000 r--p 0000d000 08:11 14746774   /usr/lib/libcanberra.so.0.1.7
01789000-0178a000 rw-p 0000e000 08:11 14746774   /usr/lib/libcanberra.so.0.1.7
0178a000-0179f000 r-xp 00000000 08:11 14748321   /usr/lib/libart_lgpl_2.so.2.3.20
0179f000-017a1000 rw-p 00014000 08:11 14748321   /usr/lib/libart_lgpl_2.so.2.3.20
017a1000-018c3000 r-xp 00000000 08:11 14747793   /usr/lib/libxml2.so.2.7.5
018c3000-018c4000 ---p 00122000 08:11 14747793   /usr/lib/libxml2.so.2.7.5
018c4000-018c8000 r--p 00122000 08:11 14747793   /usr/lib/libxml2.so.2.7.5
018c8000-018c9000 rw-p 00126000 08:11 14747793   /usr/lib/libxml2.so.2.7.5
018c9000-018ca000 rw-p 00000000 00:00 0
018ca000-018cf000 r-xp 00000000 08:11 89268236   /lib/tls/i686/cmov/libnss_dns-2.10.1.so
018cf000-018d0000 r--p 00004000 08:11 89268236   /lib/tls/i686/cmov/libnss_dns-2.10.1.so
018d0000-018d1000 rw-p 00005000 08:11 89268236   /lib/tls/i686/cmov/libnss_dns-2.10.1.so
018d1000-018d6000 r-xp 00000000 08:11 14778381   /usr/lib/gtk-2.0/2.10.0/immodules/im-ibus.so
018d6000-018d7000 r--p 00004000 08:11 14778381   /usr/lib/gtk-2.0/2.10.0/immodules/im-ibus.so
018d7000-018d8000 rw-p 00005000 08:11 14778381   /usr/lib/gtk-2.0/2.10.0/immodules/im-ibus.so
018d8000-018de000 r-xp 00000000 08:11 14860670   /usr/lib/libcanberra-0.15/libcanberra-pulse.so
018de000-018df000 r--p 00005000 08:11 14860670   /usr/lib/libcanberra-0.15/libcanberra-pulse.so
018df000-018e0000 rw-p 00006000 08:11 14860670   /usr/lib/libcanberra-0.15/libcanberra-pulse.so
018e0000-018e4000 r-xp 00000000 08:11 14748290   /usr/lib/libXtst.so.6.1.0
018e4000-018e5000 r--p 00004000 08:11 14748290   /usr/lib/libXtst.so.6.1.0
018e5000-018e6000 rw-p 00005000 08:11 14748290   /usr/lib/libXtst.so.6.1.0
0197a000-019b8000 r-xp 00000000 08:11 14748645   /usr/lib/libgnomeprintui-2-2.so.0.1.0
019b8000-019b9000 r--p 0003d000 08:11 14748645   /usr/lib/libgnomeprintui-2-2.so.0.1.0
019b9000-019ba000 rw-p 0003e000 08:11 14748645   /usr/lib/libgnomeprintui-2-2.so.0.1.0
019ba000-019c5000 r-xp 00000000 08:11 14746763   /usr/lib/libvorbisenc.so.2.0.3
019c5000-019c6000 r--p 0000a000 08:11 14746763   /usr/lib/libvorbisenc.so.2.0.3
019c6000-01ab6000 rw-p 0000b000 08:11 14746763   /usr/lib/libvorbisenc.so.2.0.3
01ac3000-01ac7000 r-xp 00000000 08:11 14778484   /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so
01ac7000-01ac8000 r--p 00003000 08:11 14778484   /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so
01ac8000-01ac9000 rw-p 00004000 08:11 14778484   /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so
02357000-023c5000 r-xp 00000000 08:11 14748225   /usr/lib/libgnomeprint-2-2.so.0.1.0
023c5000-023c6000 ---p 0006e000 08:11 14748225   /usr/lib/libgnomeprint-2-2.so.0.1.0
023c6000-023c7000 r--p 0006e000 08:11 14748225   /usr/lib/libgnomeprint-2-2.so.0.1.0
023c7000-023c8000 rw-p 0006f000 08:11 14748225   /usr/lib/libgnomeprint-2-2.so.0.1.0
023ce000-023ea000 r-xp 00000000 08:11 14747762   /usr/lib/libxcb.so.1.1.0
023ea000-023eb000 r--p 0001c000 08:11 14747762   /usr/lib/libxcb.so.1.1.0
023eb000-023ec000 rw-p 0001d000 08:11 14747762   /usr/lib/libxcb.so.1.1.0
0280c000-02812000 r-xp 00000000 08:11 14745677   /usr/lib/libgailutil.so.18.0.1
02812000-02813000 r--p 00005000 08:11 14745677   /usr/lib/libgailutil.so.18.0.1
02813000-02814000 rw-p 00006000 08:11 14745677   /usr/lib/libgailutil.so.18.0.1
02b24000-02b48000 r-xp 00000000 08:11 14778747   /usr/lib/gio/modules/libgvfsdbus.so
02b48000-02b49000 r--p 00023000 08:11 14778747   /usr/lib/gio/modules/libgvfsdbus.so

Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 26, 2009, 05:54:54 PM
Part 2:
Code: [Select]
02b49000-02b4a000 rw-p 00024000 08:11 14778747   /usr/lib/gio/modules/libgvfsdbus.so
02e3e000-02e48000 r-xp 00000000 08:11 89268237   /lib/tls/i686/cmov/libnss_files-2.10.1.so
02e48000-02e49000 r--p 00009000 08:11 89268237   /lib/tls/i686/cmov/libnss_files-2.10.1.so
02e49000-02e4a000 rw-p 0000a000 08:11 89268237   /lib/tls/i686/cmov/libnss_files-2.10.1.so
02f4f000-02f52000 r-xp 00000000 08:11 14746776   /usr/lib/libcanberra-gtk.so.0.1.1
02f52000-02f53000 r--p 00002000 08:11 14746776   /usr/lib/libcanberra-gtk.so.0.1.1
02f53000-02f54000 rw-p 00003000 08:11 14746776   /usr/lib/libcanberra-gtk.so.0.1.1
032f6000-0330a000 r-xp 00000000 08:11 14746559   /usr/lib/libgvfscommon.so.0.0.0
0330a000-0330b000 r--p 00013000 08:11 14746559   /usr/lib/libgvfscommon.so.0.0.0
0330b000-0330c000 rw-p 00014000 08:11 14746559   /usr/lib/libgvfscommon.so.0.0.0
03631000-03679000 r-xp 00000000 08:11 63979599   /usr/lib/libpulsecommon-0.9.19.so
03679000-0367a000 r--p 00047000 08:11 63979599   /usr/lib/libpulsecommon-0.9.19.so
0367a000-0367b000 rw-p 00048000 08:11 63979599   /usr/lib/libpulsecommon-0.9.19.so
039c9000-039cb000 r-xp 00000000 08:11 14763702   /usr/lib/gconv/UTF-32.so
039cb000-039cc000 r--p 00001000 08:11 14763702   /usr/lib/gconv/UTF-32.so
039cc000-039cd000 rw-p 00002000 08:11 14763702   /usr/lib/gconv/UTF-32.so
03bf2000-03c05000 r-xp 00000000 08:11 89268234   /lib/tls/i686/cmov/libnsl-2.10.1.so
03c05000-03c06000 r--p 00012000 08:11 89268234   /lib/tls/i686/cmov/libnsl-2.10.1.so
03c06000-03c07000 rw-p 00013000 08:11 89268234   /lib/tls/i686/cmov/libnsl-2.10.1.so
03c07000-03c09000 rw-p 00000000 00:00 0
03e0b000-03e59000 r-xp 00000000 08:11 14746609   /usr/lib/libFLAC.so.8.2.0
03e59000-03e5a000 r--p 0004d000 08:11 14746609   /usr/lib/libFLAC.so.8.2.0
03e5a000-03e5b000 rw-p 0004e000 08:11 14746609   /usr/lib/libFLAC.so.8.2.0
0481c000-04836000 r-xp 00000000 08:11 14747486   /usr/lib/libvorbis.so.0.4.0
04836000-04837000 r--p 00019000 08:11 14747486   /usr/lib/libvorbis.so.0.4.0
04837000-04845000 rw-p 0001a000 08:11 14747486   /usr/lib/libvorbis.so.0.4.0
04c71000-04c78000 r-xp 00000000 08:11 14746951   /usr/lib/libvorbisfile.so.3.2.0
04c78000-04c79000 r--p 00006000 08:11 14746951   /usr/lib/libvorbisfile.so.3.2.0
04c79000-04c7a000 rw-p 00007000 08:11 14746951   /usr/lib/libvorbisfile.so.3.2.0
04df8000-04eac000 r-xp 00000000 08:11 58286194   /lib/libglib-2.0.so.0.2200.2
04eac000-04ead000 r--p 000b4000 08:11 58286194   /lib/libglib-2.0.so.0.2200.2
04ead000-04eae000 rw-p 000b5000 08:11 58286194   /lib/libglib-2.0.so.0.2200.2
05543000-05579000 r-xp 00000000 08:11 14745780   /usr/lib/libibus.so.1.0.0
05579000-0557a000 r--p 00036000 08:11 14745780   /usr/lib/libibus.so.1.0.0
0557a000-0557b000 rw-p 00037000 08:11 14745780   /usr/lib/libibus.so.1.0.07ef2298fde41cc6eeb7af42e48b7d293
05600000-05606000 r-xp 00000000 08:11 14778860   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-xpm.so
05606000-05607000 r--p 00005000 08:11 14778860   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-xpm.so
05607000-05608000 rw-p 00006000 08:11 14778860   /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-xpm.so
05a91000-05a9a000 r-xp 00000000 08:11 89268239   /lib/tls/i686/cmov/libnss_nis-2.10.1.so
05a9a000-05a9b000 r--p 00008000 08:11 89268239   /lib/tls/i686/cmov/libnss_nis-2.10.1.so
05a9b000-05a9c000 rw-p 00009000 08:11 89268239   /lib/tls/i686/cmov/libnss_nis-2.10.1.so
05e04000-05e09000 r-xp 00000000 08:11 14746740   /usr/lib/libogg.so.0.6.0
05e09000-05e0a000 r--p 00004000 08:11 14746740   /usr/lib/libogg.so.0.6.0
05e0a000-05e0b000 rw-p 00005000 08:11 14746740   /usr/lib/libogg.so.0.6.0
05e20000-05e5e000 r-xp 00000000 08:11 63979597   /usr/lib/libpulse.so.0.12.0
05e5e000-05e5f000 r--p 0003d000 08:11 63979597   /usr/lib/libpulse.so.0.12.0
05e5f000-05e60000 rw-p 0003e000 08:11 63979597   /usr/lib/libpulse.so.0.12.0
05e72000-05ea5000 r-xp 00000000 08:11 14746720   /usr/lib/libgnomecanvas-2.so.0.2600.0
05ea5000-05ea6000 r--p 00032000 08:11 14746720   /usr/lib/libgnomecanvas-2.so.0.2600.0
05ea6000-05ea7000 rw-p 00033000 08:11 14746720   /usr/lib/libgnomecanvas-2.so.0.2600.0
05fb2000-05fb4000 r-xp 00000000 08:11 14819369   /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
05fb4000-05fb5000 r--p 00001000 08:11 14819369   /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
05fb5000-05fb6000 rw-p 00002000 08:11 14819369   /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
05fd8000-05fde000 r-xp 00000000 08:11 89268235   /lib/tls/i686/cmov/libnss_compat-2.10.1.so
05fde000-05fdf000 r--p 00005000 08:11 89268235   /lib/tls/i686/cmov/libnss_compat-2.10.1.so
05fdf000-05fe0000 rw-p 00006000 08:11 89268235   /lib/tls/i686/cmov/libnss_compat-2.10.1.so
06053000-06055000 r-xp 00000000 08:11 35012679   /lib/libnss_mdns4_minimal.so.2
06055000-06056000 r--p 00001000 08:11 35012679   /lib/libnss_mdns4_minimal.so.2
06056000-06057000 rw-p 00002000 08:11 35012679   /lib/libnss_mdns4_minimal.so.2
060ba000-060f1000 r-xp 00000000 08:11 58286100   /lib/libdbus-1.so.3.4.0
060f1000-060f2000 r--p 00036000 08:11 58286100   /lib/libdbus-1.so.3.4.0
060f2000-060f3000 rw-p 00037000 08:11 58286100   /lib/libdbus-1.so.3.4.0
0614b000-06152000 r-xp 00000000 08:11 58286238   /lib/libwrap.so.0.7.6
06152000-06153000 r--p 00006000 08:11 58286238   /lib/libwrap.so.0.7.6
06153000-06154000 rw-p 00007000 08:11 58286238   /lib/libwrap.so.0.7.6
061bf000-061c9000 r-xp 00000000 08:11 58286090   /lib/libudev.so.0.5.0
061c9000-061ca000 r--p 00009000 08:11 58286090   /lib/libudev.so.0.5.0
061ca000-061cb000 rw-p 0000a000 08:11 58286090   /lib/libudev.so.0.5.0
06716000-06727000 r-xp 00000000 08:11 14778745   /usr/lib/gio/modules/libgioremote-volume-monitor.so
06727000-06728000 r--p 00010000 08:11 14778745   /usr/lib/gio/modules/libgioremote-volume-monitor.so
06728000-06729000 rw-p 00011000 08:11 14778745   /usr/lib/gio/modules/libgioremote-volume-monitor.so
06a81000-06b05000 r-xp 00000000 08:11 14747770   /usr/lib/libcairo.so.2.10800.8
06b05000-06b07000 r--p 00083000 08:11 14747770   /usr/lib/libcairo.so.2.10800.8
06b07000-06b08000 rw-p 00085000 08:11 14747770   /usr/lib/libcairo.so.2.10800.8
06dd3000-06efd000 r-xp 00000000 08:11 14747451   /usr/lib/libX11.so.6.2.0
06efd000-06efe000 ---p 0012a000 08:11 14747451   /usr/lib/libX11.so.6.2.0
06efe000-06eff000 r--p 0012a000 08:11 14747451   /usr/lib/libX11.so.6.2.0
06eff000-06f01000 rw-p 0012b000 08:11 14747451   /usr/lib/libX11.so.6.2.0
06f01000-06f02000 rw-p 00000000 00:00 0
06f5a000-06fc0000 r-xp 00000000 08:11 63979595   /usr/lib/libsndfile.so.1.0.20
06fc0000-06fc1000 r--p 00065000 08:11 63979595   /usr/lib/libsndfile.so.1.0.20
06fc1000-06fc2000 rw-p 00066000 08:11 63979595   /usr/lib/libsndfile.so.1.0.20
06fc2000-06fc6000 rw-p 00000000 00:00 0
070a1000-070c5000 r-xp 00000000 08:11 58286114   /lib/libexpat.so.1.5.2
070c5000-070c7000 r--p 00024000 08:11 58286114   /lib/libexpat.so.1.5.2
070c7000-070c8000 rw-p 00026000 08:11 58286114   /lib/libexpat.so.1.5.2
078a7000-078fd000 r-xp 00000000 08:11 63979543   /usr/lib/libtiff.so.4.2.1
078fd000-078ff000 r--p 00055000 08:11 63979543   /usr/lib/libtiff.so.4.2.1
078ff000-07900000 rw-p 00057000 08:11 63979543   /usr/lib/libtiff.so.4.2.1
07a08000-07a7e000 r-xp 00000000 08:11 14747748   /usr/lib/libdirectfb-1.2.so.0.7.0
07a7e000-07a7f000 ---p 00076000 08:11 14747748   /usr/lib/libdirectfb-1.2.so.0.7.0
07a7f000-07a80000 r--p 00076000 08:11 14747748   /usr/lib/libdirectfb-1.2.so.0.7.0
07a80000-07a81000 rw-p 00077000 08:11 14747748   /usr/lib/libdirectfb-1.2.so.0.7.0
07a81000-07a82000 rw-p 00000000 00:00 0
07b97000-07bae000 r-xp 00000000 08:11 14745810   /usr/lib/libICE.so.6.3.0
07bae000-07baf000 r--p 00016000 08:11 14745810   /usr/lib/libICE.so.6.3.0
07baf000-07bb0000 rw-p 00017000 08:11 14745810   /usr/lib/libICE.so.6.3.0
07bb0000-07bb2000 rw-p 00000000 00:00 0
07bc0000-07bcd000 r-xp 00000000 08:11 14746745   /usr/lib/libtdb.so.1.1.5
07bcd000-07bce000 r--p 0000c000 08:11 14746745   /usr/lib/libtdb.so.1.1.5
07bce000-07bcf000 rw-p 0000d000 08:11 14746745   /usr/lib/libtdb.so.1.1.5
07d98000-07db9000 r-xp 00000000 08:11 14778376   /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
07db9000-07dba000 r--p 00020000 08:11 14778376   /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
07dba000-07dbb000 rw-p 00021000 08:11 14778376   /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
07e39000-07e41000 r-xp 00000000 08:11 14746593   /usr/lib/libltdl.so.7.2.0
07e41000-07e42000 r--p 00007000 08:11 14746593   /usr/lib/libltdl.so.7.2.0
07e42000-07e43000 rw-p 00008000 08:11 14746593   /usr/lib/libltdl.so.7.2.0
08048000-0863c000 r-xp 00000000 08:11 14811201   /usr/local/stow/amule-stu-opt-debug/bin/amule
0863c000-0863d000 r--p 005f3000 08:11 14811201   /usr/local/stow/amule-stu-opt-debug/bin/amule
0863d000-0866a000 rw-p 005f4000 08:11 14811201   /usr/local/stow/amule-stu-opt-debug/bin/amule
0866a000-0b7fe000 rw-p 00000000 00:00 0          [heap]
b1200000-b12e2000 rw-p 00000000 00:00 0
b12e2000-b1300000 ---p 00000000 00:00 0
b1400000-b14ff000 rw-p 00000000 00:00 0
b14ff000-b1500000 ---p 00000000 00:00 0
b1600000-b16f9000 rw-p 00000000 00:00 0
b16f9000-b1700000 ---p 00000000 00:00 0
b1800000-b18a2000 rw-p 00000000 00:00 0
b18a2000-b1900000 ---p 00000000 00:00 0
b1900000-b19fd000 rw-p 00000000 00:00 0
b19fd000-b1a00000 ---p 00000000 00:00 0
b1a00000-b1aff000 rw-p 00000000 00:00 0
b1aff000-b1b00000 ---p 00000000 00:00 0
b1b57000-b5b58000 rw-s 00000000 00:11 11438      /dev/shm/pulse-shm-1772987441
b5b58000-b5be4000 r--p 00000000 08:11 14895905   /usr/share/fonts/truetype/...deleted...Sans-Bold.ttf
b5be5000-b5be6000 ---p 00000000 00:00 0
b5be6000-b63e6000 rw-p 00000000 00:00 0
b63e6000-b63e7000 ---p 00000000 00:00 0
b63e7000-b6be8000 rw-p 00000000 00:00 0
b6be8000-b6be9000 ---p 00000000 00:00 0
b6be9000-b73e9000 rw-p 00000000 00:00 0
b73e9000-b73ec000 rw-s 00000000 00:09 753680     /SYSV00000000 (deleted)
b73ec000-b7484000 r--p 00000000 08:11 14895904   /usr/share/fonts/truetype/...deleted...Sans.ttf
b7484000-b7485000 r--s 00000000 08:11 46989320   /var/cache/fontconfig/...deleted hash file details....-x86.cache-2
b7485000-b748b000 r--s 00000000 08:11 47022229   /var/cache/fontconfig/...deleted hash file details....-x86.cache-2
b748b000-b748d000 r--s 00000000 08:11 46989316   /var/cache/fontconfig/...deleted hash file details....-x86.cache-2
b748d000-b748f000 r--s 00000000 08:11 41804529   /var/cache/fontconfig/...deleted hash file details....-x86.cache-2
b748f000-b7492000 r--s 00000000 08:11 41805236   /var/cache/fontconfig/...deleted hash file details....-x86.cache-2
b7492000-b7495000 r--s 00000000 08:11 41804923   /var/cache/fontconfig/...deleted hash file details....-x86.cache-2
b7495000-b7496000 r--s 00000000 08:11 41805234   /var/cache/fontconfig/...deleted hash file details....-x86.cache-2
b7496000-b749a000 r--s 00000000 08:11 46989317   /var/cache/fontconfig/...deleted hash file details....-x86.cache-2
b749a000-b749d000 r--s 00000000 08:11 41805232   /var/cache/fontconfig/...deleted hash file details....-x86.cache-2
b749d000-b74a0000 r--s 00000000 08:11 41805179   /var/cache/fontconfig/...deleted hash file details....-x86.cache-2
b74a0000-b7500000 rw-s 00000000 00:09 720911     /SYSV00000000 (deleted)
b7500000-b75ff000 rw-p 00000000 00:00 0
b75ff000-b7600000 ---p 00000000 00:00 0
b7602000-b760a000 r--s 00000000 08:11 41805229   /var/cache/fontconfig/...deleted hash file details....-x86.cache-2
b760a000-b7615000 r--s 00000000 08:11 47023527   /var/cache/fontconfig/...deleted hash file details....-x86.cache-2
b7615000-b7617000 r--s 00000000 08:11 41805178   /var/cache/fontconfig/...deleted hash file details....-x86.cache-2
b7617000-b7618000 r--s 00000000 08:11 47023526   /var/cache/fontconfig/...deleted hash file details....x86.cache-2
b7618000-b763a000 r--s 00000000 08:11 41805659   /var/cache/fontconfig/...deleted hash file details....-x86.cache-2
b763a000-b763c000 r--s 00000000 08:11 46989318   /var/cache/fontconfig/...deleted hash file details....-x86.cache-2
b763c000-b7644000 r--s 00000000 08:11 41805150   /var/cache/fontconfig/...deleted hash file details....-x86.cache-2
b7644000-b764a000 r--s 00000000 08:11 41805223   /var/cache/fontconfig/...deleted hash file details....-x86.cache-2
b764a000-b764c000 r--s 00000000 08:11 46989321   /var/cache/fontconfig/...deleted hash file details....-x86.cache-2
b764c000-b764e000 r--s 00000000 08:11 41805657   /var/cache/fontconfig/...deleted hash file details....-x86.cache-2
b764e000-b76ae000 rw-s 00000000 00:09 688142     /SYSV00000000 (deleted)
b76ae000-b76af000 ---p 00000000 00:00 0
b76af000-b7eb1000 rw-p 00000000 00:00 0
b7eb1000-b7f9e000 r--p 00000000 08:11 15057930   /usr/lib/locale/en_US.utf8/LC_COLLATE
b7f9e000-b7fdd000 r--p 00000000 08:11 14779364   /usr/lib/locale/en_US.utf8/LC_CTYPE
b7fdd000-b7fed000 rw-p 00000000 00:00 0
b7fed000-b7fee000 r--p 00000000 08:11 14779369   /usr/lib/locale/en_US.utf8/LC_NUMERIC
b7fee000-b7fef000 r--p 00000000 08:11 14779081   /usr/lib/locale/en_US.utf8/LC_TIME
b7fef000-b7ff0000 r--p 00000000 08:11 14779082   /usr/lib/locale/en_US.utf8/LC_MONETARY
b7ff0000-b7ff1000 r--p 00000000 08:11 14786562   /usr/lib/locale/en_US.utf8/LC_MESSAGES/SYS_LC_MESSAGES
b7ff1000-b7ff2000 r--p 00000000 08:11 14779235   /usr/lib/locale/en_US.utf8/LC_PAPER
b7ff2000-b7ff3000 r--p 00000000 08:11 14779258   /usr/lib/locale/en_US.utf8/LC_NAME
b7ff3000-b7ff4000 r--p 00000000 08:11 14779083   /usr/lib/locale/en_US.utf8/LC_ADDRESS
b7ff4000-b7ff5000 r--p 00000000 08:11 14779084   /usr/lib/locale/en_US.utf8/LC_TELEPHONE
b7ff5000-b7ff6000 r--p 00000000 08:11 14779344   /usr/lib/locale/en_US.utf8/LC_MEASUREMENT
b7ff6000-b7ff7000 r--p 00000000 08:11 14779085   /usr/lib/locale/en_US.utf8/LC_IDENTIFICATION
b7ff7000-b7ffe000 r--s 00000000 08:11 14762000   /usr/lib/gconv/gconv-modules.cache
b7ffe000-b8000000 rw-p 00000000 00:00 0
bffeb000-c0000000 rw-p 00000000 00:00 0          [stack]
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on December 26, 2009, 07:07:10 PM
Interesting RRM. Two notes:

Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 26, 2009, 09:10:55 PM
Ok, thanks!
I installed them.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on December 27, 2009, 06:16:05 PM
Hi RRM,
another attempt, please try it out.

Code: [Select]
Index: EMSocket.cpp
===================================================================
--- EMSocket.cpp (revision 9905)
+++ EMSocket.cpp (working copy)
@@ -527,7 +527,8 @@
     uint32 sentStandardPacketBytesThisCall = 0;
     uint32 sentControlPacketBytesThisCall = 0;
 
-    if(byConnected == ES_CONNECTED && IsEncryptionLayerReady() && !(m_bBusy && onlyAllowedToSendControlPacket)) {
+    if(byConnected == ES_CONNECTED && IsEncryptionLayerReady() && !m_bBusy) {
 
  //printf("* Internal attemptto send on %p\n", this);
      
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 27, 2009, 07:03:18 PM
Thank you Stu.
I replaced the EMSocket.cpp file in ~/tmp/amule-stu/src by your version.
Then i called:
Code: [Select]
$ cd ~/tmp/amule-stu
$ ./configure --prefix=/usr/local/stow/amule-opt/ --enable-geoip --enable-optimize --enable-debug --with-wxdebug --mandir=/share/bin
$ make clean
$ make -j 2 && sudo make install

and to make this version the default aMule:
Code: [Select]
$ cd /usr/local/stow
$ sudo stow -D amule-stu-opt-debug
$ sudo stow amule-opt

Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 28, 2009, 06:39:08 AM
Wow, ive left aMule running at full speed all night, and its still running!  ::)
However, there is a steady build up of VSZ,
so i expect her to crash anyway...  :(

$ ps axl | grep amule
Code: [Select]
0  1000 15089 15058  20   0 144872 130248 rt_sig S   pts/0      0:02 gdb amule
0  1000 15091 15089  20   0 290976 168436 poll_s Sl+ pts/0      6:53 /usr/local/stow/amule-opt/bin/amule
0  1000 15091 15089  20   0 302688 180104 poll_s Sl+ pts/0     17:29 /usr/local/stow/amule-opt/bin/amule
0  1000 15091 15089  20   0 303096 179692 poll_s Sl+ pts/0     19:45 /usr/local/stow/amule-opt/bin/amule
0  1000 15091 15089  20   0 306292 183356 -     Rl+  pts/0     26:43 /usr/local/stow/amule-opt/bin/amule
0  1000 15091 15089  20   0 312472 189260 poll_s Sl+ pts/0     31:58 /usr/local/stow/amule-opt/bin/amule
0  1000 15091 15089  20   0 316072 190000 sync_p Dl+ pts/0     40:12 /usr/local/stow/amule-opt/bin/amule
0  1000 15091 15089  20   0 333092 201536 -     Rl+  pts/0     80:07 /usr/local/stow/amule-opt/bin/amule
0  1000 15091 15089  20   0 340112 205092 -     Rl+  pts/0    183:19 /usr/local/stow/amule-opt/bin/amule
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on December 28, 2009, 01:23:57 PM
28 pages and finally a glimpse of hope.  :D
The remaining raise may be because of KAD. It accumulates data over time, and there is also a problem of fake content spam.
Keep it running, let's see what happens.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 28, 2009, 06:37:46 PM
HUH ? ::)?? ::) ??

Coming home from work, I expected aMule to have crashed,
but guess what?
Not just a glimpse of hope....
ITS STILL RUNNING LIKE MAD!!!!!!!  :) ;D 8) :) ;D 8)

Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 28, 2009, 06:40:46 PM
Im not courageous enough to actually say it, but...
Maybe you really... ?

VSZ is still going up very slowly though ...
Shouldnt it plateau somewhere? Or does KAD continuously cause it to grow?
(and therefore cause a crash eventually?)
Its at 357048 KB now. It was at 340112 this morning.
Usually VSZ started growing exponentially once it grew bigger than 250000 or 300000 max.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on December 28, 2009, 06:59:05 PM
Hehe, maybe I really. But lets wait a little longer.  :D
I think it should plateau after like 24h, with some residual (but minimal) growth.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 28, 2009, 07:56:12 PM
24 hours?
But thats now already...
or do you mean CPU time?
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on December 28, 2009, 08:16:14 PM
Well, it almost has plateaued.
One exception for example is the log message window, which simply grows and grows. And there are more, but it shouldn't really matter.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 28, 2009, 08:24:45 PM
True.
VSZ has not increased at all in the last 30 minutes,
so i will add a few extra popular downloads....
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 29, 2009, 10:06:53 AM
I.N.C.R.E.D.I.B.L.E...

aMule is still running.
it doesnt matter how much i ask of her,
the mule just does it...
Is this still a mule, or is it aHorse?

Stu, could you please explain what the change is that you made?
in such a way that people like me can understand?
Im very curious...

(VSZ is 396216 KB)
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on December 29, 2009, 02:24:04 PM
aMule has a thread for uploading (called "UploadBandwidthThrottler"). This thread continuously feeds data to all uploading sockets (a socket is a network connection).
When data is fed to a socket it can either be sent right away, or the socket replies that it is busy at the moment (still uploading the last packet). In that case the socket is marked as busy and the data will be sent later in the background. (When its finished it triggers an event that marks the socket as not busy again.)
Now, what happens if the upload thread tries to feed data to a already busy socket? It should recognize it's busy and skip it. This worked only for control packets however. Data packets just got fed and fed and so queued up more and more in the socket's internal queue until finally the memory was exhausted.
I simply enabled the busy-check for all packets. I have no idea why it was limited to control packets in the first place. This was unmodified code from eMule.

Now I can't say if I managed to explain it well enough for you can understand, but I don't know how to put it simpler.  :)

Commited in 9913. RRM, I want to thank you for your unending patience that made it possible to finally fix that bug.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 29, 2009, 03:08:06 PM
You explained it perfectly well. Thank you. Im glad it has been committed.
I was surprised that you thank me, because its you guys who made and make aMule possible.
Im just a persistent user who keeps asking for help and got helped very, very, very much by you and btkaos in particular.
One cannot get any better help than that.
Thanks to you guys aMule worked, and now works even much better. Thank you.

Since this was unmodified code from eMule,
and since i experienced the same issues when i still used eMule,
and with me many other users,
shouldnt you notify the guys behind eMule,
so that they can fix this error as well?
That might help a lot of eMule users, no?

Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on December 29, 2009, 04:10:56 PM
You're welcome! Hey, we need more users like you anyway for the network.  :D

I've notified them (http://forum.emule-project.net/index.php?showtopic=148119). It may well be however that the underlying networking layer in Windows behaves differently than wxWidgets/Linux, so eMule may not be involved. You don't happen to have a Windows box to check it out?
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 29, 2009, 04:21:58 PM
Good post Stu.

Quote
You don't happen to have a Windows box to check it out?

You mean a windows installation, and not Wine, right?
No, but i have a windows XP CD, so i can install it, of course...
Is that what you are suggesting?
If so, should i do it in a specific way?
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on December 29, 2009, 04:44:09 PM
Good job Stu! This was indeed a hard bug to catch!

You mean a windows installation, and not Wine, right?
No, but i have a windows XP CD, so i can install it, of course...
Is that what you are suggesting?
If so, should i do it in a specific way?
eMule is fully supported under wine, so I think you may try eMule in this order (from less effort and less fidelity to the original windows stack)
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on December 29, 2009, 05:05:45 PM
Anyways, if I understand the issue correctly, this bug was exposed by an incorrect configuration on RRM's part.

That is to say, your upload setting was bigger than the real upload capacity of the network, this is the cause of the packets queuing up. Now the Stu patch checks that the socket has finished.

The current code may have a small issue, however, it is, it doesn't allow to queue any data in the socket, I wonder if this will have some negative impact in upload throughput. Maybe the upload thread should keep queueing packets to upload up to a certain limit (2 or 3 packets already in queue)

Maybe the eMule guys don't support this scenario (upload > real upload capacity)
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 29, 2009, 07:24:23 PM
Im running eMule using Wine.
Using the same settings.
It takes a while before all files are hashed...
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on December 29, 2009, 10:10:54 PM
Anyways, if I understand the issue correctly, this bug was exposed by an incorrect configuration on RRM's part.
Not really. If we allow upload speed "0" for max, it is supposed to work. And the bug would also occur if a correct max up speed is configured, but the downloaders are unable to download at that speed (improbable, but possible).
Quote
I wonder if this will have some negative impact in upload throughput.
My tests showed that the set upload speed is still reached exactly, and at 0 it meets something close to my physical max up speed. The bottleneck is not how fast you provide the data to the slots, but rather the physical speed of your line. And if the upload bandwidth throttler can't assign enough data in one cycle it is saved for the next so it averages out.

Im running eMule using Wine.
Now this promises to be interesting.  :)
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on December 29, 2009, 11:43:37 PM
Not really. If we allow upload speed "0" for max, it is supposed to work. And the bug would also occur if a correct max up speed is configured, but the downloaders are unable to download at that speed (improbable, but possible).
Anyways if the socket signals when it's ready to send more data, a fully event based throttler could be implemented. Of course I don't know what level of source compatibility with eMule is desirable.

I recall to see another aMule out of memory crash when losing temporal connectivity (such as failure of wireless LAN) The backtrace was this, I'll test your change and see if it helps:

Code: [Select]
#0  0x005dc422 in __kernel_vsyscall ()
#1  0x004394d1 in raise () from /lib/tls/i686/cmov/libc.so.6
#2  0x0043c932 in abort () from /lib/tls/i686/cmov/libc.so.6
#3  0x0832191d in OnUnhandledException () at MuleDebug.cpp:103
#4  0x003d7415 in ?? () from /usr/lib/libstdc++.so.6
#5  0x003d7452 in std::terminate() () from /usr/lib/libstdc++.so.6
#6  0x003d7591 in __cxa_throw () from /usr/lib/libstdc++.so.6
#7  0x003d7c0f in operator new(unsigned int) () from /usr/lib/libstdc++.so.6
#8  0x001d3463 in wxObjectList::CreateNode(wxNodeBase*, wxNodeBase*, void*, wxListKey const&)
    () from /usr/lib/libwx_baseu-2.8.so.0
#9  0x001e5d4b in wxListBase::Append(void*) () from /usr/lib/libwx_baseu-2.8.so.0
#10 0x0023f8e0 in wxEvtHandler::AddPendingEvent(wxEvent&) () from /usr/lib/libwx_baseu-2.8.so.0
#11 0x00b0f920 in wxSocketBase::OnRequest(wxSocketNotify) ()
   from /usr/lib/libwx_baseu_net-2.8.so.0
#12 0x00b0fa14 in wx_socket_callback () from /usr/lib/libwx_baseu_net-2.8.so.0
#13 0x00b14a8b in GSocket::Detected_Write() () from /usr/lib/libwx_baseu_net-2.8.so.0
#14 0x010b1427 in ?? () from /usr/lib/libwx_gtk2u_core-2.8.so.0
#15 0x009e9f7c in ?? () from /usr/lib/libgdk-x11-2.0.so.0
#16 0x0134adab in ?? () from /lib/libglib-2.0.so.0
#17 0x01313e88 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#18 0x01317730 in ?? () from /lib/libglib-2.0.so.0
#19 0x01317b9f in g_main_loop_run () from /lib/libglib-2.0.so.0
#20 0x07586419 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
#21 0x010afc78 in wxEventLoop::Run() () from /usr/lib/libwx_gtk2u_core-2.8.so.0
#22 0x01142e3e in wxAppBase::MainLoop() () from /usr/lib/libwx_gtk2u_core-2.8.so.0
#23 0x01142a31 in wxAppBase::OnRun() () from /usr/lib/libwx_gtk2u_core-2.8.so.0
#24 0x001da7aa in wxEntry(int&, wchar_t**) () from /usr/lib/libwx_baseu-2.8.so.0
#25 0x001da987 in wxEntry(int&, char**) () from /usr/lib/libwx_baseu-2.8.so.0
#26 0x08229dfb in main (argc=1, argv=0xbffff4f4) at amule-gui.cpp:94
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 30, 2009, 09:50:43 AM
It may well be however that the underlying networking layer in Windows behaves differently than wxWidgets/Linux, so eMule may not be involved.

You must be right, because eMule (E) under Wine is still running
in exactly the same conditions (all the popular uploads etc; "foot on the gaspedal" settings)
as they were when running aMule (A).

There is something strange going on though:
Both in A and E "clients on queue" is 0,
but in A everybody waits for 0 sec,
whereas in E, a whole bunch (about 50%) "waited" 1 sec,
and the other half "waited" anything between 6 minutes and 9 hours...
I guess E's "waited" is screwed as A's was?
(There is no slot-reallocation after every 10 MB or so (continuous uploading), btw)

I have another system with XP only.
You want me to try that one running E?
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 30, 2009, 10:22:46 AM
since i experienced the same issues when i still used eMule,
and with me many other users,

Im sorry, that was a false/incomplete recollection.
Before service packet 2, E under XP crashed often, but i cannot recall how often.
Since service packet 2, by default Windows allows only 10 simultaneous connections.
Installing a special patch, one can raise that to 50 max, (which needs to be reinstalled after every W update)
but that naturally still severely limits up- and downloading capacity.

Given those limitations, it doesnt make sense to test E under XP, right?
When i buy a new system (coming with Windows 7), i will test eMule under W7
before installing Ubuntu.
...
Hmm, it seems that W7 also allows 10 simultaneous connections max.
Thats a big + for Wine then... (no such limitations)
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on December 30, 2009, 12:52:54 PM
Since service packet 2, by default Windows allows only 10 simultaneous connections.
Installing a special patch, one can raise that to 50 max, (which needs to be reinstalled after every W update)
but that naturally still severely limits up- and downloading capacity.
IIRC only half open connections are limited, so you can't ask sources as fast as you could otherwise. But eMule (and aMule) take care of that. I'm running aMule on Windows most of the time and have no problems, even without a patch.

If eMule doesn't exhaust memory under WinE then it doesn't have the problem. Good for them.  :) I don't think it's necessary to run it under XP too.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 30, 2009, 12:56:57 PM
Ah, ok.
And that the "waited" is screwed in eMule,
should that be mentioned?

Btw, i used to use 'the old eMule' this user refers to in your "notification thread (http://forum.emule-project.net/index.php?showtopic=148119)"
in the eMule forum

Quote from: tHeWiZaRdOfDoS
The newer eMule versions still suck if you compare their upload to the old (non-Kad, non-threaded) ones though I fail to understand the reason behind that.

I thought that the decrease in uploadcapacity was due to Windows Service Pack 2,
but i guess i was wrong.
Anyway, i have my full upload capacity back with aMule!  ;D
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on December 30, 2009, 02:40:23 PM
And that the "waited" is screwed in eMule, should that be mentioned?
I'm sure they have given their upload queue handling some thought, I won't interfere there.

Quote
Btw, i used to use 'the old eMule' this user refers to

Hmm - what version? I thought of course you had used latest stable 0.49c.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 30, 2009, 03:35:36 PM
OK, i understand.

Quote
what version? I thought of course you had used latest stable 0.49c.

I dont mean the one i tested under wine (which indeed was 0.49c)
I was referring to before i started using aMule.
Back then i upgraded eMule with each new version available.
At a certain point the upload capacity decreased significantly.
I thought that was to blame on Windows (service pack 2),
but it may have been something else, of course.

Now that ive noticed that Ubuntu-aMule and WinE-eMule perform equally well,
it may be interesting to see how well XP-eMule performs,
in comparison...
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on December 31, 2009, 08:09:02 PM
 :-[  >:(  ??? WHAT WAS I THINKING ??  ???  :-[ >:(

Testing WinE/eMule in comparison to the Ubuntu/aMule combo was fun, with good results.
So, i thought i would give XP/eMule another chance too...

Obviously i had forgotten the reason why i switched to Ubuntu: pure frustration.
Frustration that XP/eMule could never utilize the available bandwidth.
Testing it yesterday and today (with the same setting and files, naturally)
it made me frustrated once again:
It takes sooooo long before XP/eMule has reached peak upload,
and the results are sooooo disappointing: 430 kB/s max!!!

Switching back to sweet aMule,
the very first client accelerates from 150 to 400 to 890 kB/s download speed within seconds,
and the next couple of clients start consuming as well.
Its so good to be back and watch aMule running....  8)
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on December 31, 2009, 10:15:56 PM
Would you like to test sweet aMule on XP for comparison?  :D
You can get one from http://amule.jimdo.com/
Now this could become really interesting...
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: GonoszTopi on December 31, 2009, 10:27:21 PM
Would you like to test sweet aMule on XP for comparison?  :D
You can get one from http://amule.jimdo.com/
Now this could become really interesting...
For that you should first provide an executable from r9913 or later  :P
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on December 31, 2009, 10:31:36 PM
Pre-9913 fails only after a few hours, while the speed is visible instantly.  :)
And actually I'd like to see if it exhausts its memory on Windows too.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on January 01, 2010, 07:05:04 AM
Would you like to test sweet aMule on XP for comparison?  :D

Of course.
Will try to do that when i come back from work.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on January 01, 2010, 07:34:25 PM
Phew, hashing 700 GB always takes a long time,
isnt there a shortcut?
like copying and pasting a file from aMule/eMule under WinE/Ubuntu to this new aMule (under XP)?
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on January 01, 2010, 07:57:20 PM
Running aMule using eMule's known.met should do the trick.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on January 01, 2010, 08:36:03 PM
Running aMule using eMule's known.met should do the trick.

Great, but how do i do that?
I found a known.met file in eMule/config/
,but where to copy & paste it to, because i cannot find a config folder in aMule...
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: skolnick on January 01, 2010, 11:01:18 PM
Hi!

aMule's folder should be in /home/<username>/.aMule folder under linux/UNIX. Under Windows XP I would hope the path to be c:\documents and settings\<username>\local settings\.aMule or something similar. No idea about OS X so I better shut up there ;)

Regards.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: GonoszTopi on January 02, 2010, 02:02:48 PM
aMule's folder should be in /home/<username>/.aMule folder under linux/UNIX. Under Windows XP I would hope the path to be c:\documents and settings\<username>\local settings\.aMule or something similar. No idea about OS X so I better shut up there ;)

http://wiki.amule.org/index.php/Getting_Started#Where_Are_The_Files.3F (http://wiki.amule.org/index.php/Getting_Started#Where_Are_The_Files.3F)
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on January 02, 2010, 03:04:09 PM
Thank you for your help,
but i still cannot find it in XP....
Luckily im done hashing.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on January 02, 2010, 04:22:12 PM
Hey, i didnt expect this...
XP/aMule didnt start up as fast as Ubuntu/aMule or WinE/eMule,
but faster than XP/eMule, and...
after a while it actually starts running almost equally fast as those fast 2!!

Ofcourse, the "waited" is screwed,
and clients get reallocated after every 10MB (despite 0 clients in queue)
but now im really curious as to if/how fast it will crash....
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on January 02, 2010, 04:42:30 PM
Anyone any idea as to how i can trace memory consumption under XP?
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: GonoszTopi on January 02, 2010, 06:17:23 PM
IIRC the Task Manager can tell you memory usage.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on January 02, 2010, 08:13:26 PM
Thank you!
XP/aMule is still running, and apparently,
there is no memory leak here.

XP/aMule runs smoothly, but utilizes about 90% of total uploadcapacity.
So, a little less effectively then Ubuntu/aMule and WinE/eMule,
but much better than XP/eMule.
I will test XP/eMule once again; maybe there was something else going on.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on January 03, 2010, 06:44:57 AM
 :o hmmm
Yes, there was something else going on, coincidentally,
because this time XP/eMule did perform well;
almost as good as XP/aMule.
It starts up a little slower, and eventually maximally utilizes about 80% of my total uploadcapacity.

So, my end results are:
Ubuntu/aMule 100%
WinE/eMule 100%
XP/aMule 90%
XP/eMule 80%

Im curious whether other people have similar results.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on January 03, 2010, 02:10:11 PM
XP/aMule is still running, and apparently, there is no memory leak here.
Funny. So it's probably the Unix version of wx's networking code, everything else doesn't show the problem. However, there have been reports from eMule users of less memory consumption with the patch too.

Quote
this time XP/eMule did perform well
Yeah, measuring performance in the mule network can sometimes be a bitch.  ;)

Some Support (eMule dev) has found an explanation what was the intention behind the botched line of code:
Code: [Select]
Index: EMSocket.cpp
===================================================================
--- EMSocket.cpp (revision 9905)
+++ EMSocket.cpp (working copy)
@@ -527,7 +527,8 @@
     uint32 sentStandardPacketBytesThisCall = 0;
     uint32 sentControlPacketBytesThisCall = 0;
 
-    if(byConnected == ES_CONNECTED && IsEncryptionLayerReady() && !(m_bBusy && onlyAllowedToSendControlPacket)) {
+    if(byConnected == ES_CONNECTED && IsEncryptionLayerReady() && (!m_bBusy || onlyAllowedToSendControlPacket)) {
 
  //printf("* Internal attemptto send on %p\n", this);
So the busy logic is disabled for control packets instead of data packets. Now that would make sense. RRM, can you try this out (on Linux)?
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on January 03, 2010, 04:19:03 PM
Quote
RRM, can you try this out (on Linux)?

Sure.
So, on line 531 in the EMSocket.cpp
, i have to replace this:
Code: [Select]
if(byConnected == ES_CONNECTED && IsEncryptionLayerReady() && !m_bBusy) {
by this:
Code: [Select]
if(byConnected == ES_CONNECTED && IsEncryptionLayerReady() && (!m_bBusy || onlyAllowedToSendControlPacket)) {

right?
and then configure and make.
Im running it now... (rev. 9928, because i called git first)
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: GonoszTopi on January 03, 2010, 06:30:55 PM
RRM, you're learning fast.

But beware, after getting used to the taste of bleeding-edge, you won't be able to go without it ... it's addictive ;)
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on January 03, 2010, 07:27:58 PM
RRM, you're learning fast.

Ehhrr, it took me 31 pages to learn a tiny fraction of what you know...
but thanks  ;)

Quote
But beware, after getting used to the taste of bleeding-edge, you won't be able to go without it ... it's addictive ;)

Yes  ;D it tastes good!
...i want more...  8)

Rev. 9928 with the modified patch runs perfectly fine, Stu.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: GonoszTopi on January 03, 2010, 07:33:23 PM
RRM, you're learning fast.

Ehhrr, it took me 31 pages to learn a tiny fraction of what you know...
but thanks  ;)

It's just that we started earlier...
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on January 03, 2010, 08:15:23 PM
Rev. 9928 with the modified patch runs perfectly fine, Stu.
Very good. Keep it running for a while, then I'll commit it.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on January 04, 2010, 02:39:17 PM
Quote
Keep it running for a while, then I'll commit it.

Still running...
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on January 05, 2010, 11:21:03 AM
... and running....

Nice, its running so fast that i had to re-fuel; i ran out of downloads,
so that im now downloading some popular files that i already have, just for the sake of the test...
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on January 05, 2010, 11:58:39 AM
OK. I'll commit this new version then.  :)
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 14, 2011, 01:27:19 PM
Sorry for reviving this topic, but so far RRM backtraces are the same than the ones I got in the recent thread:

http://forum.amule.org/index.php?topic=18506.0

And Kry fixed with a wx patch. Just see RRM's backtrace:

Code: [Select]
#0  0xb8079430 in __kernel_vsyscall ()
#1  0xb72588a0 in raise () from /lib/tls/i686/cmov/libc.so.6
#2  0xb725a268 in abort () from /lib/tls/i686/cmov/libc.so.6
#3  0xb747b655 in __cxxabiv1::__terminate (handler=0x808a378 <abort@plt>)  at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:43
#4  0xb747b692 in std::terminate ()  at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:53
#5  0xb747b7ca in __cxa_throw (obj=0xb74aaaf0, tinfo=0x86e5a6c, dest=0xb747bd00 <~bad_alloc>)  at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:76
#6  0xb747be23 in operator new (sz=24) at ../../../../src/libstdc++-v3/libsupc++/new_op.cc:63
#7  0xb7560556 in wxObjectList::CreateNode (this=0x8ef76f8, prev=0x9b222b0, next=0x0, data=0x86e80c0, key=@0xb7660750) at ../include/wx/list.h:1178
#8  0xb7575759 in wxListBase::Append (this=0x8ef76f8, object=0x86e80c0) at ../src/common/list.cpp:244
#9  0xb75ddc26 in wxEvtHandler::AddPendingEvent (this=0x86e80c0,  event=@0xbfa784a0) at ../include/wx/list.h:1178
#10 0xb7681d58 in wxSocketBase::OnRequest (this=0x9b8fa90,  notification=wxSOCKET_OUTPUT) at ../src/common/socket.cpp:1006
#11 0xb7681e54 in wx_socket_callback (notification=GSOCK_OUTPUT,  cdata=0x9b8fa90 "\b-M\b") at ../src/common/socket.cpp:942
#12 0xb76866bb in GSocket::Detected_Write (this=0x9a49538)  at ../src/unix/gsocket.cpp:1836
#13 0xb77d0be7 in _GSocket_GDK_Input (data=0x9a49538, source=73,  condition=GDK_INPUT_WRITE) at ../src/gtk/gsockgtk.cpp:36
#14 0xb6e194af in gdk_io_invoke (source=0xb57303c0,  condition=<value optimized out>, data=0xb5731150)  at /build/buildd/gtk+2.0-2.14.4/gdk/gdkevents.c:1013
#15 0xb6bb771d in g_io_unix_dispatch (source=0xb572faa0,  callback=0xb6e19450 <gdk_io_invoke>, user_data=0xb5731150)   at /build/buildd/glib2.0-2.18.2/glib/giounix.c:162
#16 0xb6b80718 in IA__g_main_context_dispatch (context=0x8ecf918)  at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144
#17 0xb6b83dc3 in g_main_context_iterate (context=0x8ecf918, block=1,  dispatch=1, self=0x8ed0ec0)    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778
#18 0xb6b842e2 in IA__g_main_loop_run (loop=0x919d610)    at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986
#19 0xb6fb23a9 in IA__gtk_main ()    at /build/buildd/gtk+2.0-2.14.4/gtk/gtkmain.c:1200
#20 0xb77cf10b in wxEventLoop::Run (this=0x96fbc68)    at ../src/gtk/evtloop.cpp:76
#21 0xb78733dc in wxAppBase::MainLoop (this=0x8ecf7d0)   at ../src/common/appcmn.cpp:312
#22 0xb7873131 in wxAppBase::OnRun (this=0x6) at ../src/common/appcmn.cpp:367
#23 0xb75683fa in wxEntry (argc=@0xb76606cc, argv=0x8ebde38)   at ../src/common/init.cpp:460
#24 0xb75684b7 in wxEntry (argc=@0xbfa78810, argv=0xbfa78894)    at ../src/common/init.cpp:472
#25 0x082ac21d in main (argc=Cannot access memory at address 0x19eb) at ../../src/amule-gui.cpp:95

Same thing is happening, corruption of glib's context leads to an infinite number of events fixed.

I'm posting this because I was never very confortable with the patch in this thread, as I couldn't understand how it fixed the issue. Maybe in view of the new understanding of the problem we should reconsider the original patch. How is your amule doing RRM?

Do you remember setting some donwload limits? (I guess upload could cause the same problem, but much harder to achieve)

Regards,
BTK
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 14, 2011, 01:37:12 PM
More relation to current bug:
Even if uploading to only 50 clients simultaneously, aMule will crash within 3 days
if uploading to only 65 clients simultaneously, aMule will crash within 2 days
if uploading to 100 clients simultaneously, aMule will crash within 1 day
if uploading to 200 clients simultaneously, aMule will usually crash within 3 hours (sometimes much sooner)
Fully makes sense wrt the download situation. When you have very slow download limit, lots of clients will connect, this is the exact moment the crash will happen.

So it is the same to simultaneously download from a lot of sources than to upload.

Quote
A characteristic of the crashes is that the build of VSZ starts very slowly,
and accelerates exponentially as VSZ increases.
Agrees with current bug.

Maybe the STU changes the load and timing somehow, needing more upload clients in order to trigger the bug, and RRM did never reach the critical limit anymore.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on February 14, 2011, 10:53:11 PM
Should be easy to verify.
RRM could you
- remove my patch and see if the crashes return
- then see if the wx patch fixes the problem
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 15, 2011, 10:48:05 AM
Hi Bill, great to see you again in this old thread;

I'm posting this because I was never very confortable with the patch in this thread, as I couldn't understand how it fixed the issue. Maybe in view of the new understanding of the problem we should reconsider the original patch. How is your amule doing RRM?

Absolutely perfect:
I never had a single crash since, while the mule is running 24/7,
uploading 3 MB/s almost constantly,
and using various SVN versions.

Quote
Do you remember setting some donwload limits? (I guess upload could cause the same problem, but much harder to achieve)

Yes, i did that at some point in this thread, for a short period, but as that didnt help, i went back to setting no limits,
and the crashes kept on coming, until Stu's last patch.
Since half a year my download and upload limits are both set to 5 MB/s.
(I dont know why i did that, and i didnt make any difference)

Should be easy to verify.
RRM could you
- remove my patch and see if the crashes return

Okay
So, on line 531 in the EMSocket.cpp
, i have to replace this:
Code: [Select]
if(byConnected == ES_CONNECTED && IsEncryptionLayerReady() && (!m_bBusy || onlyAllowedToSendControlPacket)) {

by this (as it used to be):
Code: [Select]
if(byConnected == ES_CONNECTED && IsEncryptionLayerReady() && !m_bBusy) {

Correct?

Quote
- then see if the wx patch fixes the problem

Ok, Kry's socket_mutex_fix.patch
containing patches for:
src/gtk/gsockgtk.cpp
src/unix/gsocket.cpp
include/wx/unix/gsockunx.h

As there is no gsockgtk.cpp file in my system, I just need to use the patch for gsockunx.h, right?
So, in the gsockunx.h, i replace:
Code: [Select]
  char *m_gui_dependent;

};

#ifdef __cplusplus
by this:
Code: [Select]
  char *m_gui_dependent;
 
+#if wxUSE_THREADS
+
+  // Implemented in some platforms only for now
+  void LockData();
+  void UnlockData();
+
+  pthread_mutex_t m_thread_mutex;
+
+#endif
 };
 
 #ifdef __cplusplus


Quote from: Kry
recompile the entire wxWidgets after patching.

Im sorry, i failed to find in forums how to recompile wxWidgets,
could anyone please explain how to do this?



Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 15, 2011, 11:28:37 AM
Maybe i should first try limiting download and upload substantially,
by setting a 500 kB/s limit for example?
(as the limit set now is 5MB/s, which is no actual limit, as my uploadcapacity is just over 3 MB/s
and i dont download)
Or doesnt that make sense?
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 15, 2011, 01:41:23 PM
RRM in order to recompile wxWidgets do the following:

Code: [Select]
$ cd
$ mkdir temp-amule
$ cd temp-amule
$ wget http://downloads.sourceforge.net/project/wxwindows/2.8.11/wxWidgets-2.8.11.tar.gz
$ tar xvfz wxWidgets-2.8.11.tar.gz
$ cd wxWidgets-2.8.11
save kry patch in that folder, let's say it is called kry.patch
$ cat kry.patch | patch -p1
$ ./configure --prefix=~/temp-amule/build/ --enable-debug
$ make install

After that I guess you don't need to recompile amule, just run it like
Code: [Select]
$ LD_LIBRARY_PATH=~/temp-amule/build/lib amule
You may verify it is using the new lib with
Code: [Select]
$ LD_LIBRARY_PATH=~/temp-amule/build/lib ldd amule

Regards,
BTK
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 15, 2011, 02:53:57 PM
Thank you, Bill.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 15, 2011, 03:13:43 PM
Thank you, Bill.
Thank you for testing. You should perform two tests: One with stock amule (svn) and stock wx 2.8.11 and the other with patched wx.

You can do this simple by using the LD_LIBRARY_PATH variable.

For safety, that is to say, to know you are testing the right libs, perform the ldd tests first and then post the output here.
Code: [Select]
$ ldd amule #(post the output)
$ LD_LIBRARY_PATH=~/temp-amule/build/lib ldd amule
If ~ doesn't work substitute it for /home/rrm or whatever directory you'd like.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 15, 2011, 03:51:11 PM
Quote from: btkaos
You should perform two tests: One with stock amule (svn) and stock wx 2.8.11 and the other with patched wx.

Ehr, stock SVN is what i have been using this past year, so with the STU patch...
so that i have to remove Stu's patch first, right?
Secondly, after the non-STU patch version has crashed, i have to use the wx patch, no?
 
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 15, 2011, 05:08:11 PM
But, wait a second, Stu already supplied me with the fix on Dec 27, 2009
here: http://forum.amule.org/index.php?topic=17507.405
I had to replace the entire EMSocket.cpp file (Stu enabled the busy-check for all packets),
and that was what fixed the problem.
It was commited in 9913.
Later (Jan 03, 2010) Stu disabled the busy logic for control packets instead of data packets,
Code: [Select]
if(byConnected == ES_CONNECTED && IsEncryptionLayerReady() && (!m_bBusy || onlyAllowedToSendControlPacket)) {
instead of
Code: [Select]
if(byConnected == ES_CONNECTED && IsEncryptionLayerReady() && !m_bBusy) {
which was commited on Jan 05, 2010.

So, dont i need a pre-9913 EMSocket.cpp ?
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 15, 2011, 05:10:56 PM
Oh sorry RRM I had a brainfade, of course you have to disable STU fix and see if it crashes.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 15, 2011, 05:49:24 PM
Ok, but how do i edit the EMSocket.cpp back to its pre-9913 version?
Anyone here with 2.2.6 that can provide me with its EMsocket.cpp?
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 15, 2011, 06:08:11 PM
RRM I don't understand your question fully, the change should be:

Code: [Select]
diff --git a/src/EMSocket.cpp b/src/EMSocket.cpp
index 3469165..e556f7a 100644
--- a/src/EMSocket.cpp
+++ b/src/EMSocket.cpp
@@ -476,7 +476,7 @@ SocketSentBytes CEMSocket::Send(uint32 maxNumberOfBytesToSend, uint32 minFragSiz
     uint32 sentStandardPacketBytesThisCall = 0;
     uint32 sentControlPacketBytesThisCall = 0;
        
-    if (byConnected == ES_CONNECTED && IsEncryptionLayerReady() && (!m_bBusy || onlyAllowedToSendControlPacket)) {
+    if (byConnected == ES_CONNECTED && IsEncryptionLayerReady() && !(m_bBusy || onlyAllowedToSendControlPacket)) {
 
                //printf("* Internal attemptto send on %p\n", this);
EDIT: I'm stupid, the correct change is the following:
Code: [Select]
diff --git a/src/EMSocket.cpp b/src/EMSocket.cpp
index 3469165..e556f7a 100644
--- a/src/EMSocket.cpp
+++ b/src/EMSocket.cpp
@@ -476,7 +476,7 @@ SocketSentBytes CEMSocket::Send(uint32 maxNumberOfBytesToSend, uint32 minFragSiz
     uint32 sentStandardPacketBytesThisCall = 0;
     uint32 sentControlPacketBytesThisCall = 0;
       
-    if (byConnected == ES_CONNECTED && IsEncryptionLayerReady() && (!m_bBusy || onlyAllowedToSendControlPacket)) {
+    if (byConnected == ES_CONNECTED && IsEncryptionLayerReady() && !(m_bBusy && onlyAllowedToSendControlPacket)) {
 
                //printf("* Internal attemptto send on %p\n", this);

The - indicates that line should be removed, the + the line should be added. You can save the above snippet to a em.patch file and type
Code: [Select]
$ patch -p1 em.patch
to apply the change automatically.

Note the end of the discussion http://forum.emule-project.net/index.php?showtopic=148119 (http://forum.emule-project.net/index.php?showtopic=148119)here, maybe we should revert the patch? If Enig123 is right (a wx bug) I don't know if this makes sense.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 15, 2011, 06:11:57 PM
Some points about the patch that is in amule but not in emule:

Quote
After testing of this patch for some time, I realized the original code is logically right. When m_bBusy is true, which generally means a data packet has sent part and there's other splitted parts need to be sent. If there's an only control packet to send, it should not be in the middle of it. So in this condition, the program just skip sending part and put the control packet directly to the control packet queue.

With the patch SS offered, my tester encountered several crashes randomly, which never happened before.

Quote
However, recent high upload experiments show that this patch compromises upload capacity of eMule. My test team with 100Mbit/s upload no longer get a near straight line at upload limit of 4MB/s with the patch applied, as it did before.

My guess is that this is not really a eMule bug, more like a wxWidgets bug.
So indeed the patch may have modified upload routine in a manner the wx bug is not triggered anymore at this particular load.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 15, 2011, 07:11:53 PM
Thank you, Bill.
Im now running SVN 10466, with the modified EMSocket.cpp,
though its compiled with wxGTK2 v2.8.10
....
ehrrr, im not, the mule crashed crashed already...

Program received signal SIGINT, Interrupt.
0x0012d422 in __kernel_vsyscall ()

(gdb) bt full
Code: [Select]
bt full
#0  0x0012d422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x00ebbd96 in poll () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0x0161754b in g_poll () from /lib/libglib-2.0.so.0
No symbol table info available.
#3  0x0083eef7 in wxapp_poll_func (ufds=0x9434f48, nfds=17, timeout=7)
    at ../src/gtk/app.cpp:259
        res = <value optimized out>
#4  0x0160a56b in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#5  0x0160ab9f in g_main_loop_run () from /lib/libglib-2.0.so.0
No symbol table info available.
#6  0x0107d419 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#7  0x0085bec8 in wxEventLoop::Run (this=0xb751b3f8)
    at ../src/gtk/evtloop.cpp:76
        __FUNCTION__ = "Run"
        exitcode = <value optimized out>
#8  0x008fd2ac in wxAppBase::MainLoop (this=0x86d5620)
    at ../src/common/appcmn.cpp:312
        mainLoop = {<wxEventLoopPtr> = {m_ptr = 0xb751b3f8}, m_pp = 0x86d5660,
          m_pOld = 0x0}
---Type <return> to continue, or q <return> to quit---
#9  0x008fd001 in wxAppBase::OnRun (this=0xfffffdfc)
    at ../src/common/appcmn.cpp:367
No locals.
#10 0x00b953ea in wxEntry (argc=@0xc8f6ac, argv=0x86c4e80)
    at ../src/common/init.cpp:460
No locals.
#11 0x00b95497 in wxEntry (argc=@0xbffff460, argv=0xbffff504)
    at ../src/common/init.cpp:472
No locals.
#12 0x0823ccfb in main (argc=1, argv=0xbffff504) at amule-gui.cpp:93
No locals.

(gdb) thread apply all bt full
Code: [Select]
Thread 6 (Thread 0xb6405b70 (LWP 29045)):
#0  0x0012d422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x00138142 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
   from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0x00c07a3e in wxConditionInternal::WaitTimeout (this=0xb751adc8,
    milliseconds=100) at ../src/unix/threadpsx.cpp:405
        tspec = {tv_sec = 1297793200, tv_nsec = 960000000}
        err = <value optimized out>
#3  0x00c07aca in wxCondition::WaitTimeout (this=0xb751b804, milliseconds=100)
    at ../include/wx/thrimpl.cpp:256
        __FUNCTION__ = "WaitTimeout"
#4  0x00c097a4 in wxSemaphoreInternal::WaitTimeout (this=0xb751b800,
    milliseconds=100) at ../src/unix/threadpsx.cpp:552
        remainingTime = <value optimized out>
        locker = {m_isOk = true, m_mutex = @0xb751b800}
#5  0x00c0982a in wxSemaphore::WaitTimeout (this=0xb751b438, milliseconds=100)
    at ../include/wx/thrimpl.cpp:320
        __FUNCTION__ = "WaitTimeout"
#6  0x0833d882 in CTimerThread::Entry (this=0xb751b418) at Timer.cpp:66
        now = <value optimized out>
---Type <return> to continue, or q <return> to quit---
        delta = 0
        evt = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x847e2c8,
              static ms_classInfo = {m_className = 0xc3ad98 L"wxObject",
                m_objectSize = 8, m_objectConstructor = 0, m_baseInfo1 = 0x0,
                m_baseInfo2 = 0x0, static sm_first = 0x71d8cc,
                m_next = 0xc908a4, static sm_classTable = 0x86a5008},
              m_refData = 0x0}, m_eventObject = 0x0, m_eventType = 10244,
            m_timeStamp = 0, m_id = 6128, m_callbackUserData = 0x0,
            m_propagationLevel = 0, m_skipped = false,
            m_isCommandEvent = false, static ms_classInfo = {
              m_className = 0xc4c590 L"wxEvent", m_objectSize = 36,
              m_objectConstructor = 0, m_baseInfo1 = 0xc90838,
              m_baseInfo2 = 0x0, static sm_first = 0x71d8cc,
              m_next = 0xc918e8,
              static sm_classTable = 0x86a5008}}, <No data fields>}
        lastEvent = 713077468
#7  0x00c0a9e3 in wxThreadInternal::PthreadStart (thread=0xb751b418)
    at ../src/unix/threadpsx.cpp:766
        pthread = 0xb751aca8
        rc = <value optimized out>
        dontRunAtAll = false
        __FUNCTION__ = "PthreadStart"
#8  0x00c0aaed in wxPthreadStart (ptr=0xb751b418)
---Type <return> to continue, or q <return> to quit---
    at ../src/unix/threadpsx.cpp:718
No locals.
#9  0x0013380e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#10 0x00ec9a0e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 3 (Thread 0xb7407b70 (LWP 29042)):
#0  0x0012d422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x0013b466 in nanosleep () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0x00c11468 in wxMicroSleep (microseconds=625000)
    at ../src/unix/utilsunx.cpp:191
        tmReq = {tv_sec = 0, tv_nsec = 625000000}
#3  0x00c11491 in wxMilliSleep (milliseconds=625)
    at ../src/unix/utilsunx.cpp:212
No locals.
#4  0x00c0776d in wxThread::Sleep (milliseconds=625)
    at ../src/unix/threadpsx.cpp:986
No locals.
#5  0x081d7830 in UploadBandwidthThrottler::Entry (this=0x8d10968)
    at UploadBandwidthThrottler.cpp:323
---Type <return> to continue, or q <return> to quit---
        timeSinceLastLoop = <value optimized out>
        minFragSize = 1300
        doubleSendSize = 2600
        sleepTime = 625
        thisLoopTick = 713077131
        bytesToSpend = <value optimized out>
        extraSleepTime = 625
        lastLoopTick = 713077131
        allowedDataRate = 3072000
        rememberedSlotCounter = 0
        sendLock = {m_isOk = 176, m_mutex = @0x0}
#6  0x00c0a9e3 in wxThreadInternal::PthreadStart (thread=0x8d10968)
    at ../src/unix/threadpsx.cpp:766
        pthread = 0x8d22c48
        rc = <value optimized out>
        dontRunAtAll = false
        __FUNCTION__ = "PthreadStart"
#7  0x00c0aaed in wxPthreadStart (ptr=0x8d10968)
    at ../src/unix/threadpsx.cpp:718
No locals.
#8  0x0013380e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#9  0x00ec9a0e in clone () from /lib/tls/i686/cmov/libc.so.6
---Type <return> to continue, or q <return> to quit---
No symbol table info available.

Thread 1 (Thread 0xb7fdc760 (LWP 29026)):
#0  0x0012d422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x00ebbd96 in poll () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0x0161754b in g_poll () from /lib/libglib-2.0.so.0
No symbol table info available.
#3  0x0083eef7 in wxapp_poll_func (ufds=0x9434f48, nfds=17, timeout=7)
    at ../src/gtk/app.cpp:259
        res = <value optimized out>
#4  0x0160a56b in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#5  0x0160ab9f in g_main_loop_run () from /lib/libglib-2.0.so.0
No symbol table info available.
#6  0x0107d419 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#7  0x0085bec8 in wxEventLoop::Run (this=0xb751b3f8)
    at ../src/gtk/evtloop.cpp:76
        __FUNCTION__ = "Run"
        exitcode = <value optimized out>
#8  0x008fd2ac in wxAppBase::MainLoop (this=0x86d5620)
---Type <return> to continue, or q <return> to quit---
    at ../src/common/appcmn.cpp:312
        mainLoop = {<wxEventLoopPtr> = {m_ptr = 0xb751b3f8}, m_pp = 0x86d5660,
          m_pOld = 0x0}
#9  0x008fd001 in wxAppBase::OnRun (this=0xfffffdfc)
    at ../src/common/appcmn.cpp:367
No locals.
#10 0x00b953ea in wxEntry (argc=@0xc8f6ac, argv=0x86c4e80)
    at ../src/common/init.cpp:460
No locals.
#11 0x00b95497 in wxEntry (argc=@0xbffff460, argv=0xbffff504)
    at ../src/common/init.cpp:472
No locals.
#12 0x0823ccfb in main (argc=1, argv=0xbffff504) at amule-gui.cpp:93
No locals.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 15, 2011, 07:16:48 PM
$ ps axl | grep amule
Code: [Select]
0  1000  1985  1953  20   0  37796 30192 poll_s S+   pts/0      0:00 gdb amule
0  1000 28977 19921  20   0 134652 123776 poll_s S+  pts/1      0:03 gdb amule
0  1000 29026 28977  20   0 110992 58764 ptrace Tl   pts/1      0:07 /usr/local/stow/amule-pre-stu/bin/amule
0  1000 29129 29098  20   0   3048   800 pipe_w S+   pts/2      0:00 grep amule
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 15, 2011, 08:15:19 PM
Just to make sure, the only modification in the EMSocket.cpp file was
(!m_bBusy 
replaced by:
!(m_bBusy
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on February 15, 2011, 09:24:06 PM
Yep. Small change, big effect.  ;)
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 15, 2011, 09:42:13 PM
Umm strange backtrace. Are you using the patched wx?
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 15, 2011, 10:16:46 PM
Are you using the patched wx?

No, not yet.
The version that crashed was stock SVN with the modified EMSocket.cpp
Now im back at using the stock SVN (with Stu's patch included, of course).
Naturally, this one runs perfectly, so how can we notice any effect of the patched wx?
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 15, 2011, 10:23:12 PM
Anything i should try?
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 15, 2011, 10:34:47 PM
Dear RRM,

you should try the stock SVN with the modified EMSocket but using a modified wx.

In order to do this, build wx using the instructions I sent to you before.

Then, run the amule with the modified EMSocket (let's call it bad-amule) but using the new wx. In order to tell Linux that we want to run with a different lib we must use a variable.

Once you have built wxwindows do the following command:
Code: [Select]
$ LD_LIBRARY_PATH=~/temp-amule/build/lib ldd amule

Note that the path must be the place where the new wx is built and amule should be the "bad amule"

This should output the libraries amule is going to use, see if libwx is the new one. You can safely post the output here if you are not sure. If that checks then run the bad amule as follows
Code: [Select]
$ LD_LIBRARY_PATH=~/temp-amule/build/lib amule

And report back.

We believe the bug is in the library, not in amule, so if you don't build wx no testing is possible.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 15, 2011, 11:16:41 PM
you should try the stock SVN with the modified EMSocket but using a modified wx.

Yes, of course; my mistake.
Gotta go to sleep now, i will try it tomorrow.

BTW, i used to have both high VSZ and low VSZ crashes, so that there might be 2 problems:
one in the library and one in aMule.
This last (pre-Stu) crash was a low VSZ crash.
As far as i know, there were only high VSZ crashes that were fixed by the wx patch.
Maybe Stu's patch fixes the low VSZ crashes, and somehow also prevents high VSZ crashes,
but only in certain conditions (mine).

Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 15, 2011, 11:30:21 PM
BTW, i used to have both high VSZ and low VSZ crashes, so that there might be 2 problems:
one in the library and one in aMule.
This last (pre-Stu) crash was a low VSZ crash.
As far as i know, there were only high VSZ crashes that were fixed by the wx patch.
Maybe Stu's patch fixes the low VSZ crashes, and somehow also prevents high VSZ crashes,
but only in certain conditions (mine).
We had both kind of crashes, glib context was corrupted in some weird way and that lead to either glib entering a loop and posting infinite events (OOM crash) or segfault (trying to access mutex of the context, invalid address)

RRM, the only way we have to know is testing :)
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 16, 2011, 10:14:06 AM
Ok :)

Code: [Select]
rrm@rrm-desktop:~/temp-amule/wxWidgets-2.8.11$ cat kry.patch | patch -p1
can't find file to patch at input line 5
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|Index: src/gtk/gsockgtk.cpp
|===================================================================
|--- src/gtk/gsockgtk.cpp (revision 66879)
|+++ src/gtk/gsockgtk.cpp (working copy)
--------------------------
File to patch:

because there is no gsockgtk.cpp nor gsocket.cpp in my system.

Code: [Select]
File to patch: include/wx/unix/gsockunx.h
patching file include/wx/unix/gsockunx.h
Hunk #1 succeeded at 17 with fuzz 2 (offset -164 lines).
Hunk #2 FAILED at 380.
Hunk #3 FAILED at 423.
Hunk #4 FAILED at 1688.
3 out of 4 hunks FAILED -- saving rejects to file include/wx/unix/gsockunx.h.rej
can't find file to patch at input line 102
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|Index: include/wx/unix/gsockunx.h
|===================================================================
|--- include/wx/unix/gsockunx.h (revision 66879)
|+++ include/wx/unix/gsockunx.h (working copy)
--------------------------
File to patch:

I dont know if its okay now...
I guess not, because in the gsockunx.h it still says:
Code: [Select]
  char *m_gui_dependent;

};

#ifdef __cplusplus

So, im going to patch manually, just to make sure.
Okay, but after calling
Quote from: btkaos
$ ./configure --prefix=~/temp-amule/build/ --enable-debug

i get this:
Code: [Select]
configure: error: expected an absolute directory name for --prefix: ~/temp-amule/build/
rrm@rrm-desktop:~/temp-amule/wxWidgets-2.8.11$

So, shouldnt it be:
Code: [Select]
$ ./configure --prefix=/home/rrm/temp-amule/build/ --enable-debug

Let me try...

Code: [Select]
configure: WARNING: system png library not found or too old, will use built-in instead
checking for jpeglib.h... no
configure: WARNING: system jpeg library not found, will use built-in instead
checking for tiffio.h... no
configure: WARNING: system tiff library not found, will use built-in instead
checking for expat.h... no
configure: WARNING: system expat library not found, will use built-in instead
checking for mspack.h... no
checking for GTK+ version...
checking for pkg-config... /usr/bin/pkg-config
checking for GTK+ - version >= 2.0.0... no
*** Could not run GTK+ test program, checking why...
*** The test program failed to compile or link. See the file config.log for the
*** exact error that occured. This usually means GTK+ is incorrectly installed.
configure: error:
The development files for GTK+ were not found. For GTK+ 2, please
ensure that pkg-config is in the path and that gtk+-2.0.pc is
installed. For GTK+ 1.2 please check that gtk-config is in the path,
and that the version is 1.2.3 or above. Also check that the
libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config
--libs' are in the LD_LIBRARY_PATH or equivalent.

The config.log only contains yesterday's pre-stu configuration, btw.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 16, 2011, 12:59:44 PM
Oh sorry I see, you must use patch -p0

The exact line is

Code: [Select]
$ patch -p0 < kry.patch

Delete the wxWidget directory, and try again.

Use absolute paths, I wrote ~ because I didn't know your username.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 16, 2011, 01:00:20 PM
Indeed see my ouput:

Code: [Select]
~/tmp/wx/wxWidgets-2.8.11$ patch -p0 < kry.patch
patching file src/gtk/gsockgtk.cpp
patching file src/unix/gsocket.cpp
patching file include/wx/unix/gsockunx.h
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 16, 2011, 01:43:14 PM
Yes, thats the output im getting, but:
Code: [Select]
configure: WARNING: system png library not found or too old, will use built-in instead
checking for jpeglib.h... no
configure: WARNING: system jpeg library not found, will use built-in instead
checking for tiffio.h... no
configure: WARNING: system tiff library not found, will use built-in instead
checking for expat.h... no
configure: WARNING: system expat library not found, will use built-in instead
checking for mspack.h... no
checking for GTK+ version...
checking for pkg-config... /usr/bin/pkg-config
checking for GTK+ - version >= 2.0.0... no
*** Could not run GTK+ test program, checking why...
*** The test program failed to compile or link. See the file config.log for the
*** exact error that occured. This usually means GTK+ is incorrectly installed.
configure: error:
The development files for GTK+ were not found. For GTK+ 2, please
ensure that pkg-config is in the path and that gtk+-2.0.pc is
installed. For GTK+ 1.2 please check that gtk-config is in the path,
and that the version is 1.2.3 or above. Also check that the
libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config
--libs' are in the LD_LIBRARY_PATH or equivalent.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 16, 2011, 03:05:15 PM
Hi RRM. First make sure you did patch wx right.

Then you have to install some development libraries with aptitude. Try

Code: [Select]
sudo apt-get build-dep libwxgtk2.8-0

You may remove those packages when testing is finished.

Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 16, 2011, 03:55:23 PM
Quote
sudo apt-get build-dep libwxgtk2.8-0

Thank you, that helps.

Quote
$ LD_LIBRARY_PATH=/home/rrm/temp-amule/build/lib amule

Ok, that worked well, but:
rrm@rrm-desktop:~/temp-amule/wxWidgets-2.8.11$ LD_LIBRARY_PATH=/home/rrm/temp-amule/build/lib amule
 2011-02-16 15:42:13: amuleAppCommon.cpp(331): Initialising aMule SVN compiled with wxGTK2 v2.8.10 (Debugging) (Snapshot: rev. 10446)

Quote
$ ldd amule #

ldd: ./amule: No such file or directory
rrm@rrm-desktop:~$

Quote
$ LD_LIBRARY_PATH=/home/rrm/temp-amule/build/lib ldd amule

ldd: ./amule: No such file or directory
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 16, 2011, 04:18:30 PM
Since we have to run the non-stock version ("bad aMule")
I guess i have to stow that one of course:
$ cd /usr/local/stow
$ sudo stow -D amule-opt
$ sudo stow amule-pre-stu
$ cd
$ cd temp-amule/wxWidgets-2.8.11
$ LD_LIBRARY_PATH=/home/rrm/temp-amule/build/lib amule

Initialising aMule SVN compiled with wxGTK2 v2.8.10 (Debugging) (Snapshot: rev. 10446)

but then i get this:
Code: [Select]
EncryptedStreamSocket.cpp(441): assert "m_nReceiveBytesWanted > 0" failed in Negotiate().
and i click "continue"
Many connection attempts, and losses.
and i keep connecting, and losing.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 16, 2011, 05:06:06 PM
This mule keeps on losing the connection.
Nothing happens.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 16, 2011, 05:31:13 PM

Quote
$ LD_LIBRARY_PATH=/home/rrm/temp-amule/build/lib ldd amule

ldd: ./amule: No such file or directory


Sorry it should be

Code: [Select]
$ LD_LIBRARY_PATH=/home/rrm/temp-amule/build/lib ldd /usr/local/bin/amule
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 16, 2011, 05:42:25 PM
$ cd temp-amule/wxWidgets-2.8.11
$ LD_LIBRARY_PATH=/home/rrm/temp-amule/build/lib amule

Initialising aMule SVN compiled with wxGTK2 v2.8.10 (Debugging) (Snapshot: rev. 10446)


Umm, see the problem, you have mismatch between the library compiled 2.8.10 and the one you are using.
Are you using an old Ubuntu version. I did assume you were using current Ubuntu.

In that case, compile wx 2.8.11 as we said. Make sure the patch is applied and let it install in ~/temp-amule/build/

Then, do a fresh checkout of amule:

Code: [Select]
$ sudo aptitude install subversion
$ svn co http://amule.googlecode.com/svn/trunk amule-pre-stu
$ cd amule-pre-stu
$ sudo aptitude install autoconf automake autopoint
$ ./autogen.sh
Then modify EMSocket.cpp as we agreed. The above could be different in old Ubuntu versions

Configure amule then as follows
Code: [Select]
./configure --prefix=/usr/local/stow/amule-pre-stu --enable-debug --enable-optimize --with-wxdebug --with-wx-prefix=/home/rrm/temp-amule/build

This way you should have a good amule under /usr/local/stow/amule-pre-stu to test.

Go RRM, we are almost there, thanks for not giving up.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 16, 2011, 06:50:28 PM
Thank you, Bill.
Yes, i could never boot the live CDs (or via USB etc) for 10.04 and 10.10
Upgrading using update manager, i could not boot at all.
So i had to return to 9.10 (many ppl experienced the same)

Quote from: btkaos
compile wx 2.8.11 as we said. Make sure the patch is applied and let it install in ~/temp-amule/build/

All this already has been done, right?

Quote
Then, do a fresh checkout of amule

done.

Quote
Then modify EMSocket.cpp as we agreed.

The one in home/rrm/tmp/amule/src
right?
done.

Quote
./configure --prefix=/usr/local/stow/amule-pre-stu --enable-debug --enable-optimize --with-wxdebug --with-wx-prefix=/home/rrm/temp-amule/build

I get this:

    "checking for wxWidgets version >= 2.8.8 (--debug=yes --unicode=yes)... no
    configure: error:"
Code: [Select]
    The requested wxWidgets build couldn't be found.
   
    The configuration you asked for aMule requires a wxWidgets
    build with the following settings:
        --debug=yes --unicode=yes
    but such build is not available.

    To see the wxWidgets builds available on this system, please use
    'wx-config --list' command. To use the default build, returned by
    'wx-config --selected-config', use the options with their 'auto'
    default values.

    If you still get this error, then check that 'wx-config' is
    in path, the directory where wxWidgets libraries are installed
    (returned by 'wx-config --libs' command) is in LD_LIBRARY_PATH
    or equivalent variable and wxWidgets version is 2.8.8 or above.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 16, 2011, 07:16:38 PM
$ wx-config --list

Code: [Select]
    Default config is gtk2-unicode-release-2.8

  Default config will be used for output

  Alternate matches:
    base-unicode-debug-2.8
    base-unicode-release-2.8
    gtk2-unicode-debug-2.8

The installed libwxgtk2.8 (0, dbg, dev) is version 2.8.10.1-0ubuntu1
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 16, 2011, 07:23:02 PM
Yes, i could never boot the live CDs (or via USB etc) for 10.04 and 10.10
Upgrading using update manager, i could not boot at all.
So i had to return to 9.10 (many ppl experienced the same)
Weird thing :( Hope you are luckier with 11.04 Anyways solving boot issues is not hard in Linux.
Quote
Quote from: btkaos
compile wx 2.8.11 as we said. Make sure the patch is applied and let it install in ~/temp-amule/build/

All this already has been done, right?
Yes, but maybe we have to do it again, see below.

Quote
Quote
Then modify EMSocket.cpp as we agreed.

The one in home/rrm/tmp/amule/src
right?
done.
If you typed my command exactly the checkout would be in the amule-pre-stu directory.
Quote
Quote
./configure --prefix=/usr/local/stow/amule-pre-stu --enable-debug --enable-optimize --with-wxdebug --with-wx-prefix=/home/rrm/temp-amule/build

I get this:

    "checking for wxWidgets version >= 2.8.8 (--debug=yes --unicode=yes)... no
    configure: error:"
Umm, maybe you need to pass --enable-unicode to wx configure.
So got to the directory wxWidgets-2.8.11 and type
Code: [Select]
./configure --prefix=~/temp-amule/build/ --enable-debug --enable-unicode
make clean && make install
Also make sure the patch was applied allright. Did you have more success when using patch -p0?

Once the wx build finishes, go to the fresh svn checkout and configure amule again, let's see if we are luckier this time around :)
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 16, 2011, 08:18:35 PM
Quote
Anyways solving boot issues is not hard in Linux.

ha ha, okay, then i will ask for your help in the Ubuntu forums...  ;D

Quote
got to the directory wxWidgets-2.8.11 and type
Code: [Select]
./configure --prefix=~/temp-amule/build/ --enable-debug --enable-unicode
make clean && make install

./configure --prefix=/home/rrm/temp-amule/build/ --enable-debug --enable-unicode
make clean && make install
right?
done

Quote
Also make sure the patch was applied allright. Did you have more success when using patch -p0?

Yes.

Quote
Once the wx build finishes, go to the fresh svn checkout and configure amule again, let's see if we are luckier this time around :)

wx build has finished.
reconfiguring amule
Code: [Select]
Libraries aMule will use to build:
                             wxWidgets             2.8.11 (gtk2,debug,shared)
                             crypto++              5.6.0 (installed, in /usr)
                             libupnp               1.6.6
                             libintl               system
                             zlib                  1.2.3.3
make and install
done.
gdb amule
Initialising aMule SVN compiled with wxGTK2 v2.8.11 (Debugging) (Snapshot: rev. 10448)
seems to run fine...


Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 17, 2011, 12:20:18 AM
seems to run fine...
Well let's see what happens. Thank you RRM, you are a fantastic tester.

By the way could you post the boot information version number to check?
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 17, 2011, 06:22:56 AM
Its still running, but

$ ldd amule #
ldd: ./amule: No such file or directory
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 17, 2011, 12:37:24 PM
$ ldd amule #
ldd: ./amule: No such file or directory
Should be
Code: [Select]
$ LD_LIBRARY_PATH=/home/rrm/temp-amule/build/lib ldd /usr/local/stow/amule-pre-stu/bin/amule
and to run amule
Code: [Select]
$ LD_LIBRARY_PATH=/home/rrm/temp-amule/build/lib /usr/local/stow/amule-pre-stu/bin/amule

Regards,
BTK
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 17, 2011, 06:46:13 PM
Oooops...
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 17, 2011, 06:54:59 PM
$ LD_LIBRARY_PATH=/home/rrm/temp-amule/build/lib ldd /usr/local/stow/amule-pre-stu/bin/amule
Code: [Select]
linux-gate.so.1 =>  (0x00ec4000)
libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0x00216000)
libbfd-2.20.so => /usr/lib/libbfd-2.20.so (0x006b6000)
libz.so.1 => /lib/libz.so.1 (0x00b27000)
libcrypto++.so.8 => /usr/lib/libcrypto++.so.8 (0x0022f000)
libupnp.so.3 => /usr/lib/libupnp.so.3 (0x0082a000)
libthreadutil.so.2 => /usr/lib/libthreadutil.so.2 (0x00195000)
libixml.so.2 => /usr/lib/libixml.so.2 (0x00206000)
libwx_gtk2ud_adv-2.8.so.0 => /home/rrm/temp-amule/build/lib/libwx_gtk2ud_adv-2.8.so.0 (0x00847000)
libwx_gtk2ud_core-2.8.so.0 => /home/rrm/temp-amule/build/lib/libwx_gtk2ud_core-2.8.so.0 (0x00ec5000)
libwx_baseud_net-2.8.so.0 => /home/rrm/temp-amule/build/lib/libwx_baseud_net-2.8.so.0 (0x00110000)
libwx_baseud-2.8.so.0 => /home/rrm/temp-amule/build/lib/libwx_baseud-2.8.so.0 (0x00939000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00c0c000)
libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0x00e07000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x0014a000)
libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0x017a2000)
/lib/ld-linux.so.2 (0x00bef000)
libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0x0019c000)
libgtk-x11-2.0.so.0 => /usr/lib/libgtk-x11-2.0.so.0 (0x04987000)
libgdk-x11-2.0.so.0 => /usr/lib/libgdk-x11-2.0.so.0 (0x0061f000)
libatk-1.0.so.0 => /usr/lib/libatk-1.0.so.0 (0x00dce000)
libpangoft2-1.0.so.0 => /usr/lib/libpangoft2-1.0.so.0 (0x00168000)
libgdk_pixbuf-2.0.so.0 => /usr/lib/libgdk_pixbuf-2.0.so.0 (0x001a0000)
libgio-2.0.so.0 => /usr/lib/libgio-2.0.so.0 (0x0078e000)
libpango-1.0.so.0 => /usr/lib/libpango-1.0.so.0 (0x001ba000)
libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x00b3d000)
libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0x00bb2000)
libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0x00cfe000)
libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0x00210000)
libgthread-2.0.so.0 => /usr/lib/libgthread-2.0.so.0 (0x00824000)
librt.so.1 => /lib/tls/i686/cmov/librt.so.1 (0x00b05000)
libglib-2.0.so.0 => /lib/libglib-2.0.so.0 (0x077c1000)
libXinerama.so.1 => /usr/lib/libXinerama.so.1 (0x00191000)
libSM.so.6 => /usr/lib/libSM.so.6 (0x00d4b000)
libpng12.so.0 => /usr/lib/libpng12.so.0 (0x00d54000)
libjpeg.so.62 => /usr/lib/libjpeg.so.62 (0x00d79000)
libtiff.so.4 => /usr/lib/libtiff.so.4 (0x00e2d000)
libpangocairo-1.0.so.0 => /usr/lib/libpangocairo-1.0.so.0 (0x00b0e000)
libX11.so.6 => /usr/lib/libX11.so.6 (0x0226e000)
libXcomposite.so.1 => /usr/lib/libXcomposite.so.1 (0x00202000)
libXdamage.so.1 => /usr/lib/libXdamage.so.1 (0x00b1b000)
libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0x00b1e000)
libcairo.so.2 => /usr/lib/libcairo.so.2 (0x035bb000)
libXext.so.6 => /usr/lib/libXext.so.6 (0x00bdf000)
libXrender.so.1 => /usr/lib/libXrender.so.1 (0x00d3c000)
libXi.so.6 => /usr/lib/libXi.so.6 (0x00db9000)
libXrandr.so.2 => /usr/lib/libXrandr.so.2 (0x00d9d000)
libXcursor.so.1 => /usr/lib/libXcursor.so.1 (0x00da6000)
libpcre.so.3 => /lib/libpcre.so.3 (0x00e82000)
libresolv.so.2 => /lib/tls/i686/cmov/libresolv.so.2 (0x00deb000)
libselinux.so.1 => /lib/libselinux.so.1 (0x0288b000)
libexpat.so.1 => /lib/libexpat.so.1 (0x0537e000)
libICE.so.6 => /usr/lib/libICE.so.6 (0x016e5000)
libuuid.so.1 => /lib/libuuid.so.1 (0x00d46000)
libxcb.so.1 => /usr/lib/libxcb.so.1 (0x012db000)
libpixman-1.so.0 => /usr/lib/libpixman-1.so.0 (0x050dd000)
libdirectfb-1.2.so.0 => /usr/lib/libdirectfb-1.2.so.0 (0x04521000)
libfusion-1.2.so.0 => /usr/lib/libfusion-1.2.so.0 (0x00dc4000)
libdirect-1.2.so.0 => /usr/lib/libdirect-1.2.so.0 (0x07323000)
libxcb-render-util.so.0 => /usr/lib/libxcb-render-util.so.0 (0x00db1000)
libxcb-render.so.0 => /usr/lib/libxcb-render.so.0 (0x00eb3000)
libXau.so.6 => /usr/lib/libXau.so.6 (0x00dff000)
libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x00ebc000)

Is it okay, or do i need to try to patch and configure again?
The mule is running now...  ;D
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 17, 2011, 07:11:11 PM
When i can find some time, I will retry the whole process from beginning to end anyway,
to make sure i did everything right,
because sometimes it felt like i was losing track of where i was in the process.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 17, 2011, 08:59:54 PM
AFAICT everything seems OK.

So the mule didn't crash? Umm interesting.

If you want to compare mules just compile wx without Kry patch and install (--prefix parameter) in ~/temp-amule/build-wo-patch

Then you can compare patched lib against not patched just modifying the LD parameter.

Code: [Select]
$ # Run with the patched lib
$ LD_LIBRARY_PATH=/home/rrm/temp-amule/build/lib /usr/local/stow/amule-pre-stu/bin/amule

$ # Run with the unpatched wx
$ LD_LIBRARY_PATH=/home/rrm/temp-amule/build-wo-patch/lib /usr/local/stow/amule-pre-stu/bin/amule

Regards,
BTK
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 17, 2011, 09:34:02 PM
OK, will do that.
Yes, the mule is still running.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 18, 2011, 05:15:12 PM
Ok, i found some time, so here i go:

Recompiling wx Widgets
I deleted the old temp-amule folder.
Then:

$ mkdir temp-amule
$ cd temp-amule
$ wget http://downloads.sourceforge.net/project/wxwindows/2.8.11/wxWidgets-2.8.11.tar.gz
$ tar xvfz wxWidgets-2.8.11.tar.gz
$ cd wxWidgets-2.8.11
$ ./configure --prefix=/home/rrm/temp-amule/build-wo-patch/ --enable-debug --enable-unicode
$ make clean && make install

saved kry.patch in this same folder

$ patch -p0 < kry.patch
$./configure --prefix=/home/rrm/temp-amule/build/ --enable-debug --enable-unicode
$ make clean && make install


Reconfiguring aMule
I deleted the amule-pre-stu folder.
Then:

$ sudo aptitude install subversion
$ svn co http://amule.googlecode.com/svn/trunk amule-pre-stu
$ cd amule-pre-stu
$ sudo aptitude install autoconf automake autopoint
$ ./autogen.sh

In /home/rrm/amule-pre-stu/src/EMSocket.cpp, replaced "(!m_bBusy" by "!(m_bBusy" (yes, at the right spot)

$ ./configure --prefix=/usr/local/stow/amule-pre-stu --enable-debug --enable-optimize --with-wxdebug --with-wx-prefix=/home/rrm/temp-amule/build
$ make clean
$ make -j 2 && sudo make install

To run aMule with the modified EMSocket.cpp, with the patched wx
$ LD_LIBRARY_PATH=/home/rrm/temp-amule/build/lib /usr/local/stow/amule-pre-stu/bin/amule
To run aMule with the modified EMSocket.cpp, without the patched wx
$ LD_LIBRARY_PATH=/home/rrm/temp-amule/build-wo-patch/lib /usr/local/stow/amule-pre-stu/bin/amule

identity check:
$ LD_LIBRARY_PATH=/home/rrm/temp-amule/build/lib ldd /usr/local/stow/amule-pre-stu/bin/amule
$ LD_LIBRARY_PATH=/home/rrm/temp-amule/build-wo-patch/lib ldd /usr/local/stow/amule-pre-stu/bin/amule

What did i do wrong?
Both versions cannot connect anymore?
(they try, but they keep losing it again)
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 18, 2011, 06:04:55 PM
Umm, really weird, more so when you had the mule running for several hours. By the way, it didn't crash, did it?

Care to post the terminal output of starting amule?
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 18, 2011, 08:46:03 PM
Umm, really weird, more so when you had the mule running for several hours.

Yes, but that was the old version.
Today i made 2 new ones (with and without wx patch), and these never got to work,
so i must have screwed up somewhere.
No, none of the versions crashed.

Quote
Care to post the terminal output of starting amule?

How do i get that?
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 18, 2011, 09:18:54 PM
Since both versions didnt work, and as they share the new aMule,
i must have screwed up there, so i started configuring a fresh mule.
(this time including automated patching)

I deleted the amule-pre-stu folder.
Then:

$ sudo aptitude install subversion
$ svn co http://amule.googlecode.com/svn/trunk amule-pre-stu
$ cd amule-pre-stu
$ sudo aptitude install autoconf automake autopoint
$ ./autogen.sh
saved em.patch to this folder
$ patch -p1 em.patch
...and then it takes forever... nothing happens...
its hanging... (many minutes now)

Should it have been:
$ patch -p0 < em.patch  ?
Can i safely cut this short?
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: GonoszTopi on February 19, 2011, 12:28:39 AM
$ patch -p1 em.patch
...and then it takes forever... nothing happens...
its hanging... (many minutes now)
Actually it's waiting for input...

Should it have been:
$ patch -p0 < em.patch  ?
Can i safely cut this short?
You see right that the '<' sign was missing, but still use -p1 instead of -p0. That is, it should be
Code: [Select]
$ patch -p1 < em.patch
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 19, 2011, 02:56:43 AM
Since both versions didnt work, and as they share the new aMule,
i must have screwed up there, so i started configuring a fresh mule.
(this time including automated patching)
This is weird. What I meant for the start logs is to post the output you see in the terminal when starting amule.

Ok I'll explain what the steps in the hope you are more autonomous as a tester.
Quote
$ sudo aptitude install subversion
$ sudo aptitude install autoconf automake autopoint
This is just for installing applications. Once installed repeating the commands serves no purpose.
Quote
$ svn co http://amule.googlecode.com/svn/trunk amule-pre-stu
$ cd amule-pre-stu
$ ./autogen.sh
Note that the amule-pre-stu parameter in the first line indicates the name of the directory to be created.

This commands gets a copy of amule. To update use svn up
Quote
$ patch -p1 em.patch
Sorry, as already explained that was my mistake or writing from memory.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 19, 2011, 06:12:45 PM
Thank you!

rrm@rrm-desktop:~/amule-pre-stu$ patch -p1 < em.patch
patching file src/EMSocket.cpp
Hunk #1 FAILED at 476.
1 out of 1 hunk FAILED -- saving rejects to file src/EMSocket.cpp.rej

Code: [Select]
*************** SocketSentBytes CEMSocket::Send(uint32 maxNumberOfBytesToSend, uint32 minFragSiz
*** 476,482 ****
      uint32 sentStandardPacketBytesThisCall = 0;
      uint32 sentControlPacketBytesThisCall = 0;
         
-     if (byConnected == ES_CONNECTED && IsEncryptionLayerReady() && (!m_bBusy || onlyAllowedToSendControlPacket)) {
 
                 //printf("* Internal attemptto send on %p\n", this);
 
--- 476,482 ----
      uint32 sentStandardPacketBytesThisCall = 0;
      uint32 sentControlPacketBytesThisCall = 0;
         
+     if (byConnected == ES_CONNECTED && IsEncryptionLayerReady() && !(m_bBusy || onlyAllowedToSendControlPacket)) {
 
                 //printf("* Internal attemptto send on %p\n", this);

I checked out the EMSocket.cpp, and indeed, there was no change,
so i did it manually again.

$ LD_LIBRARY_PATH=/home/rrm/temp-amule/build/lib ldd /usr/local/stow/amule-pre-stu/bin/amule
Code: [Select]
linux-gate.so.1 =>  (0x00131000)
libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0x00f94000)
libbfd-2.20.so => /usr/lib/libbfd-2.20.so (0x0059c000)
libz.so.1 => /lib/libz.so.1 (0x004dd000)
libcrypto++.so.8 => /usr/lib/libcrypto++.so.8 (0x00674000)
libupnp.so.3 => /usr/lib/libupnp.so.3 (0x00110000)
libthreadutil.so.2 => /usr/lib/libthreadutil.so.2 (0x004bf000)
libixml.so.2 => /usr/lib/libixml.so.2 (0x00c40000)
libwx_gtk2ud_adv-2.8.so.0 => /home/rrm/temp-amule/build/lib/libwx_gtk2ud_adv-2.8.so.0 (0x00236000)
libwx_gtk2ud_core-2.8.so.0 => /home/rrm/temp-amule/build/lib/libwx_gtk2ud_core-2.8.so.0 (0x00fad000)
libwx_baseud_net-2.8.so.0 => /home/rrm/temp-amule/build/lib/libwx_baseud_net-2.8.so.0 (0x00162000)
libwx_baseud-2.8.so.0 => /home/rrm/temp-amule/build/lib/libwx_baseud-2.8.so.0 (0x00a64000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00328000)
libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0x0052c000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00132000)
libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0x00dce000)
/lib/ld-linux.so.2 (0x00219000)
libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0x0012d000)
libgtk-x11-2.0.so.0 => /usr/lib/libgtk-x11-2.0.so.0 (0x058e9000)
libgdk-x11-2.0.so.0 => /usr/lib/libgdk-x11-2.0.so.0 (0x0041a000)
libatk-1.0.so.0 => /usr/lib/libatk-1.0.so.0 (0x001da000)
libpangoft2-1.0.so.0 => /usr/lib/libpangoft2-1.0.so.0 (0x004fe000)
libgdk_pixbuf-2.0.so.0 => /usr/lib/libgdk_pixbuf-2.0.so.0 (0x0019c000)
libgio-2.0.so.0 => /usr/lib/libgio-2.0.so.0 (0x00c4a000)
libpango-1.0.so.0 => /usr/lib/libpango-1.0.so.0 (0x00552000)
libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x00ce0000)
libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0x00d55000)
libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0x00d82000)
libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0x00207000)
libgthread-2.0.so.0 => /usr/lib/libgthread-2.0.so.0 (0x00150000)
librt.so.1 => /lib/tls/i686/cmov/librt.so.1 (0x00156000)
libglib-2.0.so.0 => /lib/libglib-2.0.so.0 (0x04f81000)
libXinerama.so.1 => /usr/lib/libXinerama.so.1 (0x0015f000)
libSM.so.6 => /usr/lib/libSM.so.6 (0x001b6000)
libpng12.so.0 => /usr/lib/libpng12.so.0 (0x00f13000)
libjpeg.so.62 => /usr/lib/libjpeg.so.62 (0x00f38000)
libtiff.so.4 => /usr/lib/libtiff.so.4 (0x0519e000)
libpangocairo-1.0.so.0 => /usr/lib/libpangocairo-1.0.so.0 (0x001bf000)
libX11.so.6 => /usr/lib/libX11.so.6 (0x02220000)
libXcomposite.so.1 => /usr/lib/libXcomposite.so.1 (0x001cc000)
libXdamage.so.1 => /usr/lib/libXdamage.so.1 (0x001d0000)
libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0x001d3000)
libcairo.so.2 => /usr/lib/libcairo.so.2 (0x042f0000)
libXext.so.6 => /usr/lib/libXext.so.6 (0x001f7000)
libXrender.so.1 => /usr/lib/libXrender.so.1 (0x0020c000)
libXi.so.6 => /usr/lib/libXi.so.6 (0x004af000)
libXrandr.so.2 => /usr/lib/libXrandr.so.2 (0x004c5000)
libXcursor.so.1 => /usr/lib/libXcursor.so.1 (0x004ce000)
libpcre.so.3 => /lib/libpcre.so.3 (0x00f5c000)
libresolv.so.2 => /lib/tls/i686/cmov/libresolv.so.2 (0x013c3000)
libselinux.so.1 => /lib/libselinux.so.1 (0x03bf4000)
libexpat.so.1 => /lib/libexpat.so.1 (0x0296b000)
libICE.so.6 => /usr/lib/libICE.so.6 (0x01b20000)
libuuid.so.1 => /lib/libuuid.so.1 (0x004ba000)
libxcb.so.1 => /usr/lib/libxcb.so.1 (0x047c4000)
libpixman-1.so.0 => /usr/lib/libpixman-1.so.0 (0x07b8c000)
libdirectfb-1.2.so.0 => /usr/lib/libdirectfb-1.2.so.0 (0x0360a000)
libfusion-1.2.so.0 => /usr/lib/libfusion-1.2.so.0 (0x004f3000)
libdirect-1.2.so.0 => /usr/lib/libdirect-1.2.so.0 (0x0686b000)
libxcb-render-util.so.0 => /usr/lib/libxcb-render-util.so.0 (0x00527000)
libxcb-render.so.0 => /usr/lib/libxcb-render.so.0 (0x00c30000)
libXau.so.6 => /usr/lib/libXau.so.6 (0x004d9000)
libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x00c39000)

$ LD_LIBRARY_PATH=/home/rrm/temp-amule/build-wo-patch/lib ldd /usr/local/stow/amule-pre-stu/bin/amule
Code: [Select]
linux-gate.so.1 =>  (0x00ba1000)
libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0x00e74000)
libbfd-2.20.so => /usr/lib/libbfd-2.20.so (0x007ad000)
libz.so.1 => /lib/libz.so.1 (0x009c7000)
libcrypto++.so.8 => /usr/lib/libcrypto++.so.8 (0x00340000)
libupnp.so.3 => /usr/lib/libupnp.so.3 (0x00dfe000)
libthreadutil.so.2 => /usr/lib/libthreadutil.so.2 (0x00110000)
libixml.so.2 => /usr/lib/libixml.so.2 (0x008a3000)
libwx_gtk2ud_adv-2.8.so.0 => /home/rrm/temp-amule/build-wo-patch/lib/libwx_gtk2ud_adv-2.8.so.0 (0x00116000)
libwx_gtk2ud_core-2.8.so.0 => /home/rrm/temp-amule/build-wo-patch/lib/libwx_gtk2ud_core-2.8.so.0 (0x00e8d000)
libwx_baseud_net-2.8.so.0 => /home/rrm/temp-amule/build-wo-patch/lib/libwx_baseud_net-2.8.so.0 (0x00208000)
libwx_baseud-2.8.so.0 => /home/rrm/temp-amule/build-wo-patch/lib/libwx_baseud-2.8.so.0 (0x00ba2000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00242000)
libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0x00730000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00756000)
libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0x009dd000)
/lib/ld-linux.so.2 (0x00d9c000)
libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0x00334000)
libgtk-x11-2.0.so.0 => /usr/lib/libgtk-x11-2.0.so.0 (0x067f7000)
libgdk-x11-2.0.so.0 => /usr/lib/libgdk-x11-2.0.so.0 (0x008ad000)
libatk-1.0.so.0 => /usr/lib/libatk-1.0.so.0 (0x00774000)
libpangoft2-1.0.so.0 => /usr/lib/libpangoft2-1.0.so.0 (0x00942000)
libgdk_pixbuf-2.0.so.0 => /usr/lib/libgdk_pixbuf-2.0.so.0 (0x00791000)
libgio-2.0.so.0 => /usr/lib/libgio-2.0.so.0 (0x03795000)
libpango-1.0.so.0 => /usr/lib/libpango-1.0.so.0 (0x0096b000)
libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x00b22000)
libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0x00d6e000)
libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0x00db9000)
libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0x00338000)
libgthread-2.0.so.0 => /usr/lib/libgthread-2.0.so.0 (0x00885000)
librt.so.1 => /lib/tls/i686/cmov/librt.so.1 (0x0088b000)
libglib-2.0.so.0 => /lib/libglib-2.0.so.0 (0x03ce8000)
libXinerama.so.1 => /usr/lib/libXinerama.so.1 (0x0033d000)
libSM.so.6 => /usr/lib/libSM.so.6 (0x00894000)
libpng12.so.0 => /usr/lib/libpng12.so.0 (0x00e1b000)
libjpeg.so.62 => /usr/lib/libjpeg.so.62 (0x00e40000)
libtiff.so.4 => /usr/lib/libtiff.so.4 (0x01dc9000)
libpangocairo-1.0.so.0 => /usr/lib/libpangocairo-1.0.so.0 (0x009b3000)
libX11.so.6 => /usr/lib/libX11.so.6 (0x02798000)
libXcomposite.so.1 => /usr/lib/libXcomposite.so.1 (0x0089d000)
libXdamage.so.1 => /usr/lib/libXdamage.so.1 (0x009c0000)
libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0x00b97000)
libcairo.so.2 => /usr/lib/libcairo.so.2 (0x040a2000)
libXext.so.6 => /usr/lib/libXext.so.6 (0x00e64000)
libXrender.so.1 => /usr/lib/libXrender.so.1 (0x01bc9000)
libXi.so.6 => /usr/lib/libXi.so.6 (0x03a41000)
libXrandr.so.2 => /usr/lib/libXrandr.so.2 (0x06137000)
libXcursor.so.1 => /usr/lib/libXcursor.so.1 (0x056f3000)
libpcre.so.3 => /lib/libpcre.so.3 (0x03f39000)
libresolv.so.2 => /lib/tls/i686/cmov/libresolv.so.2 (0x012a2000)
libselinux.so.1 => /lib/libselinux.so.1 (0x012b6000)
libexpat.so.1 => /lib/libexpat.so.1 (0x095c5000)
libICE.so.6 => /usr/lib/libICE.so.6 (0x03bee000)
libuuid.so.1 => /lib/libuuid.so.1 (0x00df7000)
libxcb.so.1 => /usr/lib/libxcb.so.1 (0x0338c000)
libpixman-1.so.0 => /usr/lib/libpixman-1.so.0 (0x03aae000)
libdirectfb-1.2.so.0 => /usr/lib/libdirectfb-1.2.so.0 (0x088cc000)
libfusion-1.2.so.0 => /usr/lib/libfusion-1.2.so.0 (0x07383000)
libdirect-1.2.so.0 => /usr/lib/libdirect-1.2.so.0 (0x02ccc000)
libxcb-render-util.so.0 => /usr/lib/libxcb-render-util.so.0 (0x05ac3000)
libxcb-render.so.0 => /usr/lib/libxcb-render.so.0 (0x0871e000)
libXau.so.6 => /usr/lib/libXau.so.6 (0x009c3000)
libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x08cd4000)


Quote
Care to post the terminal output of starting amule?

$ LD_LIBRARY_PATH=/home/rrm/temp-amule/build-wo-patch/lib /usr/local/stow/amule-pre-stu/bin/amule
Code: [Select]
2011-02-19 18:06:19: amuleAppCommon.cpp(331): Initialising aMule SVN compiled with wxGTK2 v2.8.11 (Debugging) (Snapshot: rev. 10450)
 2011-02-19 18:06:19: amuleAppCommon.cpp(377): Checking if there is an instance already running...
 2011-02-19 18:06:19: amuleAppCommon.cpp(408): No other instances are running.
 2011-02-19 18:06:20: ListenSocket.cpp(65): ListenSocket: Ok.
 2011-02-19 18:06:21: DownloadQueue.cpp(113): Loading temp files from /home/rrm/.aMule/Temp.
 2011-02-19 18:06:21: DownloadQueue.cpp(163): All PartFiles Loaded.

2011-02-19 18:06:43: ServerConnect.cpp(412): Connection lost
2011-02-19 18:06:47: ServerConnect.cpp(412): Connection lost
2011-02-19 18:07:06: ServerConnect.cpp(412): Connection lost
etc etc
2011-02-19 18:08:56: ServerConnect.cpp(74): Failed to connect to all obfuscated servers listed. Making another pass without obfuscation.
2011-02-19 18:09:20: ServerConnect.cpp(412): Connection lost
etc etc etc

$ LD_LIBRARY_PATH=/home/rrm/temp-amule/build/lib /usr/local/stow/amule-pre-stu/bin/amule
Code: [Select]
2011-02-19 18:11:27: amuleAppCommon.cpp(331): Initialising aMule SVN compiled with wxGTK2 v2.8.11 (Debugging) (Snapshot: rev. 10450)
 2011-02-19 18:11:27: amuleAppCommon.cpp(377): Checking if there is an instance already running...
 2011-02-19 18:11:27: amuleAppCommon.cpp(408): No other instances are running.
 2011-02-19 18:11:29: ListenSocket.cpp(65): ListenSocket: Ok.
 2011-02-19 18:11:29: DownloadQueue.cpp(113): Loading temp files from /home/rrm/.aMule/Temp.
 2011-02-19 18:11:29: DownloadQueue.cpp(163): All PartFiles Loaded.

2011-02-19 18:11:52: ServerConnect.cpp(412): Connection lost
etc etc etc etc

So, now im running the old mule
Code: [Select]
Starting program: /usr/local/stow/amule-opt/bin/amule
[Thread debugging using libthread_db enabled]
 2011-02-19 18:15:16: amuleAppCommon.cpp(331): Initialising aMule SVN compiled with wxGTK2 v2.8.10 (Debugging) (Snapshot: rev. 10446)
 2011-02-19 18:15:16: amuleAppCommon.cpp(377): Checking if there is an instance already running...
 2011-02-19 18:15:16: amuleAppCommon.cpp(408): No other instances are running.
 2011-02-19 18:15:17: ListenSocket.cpp(65): ListenSocket: Ok.
[New Thread 0xb7eacb70 (LWP 26271)]
[New Thread 0xb73ffb70 (LWP 26274)]
[New Thread 0xb6bfeb70 (LWP 26275)]
[Thread 0xb6bfeb70 (LWP 26275) exited]
 2011-02-19 18:15:18: DownloadQueue.cpp(113): Loading temp files from /home/rrm/.aMule/Temp.
 2011-02-19 18:15:18: DownloadQueue.cpp(163): All PartFiles Loaded.
[New Thread 0xb6bfeb70 (LWP 26276)]
[Thread 0xb6bfeb70 (LWP 26276) exited]
[New Thread 0xb63fdb70 (LWP 26277)]
[Thread 0xb7eacb70 (LWP 26271) exited]

and within seconds the mule accelerates to MBs/s...

Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 19, 2011, 06:36:07 PM
Really weird. Are you using upnp? What does the amule configure log say about uPNP.

Care to compare the first lines of config.log of the good and bad amules?
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 19, 2011, 07:45:47 PM
Quote
Care to compare the first lines of config.log of the good and bad amules?

Here we go:
Code: [Select]
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

It was created by aMule configure SVN, which was
generated by GNU Autoconf 2.65.  Invocation command line was

  $ ./configure --prefix=/usr/local/stow/amule-opt/ --enable-geoip --enable-optimize --enable-debug --with-wxdebug --mandir=/share/bin

Code: [Select]
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

It was created by wxWidgets configure 2.8.11, which was
generated by GNU Autoconf 2.59.  Invocation command line was

  $ ./configure --prefix=/home/rrm/temp-amule/build/ --enable-debug --enable-unicode

Really weird. Are you using upnp? What does the amule configure log say about uPNP.

Uhrr, its a long log, so i will start searching now...
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 19, 2011, 09:26:38 PM
I dont even know what uPNP is,
but I found this in the "output variables" of the ~/tmp/amule config.log:

Code: [Select]
LIBS=''
LIBUPNP_CFLAGS='-pthread  '
LIBUPNP_CPPFLAGS='-I/usr/include/upnp   -DENABLE_UPNP=1'
LIBUPNP_LDFLAGS=' '
LIBUPNP_LIBS='  -lupnp -lthreadutil -lixml  '
LTLIBICONV=''
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 20, 2011, 03:23:58 AM
I'm out of ideas, something is wrong, but I don't know what :(

RRM, try this, to compile a stock amule (this is, a fresh one from svn) against the new wx libraries.

Then run it using the new library (LD_PRELOAD..)

If that works, then patch to EMSocket is not right.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 20, 2011, 07:22:15 PM
Trying to compile a stock amule against the new wx libraries.

Code: [Select]
$ cd ~/tmp/amule
$ git pull
$ cd ~/tmp/amule
$ ./configure --prefix=/usr/local/stow/amule-stock-wx --enable-debug --enable-optimize --with-wxdebug --with-wx-prefix=/home/rrm/temp-amule/build

$ LD_PRELOAD_PATH=/home/rrm/temp-amule/build/lib /usr/local/stow/amule-stock-wx/bin/amule
Code: [Select]
2011-02-20 18:55:48: amuleAppCommon.cpp(331): Initialising aMule SVN compiled with wxGTK2 v2.8.11 (Debugging) (Snapshot: rev. 10449)
 2011-02-20 18:55:48: amuleAppCommon.cpp(377): Checking if there is an instance already running...
 2011-02-20 18:55:48: amuleAppCommon.cpp(408): No other instances are running.
 2011-02-20 18:55:50: ListenSocket.cpp(65): ListenSocket: Ok.
 2011-02-20 18:55:51: DownloadQueue.cpp(113): Loading temp files from /home/rrm/.aMule/Temp.
 2011-02-20 18:55:51: DownloadQueue.cpp(163): All PartFiles Loaded.

$ LD_PRELOAD_PATH=/home/rrm/temp-amule/build-wo-patch/lib /usr/local/stow/amule-stock-wx/bin/amule
Code: [Select]
2011-02-20 18:57:58: amuleAppCommon.cpp(331): Initialising aMule SVN compiled with wxGTK2 v2.8.11 (Debugging) (Snapshot: rev. 10449)
 2011-02-20 18:57:58: amuleAppCommon.cpp(377): Checking if there is an instance already running...
 2011-02-20 18:57:58: amuleAppCommon.cpp(408): No other instances are running.
 2011-02-20 18:58:00: ListenSocket.cpp(65): ListenSocket: Ok.
 2011-02-20 18:58:00: DownloadQueue.cpp(113): Loading temp files from /home/rrm/.aMule/Temp.
 2011-02-20 18:58:00: DownloadQueue.cpp(163): All PartFiles Loaded.

Both versions keep trying to connect,
and keep on losing connections.

As aMule got installed, i noticed the following lines flashing by:
Code: [Select]
                 from UPnPBase.h:37,
                 from UPnPBase.cpp:34:
/usr/include/upnp/upnpdebug.h:130: warning: unused parameter ‘log_level’
/usr/include/upnp/upnpdebug.h:169: warning: unused parameter ‘ErrFileName’
/usr/include/upnp/upnpdebug.h:169: warning: unused parameter ‘InfoFileName’
/usr/include/upnp/upnpdebug.h:194: warning: unused parameter ‘level’
/usr/include/upnp/upnpdebug.h:194: warning: unused parameter ‘module’
/usr/include/upnp/upnpdebug.h:221: warning: unused parameter ‘DLevel’
/usr/include/upnp/upnpdebug.h:221: warning: unused parameter ‘Module’
/usr/include/upnp/upnpdebug.h:262: warning: unused parameter ‘DLevel’
/usr/include/upnp/upnpdebug.h:262: warning: unused parameter ‘Module’
/usr/include/upnp/upnpdebug.h:262: warning: unused parameter ‘DbgFileName’
/usr/include/upnp/upnpdebug.h:262: warning: unused parameter ‘DbgLineNo’
/usr/include/upnp/upnpdebug.h:262: warning: unused parameter ‘FmtStr’
/usr/include/upnp/upnpdebug.h:293: warning: unused parameter ‘fd’
/usr/include/upnp/upnpdebug.h:293: warning: unused parameter ‘lines’
/usr/include/upnp/upnpdebug.h:293: warning: unused parameter ‘size’
/usr/include/upnp/upnpdebug.h:293: warning: unused parameter ‘starlength’
/usr/include/upnp/upnpdebug.h:321: warning: unused parameter ‘fd’
/usr/include/upnp/upnpdebug.h:321: warning: unused parameter ‘DbgFileName’
/usr/include/upnp/upnpdebug.h:321: warning: unused parameter ‘DbgLineNo’

Dont know if it means something.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 20, 2011, 07:38:57 PM
Now i cannot even compile a normal functioning aMule anymore...
They all keep on losing the connection.

$ cd ~/tmp/amule
$ ./configure --prefix=/usr/local/stow/amule-opt/ --enable-geoip --enable-optimize --enable-debug --with-wxdebug --mandir=/share/bin
$ make clean)
$ make -j 2 && sudo make install

What am i doing wrong?
(the same lines about uPNP as above btw)
Should i remove the new wx?
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: Stu Redman on February 20, 2011, 09:23:18 PM
To keep things easy I'd suggest you build and link the patched wx static.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 21, 2011, 12:44:34 AM
[The Upnp warning is unharmful]

Umm, first of all make sure you are running the correct amule by using the full path.

You may try to use an older snapshot and see what happens.

Maybe the servers went offline? Can you connect to KAD? Can you ping them?

First priority is to find a working version, trying with another snapshot? I hope you didn't install the wx in usr, anyways you should check it.

If you call the new amule as
Code: [Select]
$ /usr/local/stow/amule-opt/bin/amule
what does the log say about the versions? Any more information on connection lost in the log?

Try enabling some Debug options in the settings window. Enabling Servers should help, but enable whatever you may see fit.

If all that fails we may use strace to see what is happening, but better we try other approaches first.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 21, 2011, 07:02:02 PM
To keep things easy I'd suggest you build and link the patched wx static.

You mean as opposed to having to link to it "dynamically" in
$ LD_LIBRARY_PATH=/home/rrm/temp-amule/build/lib ?
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 21, 2011, 07:34:23 PM
make sure you are running the correct amule by using the full path.

If the terminal code says:
"Starting program: /usr/local/stow/amule-opt/bin/amule".
Isnt that proof of what aMule im running?

Quote
Maybe the servers went offline? Can you connect to KAD?

No, the servers did not go offline.
these aMule versions alway connect to KAD, and to various servers,
but then lose that connection again.
Code: [Select]
2011-02-21 18:21:32: amule.cpp(1913): Connected to Kad (firewalled)
2011-02-21 18:26:41: ServerConnect.cpp(201): Connected to eDonkeyServer No2 (212.63.206.35:4242)
2011-02-21 18:21:53: ServerConnect.cpp(353): Lost connection to eDonkeyServer No2 (212.63.206.35:4242)

Quote
First priority is to find a working version, trying with another snapshot?

Sure, how do i download an older version?

Quote
I hope you didn't install the wx in usr, anyways you should check it.

You mean the with and without pacthed wx?
They were installed in temp-amule:
Code: [Select]
$ ./configure --prefix=/home/rrm/temp-amule/build-wo-patch/ --enable-debug --enable-unicode
$ ./configure --prefix=/home/rrm/temp-amule/build/ --enable-debug --enable-unicode

Quote
If you call the new amule as
$ /usr/local/stow/amule-opt/bin/amule
what does the log say about the versions?

It adds a glib warning:
$ /usr/local/stow/amule-opt/bin/amule
Code: [Select]
2011-02-21 18:37:33: amuleAppCommon.cpp(331): Initialising aMule SVN compiled with wxGTK2 v2.8.10 (Debugging) (Snapshot: rev. 10449)
....
(amule:2394): GLib-WARNING **: /build/buildd/glib2.0-2.22.3/glib/giounix.c:406Error while getting flags for FD: Bad file descriptor (9)

Quote
Any more information on connection lost in the log?

No, always just that one line: "2011-02-21 18:34:17: ServerConnect.cpp(412): Connection lost"

Quote
Try enabling some Debug options in the settings window. Enabling Servers should help, but enable whatever you may see fit.

Done.
Every time, before the connection is lost, the log says error in serversocket
2011-02-21 19:20:25: ServerSocket.cpp(655): Servers: Error in serversocket: Master Server 1(83.233.30.55:4500): 7

Quote
If all that fails we may use strace to see what is happening, but better we try other approaches first.

Whatever it takes.
Thank you very much for your help!
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 22, 2011, 01:16:30 AM
make sure you are running the correct amule by using the full path.

If the terminal code says:
"Starting program: /usr/local/stow/amule-opt/bin/amule".
Isnt that proof of what aMule im running?
Yes, it is, just to make sure.

Quote
Quote
Maybe the servers went offline? Can you connect to KAD?

No, the servers did not go offline.
Ok, good to know.

Quote
Quote
First priority is to find a working version, trying with another snapshot?

Sure, how do i download an older version?
You may download whatever version you want using svn.

For instance, to checkout version10429, (should be a good one), go to the amule directory and do a
Code: [Select]
$ svn update -r 10429
This should bring you the version 10429, then compile as always. A make clean may be needed.

Quote
Quote
I hope you didn't install the wx in usr, anyways you should check it.

You mean the with and without pacthed wx?
I mean you didn't a make install with configure run without parameters. Then new wx would be accidentally installed in /usr.
Quote
$ /usr/local/stow/amule-opt/bin/amule
Code: [Select]
2011-02-21 18:37:33: amuleAppCommon.cpp(331): Initialising aMule SVN compiled with wxGTK2 v2.8.10 (Debugging) (Snapshot: rev. 10449)
....
(amule:2394): GLib-WARNING **: /build/buildd/glib2.0-2.22.3/glib/giounix.c:406Error while getting flags for FD: Bad file descriptor (9)

This is really bad. Really really bad you may consider updating your Ubuntu :(

Quote
Every time, before the connection is lost, the log says error in serversocket
2011-02-21 19:20:25: ServerSocket.cpp(655): Servers: Error in serversocket: Master Server 1(83.233.30.55:4500): 7
What the hell causes this?
Quote
Thank you very much for your help!
Thanks to you!
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 22, 2011, 10:05:53 AM
Thank you, Bill

2011-02-22 10:00:16: amuleAppCommon.cpp(331): Initialising aMule SVN compiled with wxGTK2 v2.8.10 (Debugging) (Snapshot: rev. 10429)

NO glib warning ...phew  ::)

But lost connections again, proceeded by:
2011-02-22 10:01:02: ServerSocket.cpp(655): Servers: Error in serversocket: Master Server 1(83.233.30.55:4500): 7
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 22, 2011, 12:46:32 PM
Also:

EncryptedStreamSocket.cpp(441): assert "m_nReceiveBytesWanted > 0" failed in Negotiate().

Code: [Select]
BACKTRACE:
[1] CEncryptedStreamSocket::Negotiate(unsigned char const*, unsigned int) /home/rrm/amule-pre-stu/src/EncryptedStreamSocket.cpp:441
[2] CEncryptedStreamSocket::Read(void*, unsigned int) /home/rrm/amule-pre-stu/src/EncryptedStreamSocket.cpp:303
[3] CEMSocket::OnReceive(int) /home/rrm/amule-pre-stu/src/EMSocket.cpp:238
[4] CServerSocket::OnReceive(wxSocketError) /home/rrm/amule-pre-stu/src/ServerSocket.cpp:212
[5] wxAppConsole::HandleEvent(wxEvtHandler*, void (wxEvtHandler::*)(wxEvent&), wxEvent&) cons)
[6] wxEvtHandler::ProcessEventIfMatches(wxEventTableEntryBase const&, wxEvtHandler*, wxEvent&)
[7] wxEventHashTable::HandleEvent(wxEvent&, wxEvtHandler*)
[8] wxEvtHandler::ProcessEvent(wxEvent&)
[9] wxEvtHandler::ProcessPendingEvents()
[10] wxAppConsole::ProcessPendingEvents()
[11] wxAppBase::ProcessIdle()
[12] g_main_context_dispatch()
[13] g_main_loop_run()
[14] gtk_main()
[15] wxEventLoop::Run()
[16] wxAppBase::MainLoop()

This version is named amule-pre-stu, not because its a pre-stu version,
but because i just used this name (for clarity reasons, i shouldnt have, of course);
its stock svn 10429
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 22, 2011, 01:39:06 PM
Just trying...
removed temp-amule and amule-pre-stu
Temporarily storing all .aMule files in a doc.

$ sudo aptitude purge amule
$ git clone git://repo.or.cz/amule.git
$ cd amule
$ ./configure --prefix=/usr/local/stow/amule-opt/ --enable-geoip --enable-optimize --disable-debug --mandir=/share/bin
$ make -j 2 && sudo make install
$ cd /usr/local/stow
$ sudo stow -D amule-pre-stu
$ sudo stow amule-opt

Starting program: /usr/local/stow/amule-opt/bin/amule
[Thread debugging using libthread_db enabled]
 2011-02-22 13:15:42: Initialising aMule SVN compiled with wxGTK2 v2.8.10 (Snapshot: rev. 10449)

2011-02-22 13:16:29: Connected to Kad (firewalled)
searching for popular file
2011-02-22 13:18:29: Downloading xxxxxxxxxxx
2011-02-22 13:18:55: Connected to Kad (ok)

everything seems fine
Stopping amule to add one file for uploading.
Restarting aMule
Starting program: /usr/local/stow/amule-opt/bin/amule
[Thread debugging using libthread_db enabled]
 2011-02-22 13:26:12: Initialising aMule SVN compiled with wxGTK2 v2.8.10 (Snapshot: rev. 10449)

2011-02-22 13:26:13: Connected to Emule Server No1 with HighID
2011-02-22 13:26:23: Connected to Kad (firewalled)
2011-02-22 13:26:44: Connected to Kad (ok)
accelerating to uploading multiple MBs/s !!!!!!!!!!!!!!
RRM is back!!  :D

Ok, now lets see what caused all the problems.
Maybe something in the .aMule files? (server.met or whatever)
So, i will gradually add them all back in and see what happens.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 22, 2011, 03:05:14 PM
Gradually moved all files back in, and aMule again functions perfectly.
Next step: configure aMule with debug.

Code: [Select]
$ cd ~/tmp/amule
$ git pull
$ ./configure --prefix=/usr/local/stow/amule-dbg/ --enable-geoip --enable-optimize --enable-debug --mandir=/share/bin
$ make -j 2 && sudo make install
$ cd /usr/local/stow
sudo stow -D amule-opt
sudo stow amule-dbg

Functions perfectly fine as well.
Now, let me do the recompiling wx Widgets and recompiling aMule all over again,
and find out whether the same thing happens....
But first the pacthed EMSocket.cpp (amule-pre-stu)
....
wait a second, i think i know what happened:

The first time i patched the EMSocket.cpp, that was in ~/tmp/amule,
so that the next time i compiled a new amule-opt version, i used that same patched cpp;
hence all the connection problems...
And thats why removing tmp/amule fixed my problems...

Ok, lets see:
at ~/tmp/amule/src/EMSocket.cpp
(!m_bBusy
replaced by:
!(m_bBusy
Code: [Select]
$ cd ~/tmp/amule
$ ./configure --prefix=/usr/local/stow/amule-pre-stu/ --enable-geoip --enable-optimize --enable-debug --with-wxdebug --mandir=/share/bin
$ make -j 2 && sudo make install
$ cd /usr/local/stow
sudo stow -D amule-dbg
sudo stow amule-pre-stu

and of course, to prevent more troubles:
!(m_bBusy
replaced by:
(!m_bBusy

Yep!
Loses connections constantly!!
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 22, 2011, 03:43:05 PM
Recompiling wx Widgets

Code: [Select]
$ mkdir temp-amule
$ cd temp-amule
$ wget http://downloads.sourceforge.net/project/wxwindows/2.8.11/wxWidgets-2.8.11.tar.gz
$ tar xvfz wxWidgets-2.8.11.tar.gz
$ cd wxWidgets-2.8.11
$ ./configure --prefix=/home/rrm/temp-amule/build-wo-patch/ --enable-debug --enable-unicode
$ make clean && make install
saved kry.patch in this same folder
$ patch -p0 < kry.patch
$ ./configure --prefix=/home/rrm/temp-amule/build/ --enable-debug --enable-unicode
$ make clean && make install


Reconfigure aMule
Code: [Select]
$ sudo aptitude install subversion
$ svn co http://amule.googlecode.com/svn/trunk amule-pre-stu
$ cd amule-pre-stu
$ sudo aptitude install autoconf automake autopoint
$ ./autogen.sh
Automated patching EMSocket.cpp never worked, so i do that manually again in ~/temp-amule/src/EMSocket.cpp
$ ./configure --prefix=/usr/local/stow/amule-pre-stu --enable-debug --enable-optimize --with-wxdebug --with-wx-prefix=/home/rrm/temp-amule/build
$ make clean
$ make -j 2 && sudo make install

LD_LIBRARY_PATH=/home/rrm/temp-amule/build/lib /usr/local/stow/amule-pre-stu/bin/amule
LD_LIBRARY_PATH=/home/rrm/temp-amule/build-wo-patch/lib /usr/local/stow/amule-pre-stu/bin/amule

And, again, BOTH versions keep losing connections.
Again the 'error in serversocket' thing.
So, back to amule-dbg, accelerating to multiple MBs/s...

Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 22, 2011, 04:11:01 PM
Got to go now, but coming up soon:
Stock svn (unmodified EMSocket.cpp) against the new wx libs.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 22, 2011, 05:44:10 PM
Unpatching:
In ~/temp-amule/src/EMSocket.cpp
!(m_bBusy
replaced by:
(!m_bBusy

Code: [Select]
$ cd amule-pre-stu
$ ./configure --prefix=/usr/local/stow/amule-pre-stu --enable-debug --enable-optimize --with-wxdebug --with-wx-prefix=/home/rrm/temp-amule/build
$ make clean
$ make -j 2 && sudo make install

Running
$ LD_LIBRARY_PATH=/home/rrm/temp-amule/build/lib /usr/local/stow/amule-pre-stu/bin/amule
Running perfectly.
$ LD_LIBRARY_PATH=/home/rrm/temp-amule/build-wo-patch/lib /usr/local/stow/amule-pre-stu/bin/amule
Running perfectly as well.

identity check:
$ LD_LIBRARY_PATH=/home/rrm/temp-amule/build/lib ldd /usr/local/stow/amule-pre-stu/bin/amule
Code: [Select]
linux-gate.so.1 =>  (0x00619000)
libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0x00265000)
libbfd-2.20.so => /usr/lib/libbfd-2.20.so (0x006a6000)
libz.so.1 => /lib/libz.so.1 (0x002b9000)
libcrypto++.so.8 => /usr/lib/libcrypto++.so.8 (0x0077e000)
libupnp.so.3 => /usr/lib/libupnp.so.3 (0x00110000)
libthreadutil.so.2 => /usr/lib/libthreadutil.so.2 (0x00ded000)
libixml.so.2 => /usr/lib/libixml.so.2 (0x00bb8000)
libwx_gtk2ud_adv-2.8.so.0 => /home/rrm/temp-amule/build/lib/libwx_gtk2ud_adv-2.8.so.0 (0x00cea000)
libwx_gtk2ud_core-2.8.so.0 => /home/rrm/temp-amule/build/lib/libwx_gtk2ud_core-2.8.so.0 (0x00df3000)
libwx_baseud_net-2.8.so.0 => /home/rrm/temp-amule/build/lib/libwx_baseud_net-2.8.so.0 (0x0012d000)
libwx_baseud-2.8.so.0 => /home/rrm/temp-amule/build/lib/libwx_baseud-2.8.so.0 (0x002cf000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00167000)
libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0x0027e000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x0049b000)
libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0x004b9000)
/lib/ld-linux.so.2 (0x00c81000)
libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0x00259000)
libgtk-x11-2.0.so.0 => /usr/lib/libgtk-x11-2.0.so.0 (0x05d63000)
libgdk-x11-2.0.so.0 => /usr/lib/libgdk-x11-2.0.so.0 (0x00bc2000)
libatk-1.0.so.0 => /usr/lib/libatk-1.0.so.0 (0x0061a000)
libpangoft2-1.0.so.0 => /usr/lib/libpangoft2-1.0.so.0 (0x00637000)
libgdk_pixbuf-2.0.so.0 => /usr/lib/libgdk_pixbuf-2.0.so.0 (0x005fe000)
libgio-2.0.so.0 => /usr/lib/libgio-2.0.so.0 (0x09145000)
libpango-1.0.so.0 => /usr/lib/libpango-1.0.so.0 (0x00b6e000)
libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x01ee6000)
libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0x00660000)
libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0x00c9e000)
libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0x0025d000)
libgthread-2.0.so.0 => /usr/lib/libgthread-2.0.so.0 (0x002a4000)
librt.so.1 => /lib/tls/i686/cmov/librt.so.1 (0x002aa000)
libglib-2.0.so.0 => /lib/libglib-2.0.so.0 (0x04f9c000)
libXinerama.so.1 => /usr/lib/libXinerama.so.1 (0x00262000)
libSM.so.6 => /usr/lib/libSM.so.6 (0x0068d000)
libpng12.so.0 => /usr/lib/libpng12.so.0 (0x00c57000)
libjpeg.so.62 => /usr/lib/libjpeg.so.62 (0x03e77000)
libtiff.so.4 => /usr/lib/libtiff.so.4 (0x02c39000)
libpangocairo-1.0.so.0 => /usr/lib/libpangocairo-1.0.so.0 (0x00696000)
libX11.so.6 => /usr/lib/libX11.so.6 (0x01662000)
libXcomposite.so.1 => /usr/lib/libXcomposite.so.1 (0x002b3000)
libXdamage.so.1 => /usr/lib/libXdamage.so.1 (0x006a3000)
libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0x00cdc000)
libcairo.so.2 => /usr/lib/libcairo.so.2 (0x01e00000)
libXext.so.6 => /usr/lib/libXext.so.6 (0x00ddc000)
libXrender.so.1 => /usr/lib/libXrender.so.1 (0x0682a000)
libXi.so.6 => /usr/lib/libXi.so.6 (0x04840000)
libXrandr.so.2 => /usr/lib/libXrandr.so.2 (0x03ecc000)
libXcursor.so.1 => /usr/lib/libXcursor.so.1 (0x073c2000)
libpcre.so.3 => /lib/libpcre.so.3 (0x06430000)
libresolv.so.2 => /lib/tls/i686/cmov/libresolv.so.2 (0x042fa000)
libselinux.so.1 => /lib/libselinux.so.1 (0x02f43000)
libexpat.so.1 => /lib/libexpat.so.1 (0x07fa8000)
libICE.so.6 => /usr/lib/libICE.so.6 (0x04af5000)
libuuid.so.1 => /lib/libuuid.so.1 (0x00c7c000)
libxcb.so.1 => /usr/lib/libxcb.so.1 (0x0649b000)
libpixman-1.so.0 => /usr/lib/libpixman-1.so.0 (0x04bd3000)
libdirectfb-1.2.so.0 => /usr/lib/libdirectfb-1.2.so.0 (0x06284000)
libfusion-1.2.so.0 => /usr/lib/libfusion-1.2.so.0 (0x01d97000)
libdirect-1.2.so.0 => /usr/lib/libdirect-1.2.so.0 (0x03d4f000)
libxcb-render-util.so.0 => /usr/lib/libxcb-render-util.so.0 (0x00ce2000)
libxcb-render.so.0 => /usr/lib/libxcb-render.so.0 (0x015ae000)
libXau.so.6 => /usr/lib/libXau.so.6 (0x073f9000)
libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x01209000)
$ LD_LIBRARY_PATH=/home/rrm/temp-amule/build-wo-patch/lib ldd /usr/local/stow/amule-pre-stu/bin/amule
Code: [Select]
linux-gate.so.1 =>  (0x00f05000)
libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0x0037e000)
libbfd-2.20.so => /usr/lib/libbfd-2.20.so (0x00c41000)
libz.so.1 => /lib/libz.so.1 (0x0062c000)
libcrypto++.so.8 => /usr/lib/libcrypto++.so.8 (0x00779000)
libupnp.so.3 => /usr/lib/libupnp.so.3 (0x00110000)
libthreadutil.so.2 => /usr/lib/libthreadutil.so.2 (0x00e7e000)
libixml.so.2 => /usr/lib/libixml.so.2 (0x0012d000)
libwx_gtk2ud_adv-2.8.so.0 => /home/rrm/temp-amule/build-wo-patch/lib/libwx_gtk2ud_adv-2.8.so.0 (0x00137000)
libwx_gtk2ud_core-2.8.so.0 => /home/rrm/temp-amule/build-wo-patch/lib/libwx_gtk2ud_core-2.8.so.0 (0x00f06000)
libwx_baseud_net-2.8.so.0 => /home/rrm/temp-amule/build-wo-patch/lib/libwx_baseud_net-2.8.so.0 (0x00229000)
libwx_baseud-2.8.so.0 => /home/rrm/temp-amule/build-wo-patch/lib/libwx_baseud-2.8.so.0 (0x00397000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00263000)
libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0x00355000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00d82000)
libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0x04861000)
/lib/ld-linux.so.2 (0x00d24000)
libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0x00563000)
libgtk-x11-2.0.so.0 => /usr/lib/libgtk-x11-2.0.so.0 (0x0414f000)
libgdk-x11-2.0.so.0 => /usr/lib/libgdk-x11-2.0.so.0 (0x00567000)
libatk-1.0.so.0 => /usr/lib/libatk-1.0.so.0 (0x005fc000)
libpangoft2-1.0.so.0 => /usr/lib/libpangoft2-1.0.so.0 (0x00642000)
libgdk_pixbuf-2.0.so.0 => /usr/lib/libgdk_pixbuf-2.0.so.0 (0x0066b000)
libgio-2.0.so.0 => /usr/lib/libgio-2.0.so.0 (0x00685000)
libpango-1.0.so.0 => /usr/lib/libpango-1.0.so.0 (0x0071b000)
libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x00b69000)
libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0x00bde000)
libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0x00d41000)
libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0x00619000)
libgthread-2.0.so.0 => /usr/lib/libgthread-2.0.so.0 (0x00c0e000)
librt.so.1 => /lib/tls/i686/cmov/librt.so.1 (0x0061e000)
libglib-2.0.so.0 => /lib/libglib-2.0.so.0 (0x00da0000)
libXinerama.so.1 => /usr/lib/libXinerama.so.1 (0x0037b000)
libSM.so.6 => /usr/lib/libSM.so.6 (0x00763000)
libpng12.so.0 => /usr/lib/libpng12.so.0 (0x00c14000)
libjpeg.so.62 => /usr/lib/libjpeg.so.62 (0x00e57000)
libtiff.so.4 => /usr/lib/libtiff.so.4 (0x00e84000)
libpangocairo-1.0.so.0 => /usr/lib/libpangocairo-1.0.so.0 (0x0076c000)
libX11.so.6 => /usr/lib/libX11.so.6 (0x08a42000)
libXcomposite.so.1 => /usr/lib/libXcomposite.so.1 (0x00627000)
libXdamage.so.1 => /usr/lib/libXdamage.so.1 (0x00c0b000)
libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0x00c39000)
libcairo.so.2 => /usr/lib/libcairo.so.2 (0x0131b000)
libXext.so.6 => /usr/lib/libXext.so.6 (0x00ed9000)
libXrender.so.1 => /usr/lib/libXrender.so.1 (0x00d19000)
libXi.so.6 => /usr/lib/libXi.so.6 (0x00ee9000)
libXrandr.so.2 => /usr/lib/libXrandr.so.2 (0x00ef4000)
libXcursor.so.1 => /usr/lib/libXcursor.so.1 (0x05afa000)
libpcre.so.3 => /lib/libpcre.so.3 (0x01395000)
libresolv.so.2 => /lib/tls/i686/cmov/libresolv.so.2 (0x08006000)
libselinux.so.1 => /lib/libselinux.so.1 (0x0550c000)
libexpat.so.1 => /lib/libexpat.so.1 (0x02e7c000)
libICE.so.6 => /usr/lib/libICE.so.6 (0x017cd000)
libuuid.so.1 => /lib/libuuid.so.1 (0x00efd000)
libxcb.so.1 => /usr/lib/libxcb.so.1 (0x058a2000)
libpixman-1.so.0 => /usr/lib/libpixman-1.so.0 (0x02c20000)
libdirectfb-1.2.so.0 => /usr/lib/libdirectfb-1.2.so.0 (0x0567f000)
libfusion-1.2.so.0 => /usr/lib/libfusion-1.2.so.0 (0x0867d000)
libdirect-1.2.so.0 => /usr/lib/libdirect-1.2.so.0 (0x07f7e000)
libxcb-render-util.so.0 => /usr/lib/libxcb-render-util.so.0 (0x06bd0000)
libxcb-render.so.0 => /usr/lib/libxcb-render.so.0 (0x07bf0000)
libXau.so.6 => /usr/lib/libXau.so.6 (0x055bb000)
libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x07eec000)


Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 22, 2011, 08:01:15 PM
Well I'm stupid, note the patch:

Code: [Select]
-  if (byConnected == ES_CONNECTED && IsEncryptionLayerReady() && !(m_bBusy && onlyAllowedToSendControlPacket)) {
+  if(byConnected == ES_CONNECTED && IsEncryptionLayerReady() && (!m_bBusy || onlyAllowedToSendControlPacket)) {

First line is the original emule code, second line is the current one.

RRM, you have to change the ! placement and the || operator to &&. The line should be
Code: [Select]
if (byConnected == ES_CONNECTED && IsEncryptionLayerReady() && !(m_bBusy && onlyAllowedToSendControlPacket)) {

With the ! operator outside and the && operator inside.

No wonder amule couldn't connect. Now just build amule like you did and test with the two libraries.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 22, 2011, 09:04:31 PM
ha ha  :) ok.

Im now giving the version (with re-patched EMSocket.cpp) with wx patch a preliminary try.
It seems to run fine (its connecting and accelerating fast).

$ LD_LIBRARY_PATH=/home/rrm/temp-amule/build/lib ldd /usr/local/stow/amule-pre-stu/bin/amule
Code: [Select]
linux-gate.so.1 =>  (0x00ead000)
libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0x0069f000)
libbfd-2.20.so => /usr/lib/libbfd-2.20.so (0x00110000)
libz.so.1 => /lib/libz.so.1 (0x00bea000)
libcrypto++.so.8 => /usr/lib/libcrypto++.so.8 (0x001e8000)
libupnp.so.3 => /usr/lib/libupnp.so.3 (0x009fe000)
libthreadutil.so.2 => /usr/lib/libthreadutil.so.2 (0x005d8000)
libixml.so.2 => /usr/lib/libixml.so.2 (0x005de000)
libwx_gtk2ud_adv-2.8.so.0 => /home/rrm/temp-amule/build/lib/libwx_gtk2ud_adv-2.8.so.0 (0x00731000)
libwx_gtk2ud_core-2.8.so.0 => /home/rrm/temp-amule/build/lib/libwx_gtk2ud_core-2.8.so.0 (0x00eae000)
libwx_baseud_net-2.8.so.0 => /home/rrm/temp-amule/build/lib/libwx_baseud_net-2.8.so.0 (0x00da9000)
libwx_baseud-2.8.so.0 => /home/rrm/temp-amule/build/lib/libwx_baseud-2.8.so.0 (0x00823000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00a1b000)
libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0x00b2b000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x005e8000)
libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0x00c00000)
/lib/ld-linux.so.2 (0x00714000)
libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0x00606000)
libgtk-x11-2.0.so.0 => /usr/lib/libgtk-x11-2.0.so.0 (0x04254000)
libgdk-x11-2.0.so.0 => /usr/lib/libgdk-x11-2.0.so.0 (0x0060a000)
libatk-1.0.so.0 => /usr/lib/libatk-1.0.so.0 (0x006b8000)
libpangoft2-1.0.so.0 => /usr/lib/libpangoft2-1.0.so.0 (0x006d5000)
libgdk_pixbuf-2.0.so.0 => /usr/lib/libgdk_pixbuf-2.0.so.0 (0x00b0d000)
libgio-2.0.so.0 => /usr/lib/libgio-2.0.so.0 (0x00b51000)
libpango-1.0.so.0 => /usr/lib/libpango-1.0.so.0 (0x00d45000)
libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x00de3000)
libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0x00e58000)
libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0x01785000)
libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0x006fe000)
libgthread-2.0.so.0 => /usr/lib/libgthread-2.0.so.0 (0x00703000)
librt.so.1 => /lib/tls/i686/cmov/librt.so.1 (0x00709000)
libglib-2.0.so.0 => /lib/libglib-2.0.so.0 (0x0314d000)
libXinerama.so.1 => /usr/lib/libXinerama.so.1 (0x009ef000)
libSM.so.6 => /usr/lib/libSM.so.6 (0x009f2000)
libpng12.so.0 => /usr/lib/libpng12.so.0 (0x00e85000)
libjpeg.so.62 => /usr/lib/libjpeg.so.62 (0x02301000)
libtiff.so.4 => /usr/lib/libtiff.so.4 (0x09eef000)
libpangocairo-1.0.so.0 => /usr/lib/libpangocairo-1.0.so.0 (0x00d8d000)
libX11.so.6 => /usr/lib/libX11.so.6 (0x02dbd000)
libXcomposite.so.1 => /usr/lib/libXcomposite.so.1 (0x00b27000)
libXdamage.so.1 => /usr/lib/libXdamage.so.1 (0x009fb000)
libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0x00d9a000)
libcairo.so.2 => /usr/lib/libcairo.so.2 (0x03002000)
libXext.so.6 => /usr/lib/libXext.so.6 (0x07f5a000)
libXrender.so.1 => /usr/lib/libXrender.so.1 (0x07340000)
libXi.so.6 => /usr/lib/libXi.so.6 (0x050d5000)
libXrandr.so.2 => /usr/lib/libXrandr.so.2 (0x00da0000)
libXcursor.so.1 => /usr/lib/libXcursor.so.1 (0x038fc000)
libpcre.so.3 => /lib/libpcre.so.3 (0x01b65000)
libresolv.so.2 => /lib/tls/i686/cmov/libresolv.so.2 (0x0288b000)
libselinux.so.1 => /lib/libselinux.so.1 (0x023ad000)
libexpat.so.1 => /lib/libexpat.so.1 (0x0900d000)
libICE.so.6 => /usr/lib/libICE.so.6 (0x068cd000)
libuuid.so.1 => /lib/libuuid.so.1 (0x016e5000)
libxcb.so.1 => /usr/lib/libxcb.so.1 (0x088cd000)
libpixman-1.so.0 => /usr/lib/libpixman-1.so.0 (0x048fa000)
libdirectfb-1.2.so.0 => /usr/lib/libdirectfb-1.2.so.0 (0x012c4000)
libfusion-1.2.so.0 => /usr/lib/libfusion-1.2.so.0 (0x0133e000)
libdirect-1.2.so.0 => /usr/lib/libdirect-1.2.so.0 (0x05d64000)
libxcb-render-util.so.0 => /usr/lib/libxcb-render-util.so.0 (0x068ae000)
libxcb-render.so.0 => /usr/lib/libxcb-render.so.0 (0x07b29000)
libXau.so.6 => /usr/lib/libXau.so.6 (0x0949a000)
libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x01348000)

Now im giving the non-wx patched version a serious try first.
LD_LIBRARY_PATH=/home/rrm/temp-amule/build-wo-patch/lib ldd /usr/local/stow/amule-pre-stu/bin/amule
Code: [Select]
linux-gate.so.1 =>  (0x004d1000)
libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0x00ab8000)
libbfd-2.20.so => /usr/lib/libbfd-2.20.so (0x00110000)
libz.so.1 => /lib/libz.so.1 (0x00ebe000)
libcrypto++.so.8 => /usr/lib/libcrypto++.so.8 (0x0058f000)
libupnp.so.3 => /usr/lib/libupnp.so.3 (0x001e8000)
libthreadutil.so.2 => /usr/lib/libthreadutil.so.2 (0x00a45000)
libixml.so.2 => /usr/lib/libixml.so.2 (0x00236000)
libwx_gtk2ud_adv-2.8.so.0 => /home/rrm/temp-amule/build-wo-patch/lib/libwx_gtk2ud_adv-2.8.so.0 (0x00240000)
libwx_gtk2ud_core-2.8.so.0 => /home/rrm/temp-amule/build-wo-patch/lib/libwx_gtk2ud_core-2.8.so.0 (0x00ed4000)
libwx_baseud_net-2.8.so.0 => /home/rrm/temp-amule/build-wo-patch/lib/libwx_baseud_net-2.8.so.0 (0x00c7f000)
libwx_baseud-2.8.so.0 => /home/rrm/temp-amule/build-wo-patch/lib/libwx_baseud-2.8.so.0 (0x00cb9000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00332000)
libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0x00205000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00c16000)
libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0x00ad1000)
/lib/ld-linux.so.2 (0x00572000)
libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0x0022b000)
libgtk-x11-2.0.so.0 => /usr/lib/libgtk-x11-2.0.so.0 (0x065be000)
libgdk-x11-2.0.so.0 => /usr/lib/libgdk-x11-2.0.so.0 (0x00424000)
libatk-1.0.so.0 => /usr/lib/libatk-1.0.so.0 (0x004d2000)
libpangoft2-1.0.so.0 => /usr/lib/libpangoft2-1.0.so.0 (0x004ef000)
libgdk_pixbuf-2.0.so.0 => /usr/lib/libgdk_pixbuf-2.0.so.0 (0x00518000)
libgio-2.0.so.0 => /usr/lib/libgio-2.0.so.0 (0x0097f000)
libpango-1.0.so.0 => /usr/lib/libpango-1.0.so.0 (0x00a4b000)
libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x04ce1000)
libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0x00532000)
libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0x00c34000)
libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0x0022f000)
libgthread-2.0.so.0 => /usr/lib/libgthread-2.0.so.0 (0x004b9000)
librt.so.1 => /lib/tls/i686/cmov/librt.so.1 (0x004bf000)
libglib-2.0.so.0 => /lib/libglib-2.0.so.0 (0x0a22d000)
libXinerama.so.1 => /usr/lib/libXinerama.so.1 (0x004c8000)
libSM.so.6 => /usr/lib/libSM.so.6 (0x0055f000)
libpng12.so.0 => /usr/lib/libpng12.so.0 (0x00a15000)
libjpeg.so.62 => /usr/lib/libjpeg.so.62 (0x00a93000)
libtiff.so.4 => /usr/lib/libtiff.so.4 (0x012e9000)
libpangocairo-1.0.so.0 => /usr/lib/libpangocairo-1.0.so.0 (0x00c72000)
libX11.so.6 => /usr/lib/libX11.so.6 (0x06a13000)
libXcomposite.so.1 => /usr/lib/libXcomposite.so.1 (0x004cb000)
libXdamage.so.1 => /usr/lib/libXdamage.so.1 (0x00568000)
libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0x0056b000)
libcairo.so.2 => /usr/lib/libcairo.so.2 (0x0904e000)
libXext.so.6 => /usr/lib/libXext.so.6 (0x00e85000)
libXrender.so.1 => /usr/lib/libXrender.so.1 (0x00a3a000)
libXi.so.6 => /usr/lib/libXi.so.6 (0x00e95000)
libXrandr.so.2 => /usr/lib/libXrandr.so.2 (0x00ea0000)
libXcursor.so.1 => /usr/lib/libXcursor.so.1 (0x00ea9000)
libpcre.so.3 => /lib/libpcre.so.3 (0x05702000)
libresolv.so.2 => /lib/tls/i686/cmov/libresolv.so.2 (0x087ce000)
libselinux.so.1 => /lib/libselinux.so.1 (0x036d4000)
libexpat.so.1 => /lib/libexpat.so.1 (0x09d1f000)
libICE.so.6 => /usr/lib/libICE.so.6 (0x02827000)
libuuid.so.1 => /lib/libuuid.so.1 (0x00eb4000)
libxcb.so.1 => /usr/lib/libxcb.so.1 (0x0790e000)
libpixman-1.so.0 => /usr/lib/libpixman-1.so.0 (0x096f5000)
libdirectfb-1.2.so.0 => /usr/lib/libdirectfb-1.2.so.0 (0x038a5000)
libfusion-1.2.so.0 => /usr/lib/libfusion-1.2.so.0 (0x0979b000)
libdirect-1.2.so.0 => /usr/lib/libdirect-1.2.so.0 (0x02b3d000)
libxcb-render-util.so.0 => /usr/lib/libxcb-render-util.so.0 (0x00eb9000)
libxcb-render.so.0 => /usr/lib/libxcb-render.so.0 (0x01906000)
libXau.so.6 => /usr/lib/libXau.so.6 (0x0743b000)
libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x02284000)




Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 22, 2011, 09:10:42 PM
Im now giving the version (with re-patched EMSocket.cpp) with wx patch a preliminary try.
It seems to run fine (its connecting and accelerating fast).
...
Now im giving the non-wx patched version a serious try first.
Ok fine, we are back to the original plan. Let's see what happens. You are now trying the version with 0 of the 2 possible patches so it should crash ;)

Sorry for my brainfade, you lost some valuable time.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 22, 2011, 09:46:42 PM
No loss at all,
I got another lesson in this stuff that i know so little about,
and now ive learned a little bit more.
Im already very proud of myself that i got to understand where i had screwed up
(by not undoing the EMSocket.cpp patch in ~tmp/amule before configuring again),
and that i was able to get back on track.
So, thank you for sticking by!
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 23, 2011, 09:44:02 AM
As expected, the unpatched pre-Stu version crashed within an hour (no gdb, no backtrace).
Code: [Select]
Terminated after throwing an instance of 'std::bad_alloc'
what(): std::bad_alloc

The pre-Stu version with Kry's wx patch has since been running smoothly all night.
Dont know if it means anything, but the log says:
Code: [Select]
2011-02-23 03:02:46: amuleDlg.cpp(1226): Skin directory '- default -' does not exist
And when i change from one tab to another, it has the same slow feel as with high memory consumption,
even though that is not the case...

$ ps axl | grep amule
Code: [Select]
0  1000 16456  8064  20   0 174088 119996 sync_p Dl+ pts/1    412:38 /usr/local/stow/amule-pre-stu/bin/amule
0  1000 17537  8610  20   0   3044   768 sync_b D+   pts/0      0:00 grep amule
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 23, 2011, 05:10:32 PM
As expected, the unpatched pre-Stu version crashed within an hour (no gdb, no backtrace).
Code: [Select]
Terminated after throwing an instance of 'std::bad_alloc'
what(): std::bad_alloc
That means no more memory left.
Quote
The pre-Stu version with Kry's wx patch has since been running smoothly all night.
Dont know if it means anything, but the log says:
Code: [Select]
2011-02-23 03:02:46: amuleDlg.cpp(1226): Skin directory '- default -' does not exist
Not important.
Quote
And when i change from one tab to another, it has the same slow feel as with high memory consumption,
even though that is not the case...

$ ps axl | grep amule
Code: [Select]
0  1000 16456  8064  20   0 174088 119996 sync_p Dl+ pts/1    412:38 /usr/local/stow/amule-pre-stu/bin/amule
0  1000 17537  8610  20   0   3044   768 sync_b D+   pts/0      0:00 grep amule
Good to know, it seems we have really nailed down the cause of your bug, a bug in wx.

The slusginess you've been witnessing was normal for me when I had such huge loads. Is amule more responsive with the STU patch? Anyways I'm not qualified to judge patch's correctness.

Profiling amule and some optimization is really needed, unfortunately this is no easy task,  but once we iron out most of the bugs we could concentrate on that.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 23, 2011, 06:08:56 PM
$ ps axl | grep amule
Code: [Select]
0  1000 16456  8064  20   0 174088 119996 sync_p Dl+ pts/1    412:38 /usr/local/stow/amule-pre-stu/bin/amule
0  1000 16456  8064  20   0 188136 127116 futex_ Sl+ pts/1    643:26 /usr/local/stow/amule-pre-stu/bin/amule
0  1000 16456  8064  20   0 197100 135972 -     Rl+  pts/1    746:32 /usr/local/stow/amule-pre-stu/bin/amule
0  1000 16456  8064  20   0 202016 141092 -     Rl+  pts/1    899:41 /usr/local/stow/amule-pre-stu/bin/amule
0  1000 16456  8064  20   0 218064 146304 -     Rl+  pts/1    1005:59 /usr/local/stow/amule-pre-stu/bin/amule

Still perfectly normal, even though manouvering between tabs gets increasingly slower

Quote
Is amule more responsive with the STU patch?

Yes, with Stu's patch there was no delay whatsoever.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 23, 2011, 08:13:28 PM

Still perfectly normal, even though manouvering between tabs gets increasingly slower

Quote
Is amule more responsive with the STU patch?

Yes, with Stu's patch there was no delay whatsoever.
Well, it is obvious that STU's patch reduces the load (so this particular bug was triggered, for example)

The question is if you notice any difference from STU patch not only in responsiveness, but in queue size, maximum speeds, number of clientes, etc...
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 23, 2011, 09:34:47 PM
Quote
The question is if you notice any difference from STU patch not only in responsiveness, but in queue size, maximum speeds, number of clientes, etc...

No difference, but that is because i limit that myself, indirectly.
Let me explain:
Im selecting a 1080p file, to which i add DTS/AC3 in about 6 more languages plus >20 subtitles (in a MKV),
and then start distributing (uploading).
As long as the file is not getting too much popular, i keep uploading.
If, however one of the files is becoming too much popular (which also means there are sufficient people
who have the complete file and are uploading too, so that they will 'keep the file alive'),
thats when i delete the file.
This way im controlling the number of clients and average upload speed.
There never is a queue; everybody who is downloading, does so continuously.
The only thing i do not control, is total uploadcapacity, but that one is fixed by the ISP (about 3 MB/s).
 
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 23, 2011, 10:47:04 PM
Aha, I remember. So you are always uploading to maximum speed.

I understand that both versions reach a similar number of simultaneous upload clients, isn't it?

If they get the same number of active uploads then we should understand why the patch performs better, but could be the case that the patch limits the number of simultaneous uploads and I suspect 30 uploads at 100Kb/s are much less load to amule than 3000 at 1Kbp/s.

Anyways 3Mb/s of upload is too little for testing STU patch full effects, we'd need something closed to LAN speeds.

Thanks a lot RRM. so far this crasher should be solved, what to do about the mule's patch I don't know, what does STU think?

Performance issues should go to a new thread and I suspect that optimizing amule may be hard :)
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 24, 2011, 06:42:30 AM
Quote
it seems we have really nailed down the cause of your bug, a bug in wx.

Maybe not...
There was a reason why 'the feel' of this mule was not right:
the mule has crashed...

(amule:16456): GLib-CRITICAL **: g_source_remove: assertion `tag > 0' failed

----------------------------=| BACKTRACE FOLLOWS: |=----------------------------
Current version is: aMule SVN compiled with wxGTK2 v2.8.11 (Debugging) (Snapshot: rev. 10454)
Running on: Linux 2.6.31-22-generic i686

[2] fprintf in stdio2.h:99
[3] wxFatalSignalHandler in /home/rrm/temp-amule/build/lib/libwx_baseud-2.8.so.0[0xcc7ddd]
[4] ?? in [0x905400]
[5] ?? in /home/rrm/temp-amule/build/lib/libwx_gtk2ud_core-2.8.so.0 [0x10dd07a]
[6] ?? in /usr/lib/libgdk-x11-2.0.so.0 [0x6b2f7c]
[7] ?? in /lib/libglib-2.0.so.0 [0x1634dab]
[8] g_main_context_dispatch in /lib/libglib-2.0.so.0[0x15fde88]
[9] ?? in /lib/libglib-2.0.so.0 [0x1601730]
[10] g_main_loop_run in /lib/libglib-2.0.so.0[0x1601b9f]
[11] gtk_main in /usr/lib/libgtk-x11-2.0.so.0[0x914e419]
[12] wxEventLoop::Run() in /home/rrm/temp-amule/build/lib/libwx_gtk2ud_core-2.8.so.0[0x10db089]
[13] wxAppBase::MainLoop() in /home/rrm/temp-amule/build/lib/libwx_gtk2ud_core-2.8.so.0[0x117cc53]
[14] wxAppBase::OnRun() in /home/rrm/temp-amule/build/lib/libwx_gtk2ud_core-2.8.so.0[0x117cdb3]
[15] wxEntry(int&, wchar_t**) in /home/rrm/temp-amule/build/lib/libwx_baseud-2.8.so.0[0xc51224]
[16] wxEntry(int&, char**) in /home/rrm/temp-amule/build/lib/libwx_baseud-2.8.so.0[0xc512ea]
[17] main in amule-gui.cpp:93
[18] __libc_start_main in /lib/tls/i686/cmov/libc.so.6[0xd7ab56]
[19] _start in start.S:122


--------------------------------------------------------------------------------
Aborted

So, how to link this mule to the libs statically, so that we can start it using gdb
and get a good backtrace?
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 24, 2011, 02:27:04 PM
Umm, no need. to link it statically.

Just run it under gdb:

Code: [Select]
$ LD_LIBRARY_PATH=/home/rrm/...  gdb amule

If you get a backtrace be sure to post the command line.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 24, 2011, 04:14:33 PM
Thank you.

$ LD_LIBRARY_PATH=/home/rrm/temp-amule/build/lib gdb amule
Starting program: /usr/local/stow/amule-pre-stu/bin/amule
2011-02-24 16:09:48: amuleAppCommon.cpp(331): Initialising aMule SVN compiled with wxGTK2 v2.8.11 (Debugging) (Snapshot: rev. 10454)


Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 25, 2011, 06:37:55 PM
Its a high VSZ crash.

$ LD_LIBRARY_PATH=/home/rrm/temp-amule/build/lib gdb amule
/usr/local/stow/amule-pre-stu/bin/amule
aMule SVN compiled with wxGTK2 v2.8.11 (Debugging) (Snapshot: rev. 10454)

Terminated after throwing an instance of 'std::bad_alloc'
   what(): std::bad_alloc

Program received signal SIGABRT, Aborted.
0x0012d422 in __kernel_vsyscall ()

$ ps axl | grep amule
Code: [Select]
0  1000  2261  2229  20   0 122032  5452 poll_s S+   pts/1      0:02 gdb amule
0  1000  2263  2261  20   0 3144728 2648796 ptrace Tl pts/1   1612:56 /usr/local/stow/amule-pre-stu/bin/amule

(gdb) bt full
Code: [Select]
#0  0x0012d422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x00ec04d1 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0x00ec3932 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0x08340ead in OnUnhandledException () at MuleDebug.cpp:104
        t = 0x0
        output = 0xfd7560
#4  0x00e1a415 in ?? () from /usr/lib/libstdc++.so.6
No symbol table info available.
#5  0x00e1a452 in std::terminate() () from /usr/lib/libstdc++.so.6
No symbol table info available.
#6  0x00e1a591 in __cxa_throw () from /usr/lib/libstdc++.so.6
No symbol table info available.
#7  0x00e1ac0f in operator new(unsigned int) () from /usr/lib/libstdc++.so.6
No symbol table info available.
#8  0x00b8068c in wxSocketEvent::Clone (this=0xbfffefd0)
    at ./include/wx/socket.h:314
No locals.
#9  0x00cbd702 in wxEvtHandler::AddPendingEvent (this=0x85fd340, event=...)
    at ./src/common/event.cpp:1135
        eventCopy = 0xb80608
---Type <return> to continue, or q <return> to quit---
        __FUNCTION__ = "AddPendingEvent"
#10 0x00b7ed4a in wxSocketBase::OnRequest (this=0x9f84578,
    notification=wxSOCKET_OUTPUT) at ./src/common/socket.cpp:1006
        event = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x85f6368,
              static ms_classInfo = {m_className = 0xcf5a48 L"wxObject",
                m_objectSize = 8, m_objectConstructor = 0, m_baseInfo1 = 0x0,
                m_baseInfo2 = 0x0, static sm_first = 0x741dcc,
                m_next = 0xd5e724, static sm_classTable = 0x8603008},
              m_refData = 0x0}, m_eventObject = 0x9f84578,
            m_eventType = 10002, m_timeStamp = 0, m_id = 6123,
            m_callbackUserData = 0x0, m_propagationLevel = 0,
            m_skipped = false, m_isCommandEvent = false,
            static ms_classInfo = {m_className = 0xd0cd00 L"wxEvent",
              m_objectSize = 36, m_objectConstructor = 0,
              m_baseInfo1 = 0xd5e6b8, m_baseInfo2 = 0x0,
              static sm_first = 0x741dcc, m_next = 0xd5f788,
              static sm_classTable = 0x8603008}}, m_event = wxSOCKET_OUTPUT,
          m_clientData = 0x0, static ms_classInfo = {
            m_className = 0xb890dc L"wxSocketEvent", m_objectSize = 44,
            m_objectConstructor = 0xb7d132 <wxSocketEvent::wxCreateObject()>,
            m_baseInfo1 = 0xd5f7a0, m_baseInfo2 = 0x0,
            static sm_first = 0x741dcc, m_next = 0xb93b8c,
            static sm_classTable = 0x8603008}}
---Type <return> to continue, or q <return> to quit---
        flag = 2
#11 0x00b7eb7e in wx_socket_callback (notification=GSOCK_OUTPUT,
    cdata=0x9f84578 "h\023A\b") at ./src/common/socket.cpp:942
        sckobj = 0x9f84578
#12 0x00b850cb in GSocket::Detected_Write (this=0xc1b2ea8)
    at ./src/unix/gsocket.cpp:1851
No locals.
#13 0x008c3084 in _GSocket_GDK_Input (data=0xc1b2ea8, source=70,
    condition=GDK_INPUT_WRITE) at ./src/gtk/gsockgtk.cpp:41
        socket = 0xc1b2ea8
#14 0x013bcf7c in ?? () from /usr/lib/libgdk-x11-2.0.so.0
No symbol table info available.
#15 0x016d6dab in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#16 0x0169fe88 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
No symbol table info available.
#17 0x016a3730 in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#18 0x016a3b9f in g_main_loop_run () from /lib/libglib-2.0.so.0
No symbol table info available.
#19 0x01116419 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#20 0x008c1089 in wxEventLoop::Run (this=0x8d80660) at ./src/gtk/evtloop.cpp:76
---Type <return> to continue, or q <return> to quit---
        __FUNCTION__ = "Run"
        activate = {m_evtLoopOld = 0x0}
        exitcode = -1073745096
#21 0x00962c53 in wxAppBase::MainLoop (this=0x8633028)
    at ./src/common/appcmn.cpp:312
        mainLoop = {<wxEventLoopPtr> = {m_ptr = 0x8d80660}, m_pp = 0x8633068,
          m_pOld = 0x0}
#22 0x00962db3 in wxAppBase::OnRun (this=0x8633028)
    at ./src/common/appcmn.cpp:367
No locals.
#23 0x00c4d224 in wxEntry (argc=@0xd5d528, argv=0x8622888)
    at ./src/common/init.cpp:448
        callOnExit = {<No data fields>}
        initializer = {m_ok = true}
#24 0x00c4d2ea in wxEntry (argc=@0xbffff420, argv=0xbffff4c4)
    at ./src/common/init.cpp:460
No locals.
#25 0x0823dc9b in main (argc=1, argv=0xbffff4c4) at amule-gui.cpp:93
No locals.

(gdb) thread apply all bt full
Code: [Select]

Thread 6 (Thread 0xb63fdb70 (LWP 2280)):
#0  0x0012d422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x00138142 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
   from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0x00cb8973 in wxConditionInternal::WaitTimeout (this=0x8d40318,
    milliseconds=100) at ./src/unix/threadpsx.cpp:405
        curtime = {m_ll = 1298646596106}
        temp = {m_ll = 106}
        sec = 1298646596
        millis = 106
        tspec = {tv_sec = 1298646596, tv_nsec = 106000000}
        err = 302
#3  0x00cbb91f in wxCondition::WaitTimeout (this=0x8d981ac, milliseconds=100)
    at ./include/wx/thrimpl.cpp:256
        __FUNCTION__ = "WaitTimeout"
#4  0x00cb8ed9 in wxSemaphoreInternal::WaitTimeout (this=0x8d981a8,
    milliseconds=100) at ./src/unix/threadpsx.cpp:552
        elapsed = {m_ll = 0}
        remainingTime = 100
        locker = {m_isOk = true, m_mutex = @0x8d981a8}
---Type <return> to continue, or q <return> to quit---
        startTime = {m_ll = 1298646596006}
#5  0x00cbbce7 in wxSemaphore::WaitTimeout (this=0x8692ad0, milliseconds=100)
    at ./include/wx/thrimpl.cpp:320
        __FUNCTION__ = "WaitTimeout"
#6  0x0833d232 in CTimerThread::Entry (this=0x8692ab0) at Timer.cpp:66
        now = <value optimized out>
        delta = 0
        evt = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x847b028,
              static ms_classInfo = {m_className = 0xcf5a48 L"wxObject",
                m_objectSize = 8, m_objectConstructor = 0, m_baseInfo1 = 0x0,
                m_baseInfo2 = 0x0, static sm_first = 0x741dcc,
                m_next = 0xd5e724, static sm_classTable = 0x8603008},
              m_refData = 0x0}, m_eventObject = 0x0, m_eventType = 10245,
            m_timeStamp = 0, m_id = 6128, m_callbackUserData = 0x0,
            m_propagationLevel = 0, m_skipped = false,
            m_isCommandEvent = false, static ms_classInfo = {
              m_className = 0xd0cd00 L"wxEvent", m_objectSize = 36,
              m_objectConstructor = 0, m_baseInfo1 = 0xd5e6b8,
              m_baseInfo2 = 0x0, static sm_first = 0x741dcc,
              m_next = 0xd5f788,
              static sm_classTable = 0x8603008}}, <No data fields>}
        lastEvent = 1566472614
#7  0x00cb9192 in wxThreadInternal::PthreadStart (thread=0x8692ab0)
---Type <return> to continue, or q <return> to quit---
    at ./src/unix/threadpsx.cpp:766
        __clframe = {__cancel_routine = 0xcb92d3 <wxPthreadCleanup>,
          __cancel_arg = 0x8692ab0, __do_it = 1, __cancel_type = 0}
        pthread = 0x8d759b8
        rc = 0
        dontRunAtAll = false
        __FUNCTION__ = "PthreadStart"
#8  0x00cb903c in wxPthreadStart (ptr=0x8692ab0)
    at ./src/unix/threadpsx.cpp:718
No locals.
#9  0x0013380e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#10 0x00f62a0e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 3 (Thread 0xb73ffb70 (LWP 2277)):
#0  0x0012d422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x0013b466 in nanosleep () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#2  0x00cc199a in wxMicroSleep (microseconds=1000000)
    at ./src/unix/utilsunx.cpp:191
        tmReq = {tv_sec = 1, tv_nsec = 0}
---Type <return> to continue, or q <return> to quit---
#3  0x00cc19c3 in wxMilliSleep (milliseconds=1000)
    at ./src/unix/utilsunx.cpp:212
No locals.
#4  0x00cb9a37 in wxThread::Sleep (milliseconds=1000)
    at ./src/unix/threadpsx.cpp:986
No locals.
#5  0x081d87d0 in UploadBandwidthThrottler::Entry (this=0x8c6b4e0)
    at UploadBandwidthThrottler.cpp:323
        timeSinceLastLoop = <value optimized out>
        minFragSize = 1300
        doubleSendSize = 2600
        sleepTime = 1000
        thisLoopTick = 1566472696
        bytesToSpend = <value optimized out>
        extraSleepTime = 1000
        lastLoopTick = 1566472696
        allowedDataRate = 5120000
        rememberedSlotCounter = 27
        sendLock = {m_isOk = false, m_mutex = @0x0}
#6  0x00cb9192 in wxThreadInternal::PthreadStart (thread=0x8c6b4e0)
    at ./src/unix/threadpsx.cpp:766
        __clframe = {__cancel_routine = 0xcb92d3 <wxPthreadCleanup>,
          __cancel_arg = 0x8c6b4e0, __do_it = 1, __cancel_type = 0}
---Type <return> to continue, or q <return> to quit---
        pthread = 0x8c9c2d8
        rc = 0
        dontRunAtAll = false
        __FUNCTION__ = "PthreadStart"
#7  0x00cb903c in wxPthreadStart (ptr=0x8c6b4e0)
    at ./src/unix/threadpsx.cpp:718
No locals.
#8  0x0013380e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#9  0x00f62a0e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.

Thread 1 (Thread 0xb7fdb760 (LWP 2263)):
#0  0x0012d422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x00ec04d1 in raise () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0x00ec3932 in abort () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#3  0x08340ead in OnUnhandledException () at MuleDebug.cpp:104
        t = 0x0
        output = 0xfd7560
#4  0x00e1a415 in ?? () from /usr/lib/libstdc++.so.6
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#5  0x00e1a452 in std::terminate() () from /usr/lib/libstdc++.so.6
No symbol table info available.
#6  0x00e1a591 in __cxa_throw () from /usr/lib/libstdc++.so.6
No symbol table info available.
#7  0x00e1ac0f in operator new(unsigned int) () from /usr/lib/libstdc++.so.6
No symbol table info available.
#8  0x00b8068c in wxSocketEvent::Clone (this=0xbfffefd0)
    at ./include/wx/socket.h:314
No locals.
#9  0x00cbd702 in wxEvtHandler::AddPendingEvent (this=0x85fd340, event=...)
    at ./src/common/event.cpp:1135
        eventCopy = 0xb80608
        __FUNCTION__ = "AddPendingEvent"
#10 0x00b7ed4a in wxSocketBase::OnRequest (this=0x9f84578,
    notification=wxSOCKET_OUTPUT) at ./src/common/socket.cpp:1006
        event = {<wxEvent> = {<wxObject> = {_vptr.wxObject = 0x85f6368,
              static ms_classInfo = {m_className = 0xcf5a48 L"wxObject",
                m_objectSize = 8, m_objectConstructor = 0, m_baseInfo1 = 0x0,
                m_baseInfo2 = 0x0, static sm_first = 0x741dcc,
                m_next = 0xd5e724, static sm_classTable = 0x8603008},
              m_refData = 0x0}, m_eventObject = 0x9f84578,
            m_eventType = 10002, m_timeStamp = 0, m_id = 6123,
---Type <return> to continue, or q <return> to quit---
            m_callbackUserData = 0x0, m_propagationLevel = 0,
            m_skipped = false, m_isCommandEvent = false,
            static ms_classInfo = {m_className = 0xd0cd00 L"wxEvent",
              m_objectSize = 36, m_objectConstructor = 0,
              m_baseInfo1 = 0xd5e6b8, m_baseInfo2 = 0x0,
              static sm_first = 0x741dcc, m_next = 0xd5f788,
              static sm_classTable = 0x8603008}}, m_event = wxSOCKET_OUTPUT,
          m_clientData = 0x0, static ms_classInfo = {
            m_className = 0xb890dc L"wxSocketEvent", m_objectSize = 44,
            m_objectConstructor = 0xb7d132 <wxSocketEvent::wxCreateObject()>,
            m_baseInfo1 = 0xd5f7a0, m_baseInfo2 = 0x0,
            static sm_first = 0x741dcc, m_next = 0xb93b8c,
            static sm_classTable = 0x8603008}}
        flag = 2
#11 0x00b7eb7e in wx_socket_callback (notification=GSOCK_OUTPUT,
    cdata=0x9f84578 "h\023A\b") at ./src/common/socket.cpp:942
        sckobj = 0x9f84578
#12 0x00b850cb in GSocket::Detected_Write (this=0xc1b2ea8)
    at ./src/unix/gsocket.cpp:1851
No locals.
#13 0x008c3084 in _GSocket_GDK_Input (data=0xc1b2ea8, source=70,
    condition=GDK_INPUT_WRITE) at ./src/gtk/gsockgtk.cpp:41
        socket = 0xc1b2ea8
---Type <return> to continue, or q <return> to quit---
#14 0x013bcf7c in ?? () from /usr/lib/libgdk-x11-2.0.so.0
No symbol table info available.
#15 0x016d6dab in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#16 0x0169fe88 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
No symbol table info available.
#17 0x016a3730 in ?? () from /lib/libglib-2.0.so.0
No symbol table info available.
#18 0x016a3b9f in g_main_loop_run () from /lib/libglib-2.0.so.0
No symbol table info available.
#19 0x01116419 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#20 0x008c1089 in wxEventLoop::Run (this=0x8d80660) at ./src/gtk/evtloop.cpp:76
        __FUNCTION__ = "Run"
        activate = {m_evtLoopOld = 0x0}
        exitcode = -1073745096
#21 0x00962c53 in wxAppBase::MainLoop (this=0x8633028)
    at ./src/common/appcmn.cpp:312
        mainLoop = {<wxEventLoopPtr> = {m_ptr = 0x8d80660}, m_pp = 0x8633068,
          m_pOld = 0x0}
#22 0x00962db3 in wxAppBase::OnRun (this=0x8633028)
    at ./src/common/appcmn.cpp:367
No locals.
---Type <return> to continue, or q <return> to quit---
#23 0x00c4d224 in wxEntry (argc=@0xd5d528, argv=0x8622888)
    at ./src/common/init.cpp:448
        callOnExit = {<No data fields>}
        initializer = {m_ok = true}
#24 0x00c4d2ea in wxEntry (argc=@0xbffff420, argv=0xbffff4c4)
    at ./src/common/init.cpp:460
No locals.
#25 0x0823dc9b in main (argc=1, argv=0xbffff4c4) at amule-gui.cpp:93
No locals.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on February 25, 2011, 11:30:18 PM
Its a high VSZ crash.
Same crash as always. We get an infinite number of events from glib, starving WX processing and going OOM.
Quote
$ LD_LIBRARY_PATH=/home/rrm/temp-amule/build/lib gdb amule
/usr/local/stow/amule-pre-stu/bin/amule
aMule SVN compiled with wxGTK2 v2.8.11 (Debugging) (Snapshot: rev. 10454)
Umm, from your instruction you are running with the wx patch. Anyways I'd double check that.
(By building  a patched wx to other dir like build2,  or whatever)

So if your testing is right we have some more bugs in wx but we will have more patches to try :)

Dear RRM, what difference can you see between running the patched vs unpatched lib, that is:

Code: [Select]
$ LD_LIBRARY_PATH=/home/rrm/temp-amule/build/lib gdb amule
$ LD_LIBRARY_PATH=/home/rrm/temp-amule/build-wo-patch/lib gdb amule

Do them crash at the same time? Do both feel sluggish? Knowing what the differences are could be fundamental.

Keep in mind that so far the wx patch did make a great difference for me.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on February 26, 2011, 09:12:57 PM
Anyways I'd double check that.
(By building  a patched wx to other dir like build2,  or whatever)

Ok, i will when i have some time.

Quote
Do them crash at the same time? Do both feel sluggish? Knowing what the differences are could be fundamental.

The non-patched version crashed sooner.
they both feel sluggish, but the non-patched version more so.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 01, 2011, 12:56:55 PM
... Anyways I'd double check that.
(By building  a patched wx to other dir like build2,  or whatever)

OK:
Removed ~/rrm/temp-amule/wxWidgets-2.8.11/ and wxWidgets-2.8.11.tar.gz
Code: [Select]
$ cd temp-amule
$ wget http://downloads.sourceforge.net/project/wxwindows/2.8.11/wxWidgets-2.8.11.tar.gz
$ tar xvfz wxWidgets-2.8.11.tar.gz
$ cd wxWidgets-2.8.11
saved kry.patch in this same folder
$ patch -p0 < kry.patch
$ ./configure --prefix=/home/rrm/temp-amule/build2/ --enable-debug --enable-unicode
$ make clean && make install

Code: [Select]
$ cd amule-pre-stu
the EMSocket.cpp is how it should be, including:
if (byConnected == ES_CONNECTED && IsEncryptionLayerReady() && !(m_bBusy && onlyAllowedToSendControlPacket)) {
$ ./configure --prefix=/usr/local/stow/amule-pre-stu --enable-debug --enable-optimize --with-wxdebug --with-wx-prefix=/home/rrm/temp-amule/build2
$ make clean
$ make -j 2 && sudo make install
$ cd /usr/local/stow
$ sudo stow -D amule-opt
$ sudo stow amule-pre-stu

$ LD_LIBRARY_PATH=/home/rrm/temp-amule/build2/lib gdb amule
Code: [Select]
This is aMule SVN compiled with wxGTK2 v2.8.11 (Debugging) (Snapshot: rev. 10454) based on eMule.
$ LD_LIBRARY_PATH=/home/rrm/temp-amule/build2/lib ldd /usr/local/stow/amule-pre-stu/bin/amule
Code: [Select]
linux-gate.so.1 =>  (0x0097a000)
libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0x0066a000)
libbfd-2.20.so => /usr/lib/libbfd-2.20.so (0x00b31000)
libz.so.1 => /lib/libz.so.1 (0x00dc8000)
libcrypto++.so.8 => /usr/lib/libcrypto++.so.8 (0x00110000)
libupnp.so.3 => /usr/lib/libupnp.so.3 (0x00f22000)
libthreadutil.so.2 => /usr/lib/libthreadutil.so.2 (0x00500000)
libixml.so.2 => /usr/lib/libixml.so.2 (0x00d4a000)
libwx_gtk2ud_adv-2.8.so.0 => /home/rrm/temp-amule/build2/lib/libwx_gtk2ud_adv-2.8.so.0 (0x00506000)
libwx_gtk2ud_core-2.8.so.0 => /home/rrm/temp-amule/build2/lib/libwx_gtk2ud_core-2.8.so.0 (0x00f3f000)
libwx_baseud_net-2.8.so.0 => /home/rrm/temp-amule/build2/lib/libwx_baseud_net-2.8.so.0 (0x005f8000)
libwx_baseud-2.8.so.0 => /home/rrm/temp-amule/build2/lib/libwx_baseud-2.8.so.0 (0x00683000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x0084f000)
libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0x00c65000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00632000)
libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0x0097b000)
/lib/ld-linux.so.2 (0x00cac000)
libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0x00650000)
libgtk-x11-2.0.so.0 => /usr/lib/libgtk-x11-2.0.so.0 (0x05313000)
libgdk-x11-2.0.so.0 => /usr/lib/libgdk-x11-2.0.so.0 (0x00dde000)
libatk-1.0.so.0 => /usr/lib/libatk-1.0.so.0 (0x00941000)
libpangoft2-1.0.so.0 => /usr/lib/libpangoft2-1.0.so.0 (0x00ac0000)
libgdk_pixbuf-2.0.so.0 => /usr/lib/libgdk_pixbuf-2.0.so.0 (0x0095e000)
libgio-2.0.so.0 => /usr/lib/libgio-2.0.so.0 (0x00e73000)
libpango-1.0.so.0 => /usr/lib/libpango-1.0.so.0 (0x00ae9000)
libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x00cc9000)
libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0x00c09000)
libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0x00d54000)
libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0x00654000)
libgthread-2.0.so.0 => /usr/lib/libgthread-2.0.so.0 (0x00659000)
librt.so.1 => /lib/tls/i686/cmov/librt.so.1 (0x0065f000)
libglib-2.0.so.0 => /lib/libglib-2.0.so.0 (0x0615c000)
libXinerama.so.1 => /usr/lib/libXinerama.so.1 (0x00c36000)
libSM.so.6 => /usr/lib/libSM.so.6 (0x00c39000)
libpng12.so.0 => /usr/lib/libpng12.so.0 (0x00d92000)
libjpeg.so.62 => /usr/lib/libjpeg.so.62 (0x08b8b000)
libtiff.so.4 => /usr/lib/libtiff.so.4 (0x0905f000)
libpangocairo-1.0.so.0 => /usr/lib/libpangocairo-1.0.so.0 (0x00c42000)
libX11.so.6 => /usr/lib/libX11.so.6 (0x03a3b000)
libXcomposite.so.1 => /usr/lib/libXcomposite.so.1 (0x00c4f000)
libXdamage.so.1 => /usr/lib/libXdamage.so.1 (0x00c53000)
libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0x00c56000)
libcairo.so.2 => /usr/lib/libcairo.so.2 (0x01df9000)
libXext.so.6 => /usr/lib/libXext.so.6 (0x00c8b000)
libXrender.so.1 => /usr/lib/libXrender.so.1 (0x00c9b000)
libXi.so.6 => /usr/lib/libXi.so.6 (0x00d3e000)
libXrandr.so.2 => /usr/lib/libXrandr.so.2 (0x00c5c000)
libXcursor.so.1 => /usr/lib/libXcursor.so.1 (0x00db7000)
libpcre.so.3 => /lib/libpcre.so.3 (0x03de4000)
libresolv.so.2 => /lib/tls/i686/cmov/libresolv.so.2 (0x00f09000)
libselinux.so.1 => /lib/libselinux.so.1 (0x041a5000)
libexpat.so.1 => /lib/libexpat.so.1 (0x093fe000)
libICE.so.6 => /usr/lib/libICE.so.6 (0x04b85000)
libuuid.so.1 => /lib/libuuid.so.1 (0x00ca5000)
libxcb.so.1 => /usr/lib/libxcb.so.1 (0x059f7000)
libpixman-1.so.0 => /usr/lib/libpixman-1.so.0 (0x01d9b000)
libdirectfb-1.2.so.0 => /usr/lib/libdirectfb-1.2.so.0 (0x01355000)
libfusion-1.2.so.0 => /usr/lib/libfusion-1.2.so.0 (0x013cf000)
libdirect-1.2.so.0 => /usr/lib/libdirect-1.2.so.0 (0x04d6a000)
libxcb-render-util.so.0 => /usr/lib/libxcb-render-util.so.0 (0x00dc2000)
libxcb-render.so.0 => /usr/lib/libxcb-render.so.0 (0x013d9000)
libXau.so.6 => /usr/lib/libXau.so.6 (0x00f1d000)
libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x0521b000)
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on March 02, 2011, 12:19:20 AM
Thanks very much RRM. If that crashes, please try to get several backtraces if you can, either using my script to stop amule in High VSZ or by hand.

By several backtraces I mean getting a backtrace, pressing 'c' inside gdb and quickly pressing Ctrl-C, and then bt.

Also if that crashes STU did a logging patch that may help, ideally that would be the next thing to try.

Let's see what happens, don't hesitate to ask any question.

[By the way, maybe we could work better using IRC or whatever system. I don't mind, if you think that would be better for you PM me]
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 02, 2011, 12:40:47 PM
aMule SVN compiled with wxGTK2 v2.8.11 (Debugging) (Snapshot: rev. 10454) based on eMule.
(--with-wx-prefix=/home/rrm/temp-amule/build2)

It took a while before this mule crashed, but here it is;
another high-VSZ crash.
$ ps axl | grep amule
Code: [Select]
0  1000 11172 11170  20   0 199168 145248 futex_ Sl+ pts/1     60:02 /usr/local/stow/amule-pre-stu/bin/amule
0  1000 11172 11170  20   0 230276 176464 futex_ Sl+ pts/1    567:56 /usr/local/stow/amule-pre-stu/bin/amule
0  1000 11172 11170  20   0 265384 202732 -     Rl+  pts/1    1346:57 /usr/local/stow/amule-pre-stu/bin/amule
0  1000 11172 11170  20   0 3144728 2576960 sync_p Dl+ pts/1  1609:10 /usr/local/stow/amule-pre-stu/bin/amule

(amule:11172): GLib-CRITICAL **: g_source_remove: assertion `tag > 0' failed

Terminated after throwing an instance of 'std::bad_alloc'
   what(): std::bad_alloc
Error while getting symbol table : Memory exhausted
***MEMORY-ERROR***: amule[11172]: GSlice: failed to allocate 120 bytes (alignment: 128): Cannot allocate memory

Program received signal SIGABRT, Aborted.
0x0012d422 in __kernel_vsyscall ()

Thanks very much RRM. If that crashes, please try to get several backtraces if you can, either using my script to stop amule in High VSZ or by hand.

Can you please supply me with the script, and tell me how to use it?

Quote
pressing 'c' inside gdb and quickly pressing Ctrl-C, and then bt.

I get this:
No thread selected
The program is not being run.

Quote
Also if that crashes STU did a logging patch that may help, ideally that would be the next thing to try.

Ok. How can i get it?

After trying to press 'c' inside gdb and quickly pressing Ctrl-C, and then bt,
i cannot get a normal bt backtrace anymore
("no stack")

Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 02, 2011, 01:05:48 PM
Suppose that the 2 following types of crashes are unrelated:

- Crashes confined to big pipe users (> 1 MB/s upload), regardless of wx version (solved by Stu's EMSocket.cpp patch).
- Crashes confined to wxWidgets 2.8.11 (Ubuntu 10.04 and 10.10), but not confined to big pipe users (solved by Kry's wx patch).

Then aMule SVN run by a normal user (and with Ubuntu 10.04 or 10.10), linking against wxWidgets 2.8.10 will not crash. (can somebody try?)
And...
Then this version should crash on my system: with Stu's patch, but using wxWidgets 2.8.11 without Kry's patch.
Lets see...

Code: [Select]
$ cd amule-pre-stu
in the EMSocket.cpp replace:
if(byConnected == ES_CONNECTED && IsEncryptionLayerReady() && !(m_bBusy && onlyAllowedToSendControlPacket)) {
by:
if(byConnected == ES_CONNECTED && IsEncryptionLayerReady() && (!m_bBusy || onlyAllowedToSendControlPacket)) {
$ ./configure --prefix=/usr/local/stow/amule-pre-stu --enable-debug --enable-optimize --with-wxdebug --with-wx-prefix=/home/rrm/temp-amule/build-wo-patch
$ make clean
$ make -j 2 && sudo make install

$ LD_LIBRARY_PATH=/home/rrm/temp-amule/build-wo-patch/lib gdb amule
Code: [Select]
Starting program: /usr/local/stow/amule-pre-stu/bin/amule
Initialising aMule SVN compiled with wxGTK2 v2.8.11 (Debugging) (Snapshot: rev. 10454)

$ LD_LIBRARY_PATH=/home/rrm/temp-amule/build-wo-patch/lib ldd /usr/local/stow/amule-pre-stu/bin/amule
It says amule-pre-stu, but its actually aMule with the Stu patch,
with wxwidgets 2.8.11, without the wx patch.
Code: [Select]
linux-gate.so.1 =>  (0x00180000)
libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0x009be000)
libbfd-2.20.so => /usr/lib/libbfd-2.20.so (0x0040b000)
libz.so.1 => /lib/libz.so.1 (0x00110000)
libcrypto++.so.8 => /usr/lib/libcrypto++.so.8 (0x004e3000)
libupnp.so.3 => /usr/lib/libupnp.so.3 (0x00126000)
libthreadutil.so.2 => /usr/lib/libthreadutil.so.2 (0x00143000)
libixml.so.2 => /usr/lib/libixml.so.2 (0x00149000)
libwx_gtk2ud_adv-2.8.so.0 => /home/rrm/temp-amule/build-wo-patch/lib/libwx_gtk2ud_adv-2.8.so.0 (0x00c36000)
libwx_gtk2ud_core-2.8.so.0 => /home/rrm/temp-amule/build-wo-patch/lib/libwx_gtk2ud_core-2.8.so.0 (0x00d28000)
libwx_baseud_net-2.8.so.0 => /home/rrm/temp-amule/build-wo-patch/lib/libwx_baseud_net-2.8.so.0 (0x00376000)
libwx_baseud-2.8.so.0 => /home/rrm/temp-amule/build-wo-patch/lib/libwx_baseud-2.8.so.0 (0x00181000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00a81000)
libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0x00153000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x0034d000)
libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0x0627a000)
/lib/ld-linux.so.2 (0x00a64000)
libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0x00179000)
libgtk-x11-2.0.so.0 => /usr/lib/libgtk-x11-2.0.so.0 (0x0883a000)
libgdk-x11-2.0.so.0 => /usr/lib/libgdk-x11-2.0.so.0 (0x008d3000)
libatk-1.0.so.0 => /usr/lib/libatk-1.0.so.0 (0x003b0000)
libpangoft2-1.0.so.0 => /usr/lib/libpangoft2-1.0.so.0 (0x003cd000)
libgdk_pixbuf-2.0.so.0 => /usr/lib/libgdk_pixbuf-2.0.so.0 (0x00968000)
libgio-2.0.so.0 => /usr/lib/libgio-2.0.so.0 (0x00b73000)
libpango-1.0.so.0 => /usr/lib/libpango-1.0.so.0 (0x009d7000)
libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x05625000)
libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0x00982000)
libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0x00a1f000)
libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0x0036b000)
libgthread-2.0.so.0 => /usr/lib/libgthread-2.0.so.0 (0x00370000)
librt.so.1 => /lib/tls/i686/cmov/librt.so.1 (0x003f6000)
libglib-2.0.so.0 => /lib/libglib-2.0.so.0 (0x03959000)
libXinerama.so.1 => /usr/lib/libXinerama.so.1 (0x0017d000)
libSM.so.6 => /usr/lib/libSM.so.6 (0x003ff000)
libpng12.so.0 => /usr/lib/libpng12.so.0 (0x00c09000)
libjpeg.so.62 => /usr/lib/libjpeg.so.62 (0x07c23000)
libtiff.so.4 => /usr/lib/libtiff.so.4 (0x037b1000)
libpangocairo-1.0.so.0 => /usr/lib/libpangocairo-1.0.so.0 (0x009af000)
libX11.so.6 => /usr/lib/libX11.so.6 (0x01ad8000)
libXcomposite.so.1 => /usr/lib/libXcomposite.so.1 (0x00a5d000)
libXdamage.so.1 => /usr/lib/libXdamage.so.1 (0x00408000)
libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0x00c2e000)
libcairo.so.2 => /usr/lib/libcairo.so.2 (0x02ffc000)
libXext.so.6 => /usr/lib/libXext.so.6 (0x05c45000)
libXrender.so.1 => /usr/lib/libXrender.so.1 (0x03ea7000)
libXi.so.6 => /usr/lib/libXi.so.6 (0x02270000)
libXrandr.so.2 => /usr/lib/libXrandr.so.2 (0x01d39000)
libXcursor.so.1 => /usr/lib/libXcursor.so.1 (0x06aec000)
libpcre.so.3 => /lib/libpcre.so.3 (0x02f6a000)
libresolv.so.2 => /lib/tls/i686/cmov/libresolv.so.2 (0x029c9000)
libselinux.so.1 => /lib/libselinux.so.1 (0x025df000)
libexpat.so.1 => /lib/libexpat.so.1 (0x026af000)
libICE.so.6 => /usr/lib/libICE.so.6 (0x0113d000)
libuuid.so.1 => /lib/libuuid.so.1 (0x05b49000)
libxcb.so.1 => /usr/lib/libxcb.so.1 (0x01158000)
libpixman-1.so.0 => /usr/lib/libpixman-1.so.0 (0x04dc7000)
libdirectfb-1.2.so.0 => /usr/lib/libdirectfb-1.2.so.0 (0x086bf000)
libfusion-1.2.so.0 => /usr/lib/libfusion-1.2.so.0 (0x035ac000)
libdirect-1.2.so.0 => /usr/lib/libdirect-1.2.so.0 (0x01176000)
libxcb-render-util.so.0 => /usr/lib/libxcb-render-util.so.0 (0x0750b000)
libxcb-render.so.0 => /usr/lib/libxcb-render.so.0 (0x043a0000)
libXau.so.6 => /usr/lib/libXau.so.6 (0x0118e000)
libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x03d70000)

Hmmm, this mule does not have a sluggish feel, at all...
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on March 02, 2011, 06:12:19 PM
Thank you RRM, that was very valuable information, specially the tag bit.

I'll be really busy the next couples of days, I'll try to post my views on this in the weekend.

Regards,
BTK
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 02, 2011, 08:59:24 PM
Thank you, Bill.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 05, 2011, 06:36:41 AM
Nah... this mule (Ubuntu 9.10 - SVN with Stu's patch - wxWidgets 2.8.1 without Kry's patch) is still running
(after 3 days) and is not going to crash...

So, imho its not the new wxWidgets 2.8.11.
Still, suppose that the 2 following types of crashes are unrelated:

- Crashes confined to big pipe users (> 1 MB/s upload), regardless of wx version (solved by Stu's EMSocket.cpp patch).
- Crashes confined to Ubuntu 10.04 and 10.10, but certainly not confined to big pipe users (solved by Kry's wx patch).

Obviously, Stu's patch does not solve the second type of crash, and Kry's patch does not solve the first type of crash.
So, what else changed for aMule when going from Ubuntu 9.10 to 10.04?
Can i incorporate it in my system without totally upgrading to 10.04?
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: btkaos on March 06, 2011, 03:35:29 AM
Nah... this mule (Ubuntu 9.10 - SVN with Stu's patch - wxWidgets 2.8.1 without Kry's patch) is still running
(after 3 days) and is not going to crash...
:)
Quote
So, what else changed for aMule when going from Ubuntu 9.10 to 10.04?
Can i incorporate it in my system without totally upgrading to 10.04?
Well, when you update to 10.04, amule will be the smaller of your worries :D

You have a configuration that works, that is good. Regarding Kry's patch, could patch amule with this http://forum.amule.org/index.php?topic=18543.msg100747#msg100747 (http://forum.amule.org/index.php?topic=18543.msg100747#msg100747) patch and let it run until it crashes?

That patch will log some information about queues, it would be good to know what's the output when it crashes.
Version to test: wx-2.8.11 + Kry patch, amule svn - STU patch + logging patch.
Title: Re: RRM's epic struggle for a better aMule on high-speed connections
Post by: RRM on March 08, 2011, 09:37:16 AM
Thank you.

Version to test: wx-2.8.11 + Kry patch, amule svn - STU patch + logging patch.

Will do so when i find some time.