compiz leaks window handles (and pixmaps?)

Bug #1065657 reported by Steve Magoun on 2012-10-11
56
This bug affects 13 people
Affects Status Importance Assigned to Milestone
Compiz
High
Unassigned
0.9.8
High
Unassigned
compiz (Ubuntu)
High
Unassigned

Bug Description

Compiz leaks window handles when closing windows, according to xrestop.

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 pixmap memory ('Pxm mem') associated with the Compiz 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 3 extra window handles for the Compiz on my system.
4) Close the window

Expected results:
After closing the terminal window, the number of window handles held by the compiz process returns to the level observed in step 2

Actual results:
The number of window handles does not decrease; Compiz retains the window handles for the closed window. It's reliably 3 window handles for each terminal window on my system. I haven't checked other window types (dialogs, etc).

The above steps also produce a 1KB leak of pixmap memory on my system. I am not sure if this is related.

ProblemType: Bug
DistroRelease: Ubuntu 12.10
Package: compiz 1:0.9.8.4-0ubuntu2
ProcVersionSignature: Ubuntu 3.5.0-17.28-generic 3.5.5
Uname: Linux 3.5.0-17-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.2 (Ubuntu/Linaro 4.7.2-2ubuntu1)
.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.
.tmp.unity.support.test.0:

ApportVersion: 2.6.1-0ubuntu3
Architecture: amd64
CompizPlugins: No value set for `/apps/compiz-1/general/screen0/options/active_plugins'
CompositorRunning: compiz
Date: Thu Oct 11 15:04:36 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-17-generic, x86_64: installed
 virtualbox, 4.1.18, 3.5.0-14-generic, x86_64: installed
 virtualbox, 4.1.18, 3.5.0-15-generic, x86_64: installed
 virtualbox, 4.1.18, 3.5.0-16-generic, x86_64: installed
 virtualbox, 4.1.18, 3.5.0-17-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_experimental_304 - Experimental 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_173_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)
MachineType: Apple Inc. MacBookPro3,1
PackageArchitecture: all
ProcEnviron:
 TERM=xterm
 PATH=(custom, no user)
 XDG_RUNTIME_DIR=<set>
 LANG=en_US.UTF-8
 SHELL=/bin/bash
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-3.5.0-17-generic root=UUID=4b3d81ed-fb5d-4946-97c0-ec537e1bfa3f ro quiet splash
SourcePackage: compiz
UpgradeStatus: Upgraded to quantal on 2012-08-07 (65 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.4-0ubuntu2
version.ia32-libs: ia32-libs N/A
version.libdrm2: libdrm2 2.4.39-0ubuntu1
version.libgl1-mesa-dri: libgl1-mesa-dri 9.0-0ubuntu1
version.libgl1-mesa-dri-experimental: libgl1-mesa-dri-experimental N/A
version.libgl1-mesa-glx: libgl1-mesa-glx 9.0-0ubuntu1
version.nvidia-graphics-drivers: nvidia-graphics-drivers N/A
version.xserver-xorg-core: xserver-xorg-core 2:1.13.0-0ubuntu6
version.xserver-xorg-input-evdev: xserver-xorg-input-evdev 1:2.7.3-0ubuntu2
version.xserver-xorg-video-ati: xserver-xorg-video-ati 1:6.99.99~git20120913.8637f772-0ubuntu1
version.xserver-xorg-video-intel: xserver-xorg-video-intel 2:2.20.9-0ubuntu2
version.xserver-xorg-video-nouveau: xserver-xorg-video-nouveau 1:1.0.2-0ubuntu3

Steve Magoun (smagoun) wrote :
Changed in compiz:
milestone: none → 0.9.9.0
Daniel van Vugt (vanvugt) wrote :

I can't test this on quantal due to bug 1065794 :(

Changed in compiz:
importance: Undecided → High
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in compiz (Ubuntu):
status: New → Confirmed
Changed in compiz:
milestone: 0.9.9.0 → 0.9.9.2
Steve Magoun (smagoun) wrote :

I can't reproduce the pixmap leak in 13.04 (compiz 1:0.9.9~daily13.01.21-0ubuntu1), but the window handle leak is still present. After a few days' usage in 13.04, the compiz process has more than a thousand window handles even though I have only a handful of apps+windows open (browser, editor, terminal, mail client).

Changed in compiz:
milestone: 0.9.9.2 → 0.9.10.0
Changed in compiz:
milestone: 0.9.10.0 → 0.9.10.2
MC Return (mc-return) on 2013-07-24
Changed in compiz:
milestone: 0.9.10.2 → 0.9.11.0
Steve Magoun (smagoun) wrote :

I can no longer reproduce this on 13.10 with compiz 1:0.9.10+13.10.20131011-0ubuntu1

Stephen M. Webb (bregma) wrote :

I can reproduce the window handle leak in Compiz 0.9.11.2 (Ubuntu 14.04 LTS) but not the pixmap leak.

Changed in compiz:
milestone: 0.9.11.0 → 0.9.12.1
status: New → Triaged
Changed in compiz (Ubuntu):
status: Confirmed → Triaged
importance: Undecided → High

I see the Window handle leak also in Ubuntu 14.10. With newer kernel & HW, it once cause Compiz to be OOM-killed (see bug 1415926).

This was with Compiz 1:0.9.12+14.10.201409.

Stephen M. Webb (bregma) on 2015-02-03
Changed in compiz:
milestone: 0.9.12.1 → 0.9.12.2
To post a comment you must log in.