This is the mail archive of the cygwin-xfree mailing list for the Cygwin XFree86 project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: USER/GDI Objects leak with (XWin.exe) Cygwin/X X Server Verion 1.7.6, Build Date 2010-03-18


On 19/04/2010 18:33, Amal Khailtash wrote:
Thanks for looking into this.  Yes, it seems this problem shows up for some applications.  gnome-terminal
seems to behave better.  But konsole and my specific TCL-based application (modelsim) seem to suffer
from this.

The problem is even if I quit the troublesome application, resources are not released and that tells me
the leak is somewhere in the core X server and not the application, but somehow only shows up for those.

This is expected, because as far as Windows is concerned, all the X windows and the resources they use are owned by the X server.


Some of the applications that I found that show this leak are:

   * modelsim
   * konsole
   * kfontview
   * kate

It seems KDE-based apps are the worst.  The problem is not as severe in gnome-based applications.
But I can see that, even in those, not all resources are released either!

I have (finally) tracked down what I think is causing this leak. It seems we are leaking the Windows icons we create when the X window has an icon hint attached. It also seems that menu windows for the problematic apps like konsole have such an icon hint, so we leak at a vast rate whilst working with them.


(There's not much point in making the Windows icon for these transient windows, as it can't be seen, so perhaps there's another change needed to avoid the overhead of generating the Windows icon in these cases)

I've uploaded a build with this fix at [1], patch to follow. Perhaps you could try it out and see if it works for you?

[1] ftp://cygwin.com/pub/cygwinx/XWin.20100722-git-3e2987e614139d51.exe.bz2

Another not is that even Xming suffers from this same problem.  I assume most of the source code is
shared between XWin and Xming.

It depends which version of Xming you are using, something you should have mentioned.


If you are using the current version of Xming, that is the case.
If you are using the free version of Xming, that's about 3 years old. There have been a few changes in the source since then :-)


----- Original Message ----
Subject: Re: USER/GDI Objects leak with (XWin.exe) Cygwin/X X Server Verion 1.7.6, Build Date 2010-03-18

On 06/04/2010 20:05, Amal Khailtash wrote:
Click on Session menu and while the menu is open, move to Edit, then View, Bookmarks,
Settings and Help and click outside to withdraw menu:

Image Name    User Objects    GDI Objects
XWin.exe        39                  79

Click on any menu item and while the menu is open and move cursor to other menu items
a number of (20) times:

Image Name    User Objects    GDI Objects
XWin.exe        241                 483

Keep doing this and you will see the allocated objects keeps increasing and increasing and
they are never released even if I close my Konsole window!

Thanks for the clear reproduction steps. With these, I can reproduce this problem.


According to the GdiUsage tool this seems to be a GDI bitmap handle being leaked. Unfortunately GdiUsage seems to have rusted a bit and doesn't produce useful backtraces (and may well not be able to backtrace a cygwin executable, anyhow) so locating exactly where the leak is coming from is going to be a bit tricky...

-- Jon TURNEY Volunteer Cygwin/X X Server maintainer

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://x.cygwin.com/docs/
FAQ:                   http://x.cygwin.com/docs/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]