← Back to team overview

compiz team mailing list archive

[Bug 1050610] Re: gtk-window-decorator leaking window handles. Window operations become sluggish after a few days of usage

 

** Description changed:

+ [Impact]
+ 
+ Memory leaking causing user visible problems like performance
+ degradation.
+ 
+ [Test Case]
+ 
+ GTK-Window-Decorator Resource Usage
+ ===================================
+ Sam Spilsbury <sam.spilsbury@xxxxxxxxxxxxx>
+  
+ XRestop usage
+ -------------
+ #. Install xrestop (sudo apt-get install xrestop)
+ #. Run xrestop (eg, $ xrestop &)
+ #. Note the number in the "Wns" column for gtk-window-decorator
+ #. Open a window
+ #. Close that window
+ #. The number should be the same
+ 
+ [Regression Potential]
+ 
+ Low, has been well tested in Ubuntu 12.10.
+ 
+ --- original bug report ---
+ 
  gtk-window-decorator appears to be leaking window handles when windows
  are opened. The leak(s) correspond with performance degradation over
  time, especially on systems with relatively low amounts of VRAM (I have
  256MB).
  
  User-visible symptoms include:
  * Performance degradation over time
  * Sluggish animations, such as when using Super-W and Super-S
  * When switching windows, window contents briefly drawn as black rectangles before being rendered correctly
  * Window decorations not drawn on new windows
  
  To reproduce:
  1) install xrestop ("apt-get install xrestop")
  2) In a terminal, launch xrestop. Keep it running, and observe the number of 'Wins' and amount of pixmam memory ('Pxm mem') associated with the gtk-window-decorator process
  3) Open a new terminal (or any other) window. Observe that the number of windows had gone up by some amount. Opening a terminal window reliably results in exactly 19 extra window handles on my system.
- 4) Close the window 
+ 4) Close the window
  
  Expected results:
  Per xrestop, the number of window handles goes down when you close the window. (Are some of the handles are related to window-open animation? In that case I'd expect them to be disposed of when the animation is complete)
  
  Actual results:
  Per xrestop, the number of window handles remains the same when you close the window.
  
  I also observed that the total pixmap memory used by gtk-window-
  decorator steadily climbs over time. While closing a window does appear
  to release some pixmap memory, it does not seem to release all of it.
  Performace on my system with 256MB VRAM got really bad when the number
  of window handles in gtk-window-decorator climbed above 7000 and the
  total pixmap memory used by gtk-window-decorator was about 75MB.
  
  Killing + restarting gtk-window-decorator temporarily solves the
  problem.
  
- 
  xrestop output:
  
  xrestop - Display: localhost
-           Monitoring 32 clients. XErrors: 7
-           Pixmaps:  169216K total, Other:     672K total, All:  169889K total
+           Monitoring 32 clients. XErrors: 7
+           Pixmaps:  169216K total, Other:     672K total, All:  169889K total
  
- res-base Wins  GCs Fnts Pxms Misc   Pxm mem  Other   Total   PID Identifier    
+ res-base Wins  GCs Fnts Pxms Misc   Pxm mem  Other   Total   PID Identifier
  2600000  7176   67    1  495  724    78983K    187K  79171K  2359 gtk-window-dec
  0c00000  1292    2    1  112 15364    57130K    391K  57521K   ?   Compiz
  
- 
  top output:
  
-   PID USER      PR  NI  VIRT  RES  SHR S  %CPU %MEM    TIME+  COMMAND           
-  1306 root      20   0  573m 461m 6364 R 105.5 11.7 357:52.15 Xorg
+   PID USER      PR  NI  VIRT  RES  SHR S  %CPU %MEM    TIME+  COMMAND
+  1306 root      20   0  573m 461m 6364 R 105.5 11.7 357:52.15 Xorg
  
  ProblemType: Bug
  DistroRelease: Ubuntu 12.10
  Package: compiz-gnome 1:0.9.8.0-0ubuntu1
  ProcVersionSignature: Ubuntu 3.5.0-14.15-generic 3.5.3
  Uname: Linux 3.5.0-14-generic x86_64
  NonfreeKernelModules: nvidia
  .proc.driver.nvidia.gpus.0: Error: [Errno 21] Is a directory: '/proc/driver/nvidia/gpus/0'
  .proc.driver.nvidia.registry: Binary: ""
  .proc.driver.nvidia.version:
-  NVRM version: NVIDIA UNIX x86_64 Kernel Module  304.43  Sun Aug 19 20:14:03 PDT 2012
-  GCC version:  gcc version 4.7.1 20120908 (prerelease) (Ubuntu/Linaro 4.7.1-8ubuntu1)
+  NVRM version: NVIDIA UNIX x86_64 Kernel Module  304.43  Sun Aug 19 20:14:03 PDT 2012
+  GCC version:  gcc version 4.7.1 20120908 (prerelease) (Ubuntu/Linaro 4.7.1-8ubuntu1)
  .proc.driver.nvidia.warnings.fbdev:
-  Your system is not currently configured to drive a VGA console
-  on the primary VGA device. The NVIDIA Linux graphics driver
-  requires the use of a text-mode VGA console. Use of other console
-  drivers including, but not limited to, vesafb, may result in
-  corruption and stability problems, and is not supported.
+  Your system is not currently configured to drive a VGA console
+  on the primary VGA device. The NVIDIA Linux graphics driver
+  requires the use of a text-mode VGA console. Use of other console
+  drivers including, but not limited to, vesafb, may result in
+  corruption and stability problems, and is not supported.
  ApportVersion: 2.5.1-0ubuntu7
  Architecture: amd64
  CompizPlugins: No value set for `/apps/compiz-1/general/screen0/options/active_plugins'
  Date: Thu Sep 13 16:16:08 2012
  DistUpgraded: 2012-08-07 11:19:37,876 DEBUG enabling apt cron job
  DistroCodename: quantal
  DistroVariant: ubuntu
  DkmsStatus:
-  nvidia-current, 304.43, 3.5.0-13-generic, x86_64: installed
-  nvidia-current, 304.43, 3.5.0-14-generic, x86_64: installed
-  virtualbox, 4.1.18, 3.5.0-13-generic, x86_64: installed
-  virtualbox, 4.1.18, 3.5.0-14-generic, x86_64: installed
+  nvidia-current, 304.43, 3.5.0-13-generic, x86_64: installed
+  nvidia-current, 304.43, 3.5.0-14-generic, x86_64: installed
+  virtualbox, 4.1.18, 3.5.0-13-generic, x86_64: installed
+  virtualbox, 4.1.18, 3.5.0-14-generic, x86_64: installed
  GraphicsCard:
-  NVIDIA Corporation G84 [GeForce 8600M GT] [10de:0407] (rev a1) (prog-if 00 [VGA controller])
-    Subsystem: Apple Inc. Device [106b:00a0]
+  NVIDIA Corporation G84 [GeForce 8600M GT] [10de:0407] (rev a1) (prog-if 00 [VGA controller])
+    Subsystem: Apple Inc. Device [106b:00a0]
  InstallationMedia: Ubuntu 10.10 "Maverick Meerkat" - Beta amd64 (20100901.1)
  JockeyStatus:
-  kmod:nvidia_current_updates - NVIDIA binary Xorg driver, kernel module and VDPAU library (Proprietary, Disabled, Not in use)
-  kmod:nvidia_current - nvidia_current (Proprietary, Enabled, Not in use)
-  kmod:nvidia_173_updates - NVIDIA binary Xorg driver, kernel module and VDPAU library (Proprietary, Disabled, Not in use)
-  kmod:nvidia_173 - NVIDIA binary Xorg driver, kernel module and VDPAU library (Proprietary, Disabled, Not in use)
+  kmod:nvidia_current_updates - NVIDIA binary Xorg driver, kernel module and VDPAU library (Proprietary, Disabled, Not in use)
+  kmod:nvidia_current - nvidia_current (Proprietary, Enabled, Not in use)
+  kmod:nvidia_173_updates - NVIDIA binary Xorg driver, kernel module and VDPAU library (Proprietary, Disabled, Not in use)
+  kmod:nvidia_173 - NVIDIA binary Xorg driver, kernel module and VDPAU library (Proprietary, Disabled, Not in use)
  MachineType: Apple Inc. MacBookPro3,1
  ProcEnviron:
-  TERM=xterm
-  PATH=(custom, no user)
-  LANG=en_US.UTF-8
-  SHELL=/bin/bash
+  TERM=xterm
+  PATH=(custom, no user)
+  LANG=en_US.UTF-8
+  SHELL=/bin/bash
  ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-3.5.0-14-generic root=UUID=4b3d81ed-fb5d-4946-97c0-ec537e1bfa3f ro quiet splash vt.handoff=7
  SourcePackage: compiz
  UpgradeStatus: Upgraded to quantal on 2012-08-07 (37 days ago)
  dmi.bios.date: 03/05/08
  dmi.bios.vendor: Apple Inc.
  dmi.bios.version: MBP31.88Z.0070.B07.0803051658
  dmi.board.asset.tag: Base Board Asset Tag
  dmi.board.name: Mac-F4238BC8
  dmi.board.vendor: Apple Inc.
  dmi.board.version: PVT
  dmi.chassis.asset.tag: Asset Tag#
  dmi.chassis.type: 2
  dmi.chassis.vendor: Apple Inc.
  dmi.chassis.version: Mac-F4238BC8
  dmi.modalias: dmi:bvnAppleInc.:bvrMBP31.88Z.0070.B07.0803051658:bd03/05/08:svnAppleInc.:pnMacBookPro3,1:pvr1.0:rvnAppleInc.:rnMac-F4238BC8:rvrPVT:cvnAppleInc.:ct2:cvrMac-F4238BC8:
  dmi.product.name: MacBookPro3,1
  dmi.product.version: 1.0
  dmi.sys.vendor: Apple Inc.
  version.compiz: compiz 1:0.9.8.0-0ubuntu1
  version.ia32-libs: ia32-libs N/A
  version.libdrm2: libdrm2 2.4.39-0ubuntu1
  version.libgl1-mesa-dri: libgl1-mesa-dri 9.0~git20120903.e1673d20.is.git20120821.c1114c61-0ubuntu1
  version.libgl1-mesa-dri-experimental: libgl1-mesa-dri-experimental N/A
  version.libgl1-mesa-glx: libgl1-mesa-glx 9.0~git20120903.e1673d20.is.git20120821.c1114c61-0ubuntu1
  version.nvidia-graphics-drivers: nvidia-graphics-drivers N/A
  version.xserver-xorg-core: xserver-xorg-core 2:1.13.0-0ubuntu1
  version.xserver-xorg-input-evdev: xserver-xorg-input-evdev 1:2.7.3-0ubuntu1
  version.xserver-xorg-video-ati: xserver-xorg-video-ati 1:6.99.99~git20120713.6ef1ad6a-0ubuntu1
  version.xserver-xorg-video-intel: xserver-xorg-video-intel 2:2.20.7-0ubuntu1
  version.xserver-xorg-video-nouveau: xserver-xorg-video-nouveau 1:1.0.2-0ubuntu1

-- 
You received this bug notification because you are a member of compiz
packagers, which is subscribed to compiz in Ubuntu.
https://bugs.launchpad.net/bugs/1050610

Title:
  gtk-window-decorator leaking window handles. Window operations become
  sluggish after a few days of usage

To manage notifications about this bug go to:
https://bugs.launchpad.net/compiz/+bug/1050610/+subscriptions


References