← Back to team overview

desktop-packages team mailing list archive

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

 

Still present in 14.04.1 LTS trusty.

Please let me know if I can provide more information to help localize
the problem.

-- 
You received this bug notification because you are a member of Desktop
Packages, 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

Status in Compiz:
  Fix Released
Status in Compiz Core:
  Fix Released
Status in compiz package in Ubuntu:
  Fix Released
Status in compiz source package in Precise:
  Fix Released
Status in compiz source package in Quantal:
  Fix Released

Bug description:
  [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

  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

  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

  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)
  .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.
  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
  GraphicsCard:
   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)
  MachineType: Apple Inc. MacBookPro3,1
  ProcEnviron:
   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

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