Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Memory leak with xrender and experimental backends #892

Open
mike-lloyd03 opened this issue Sep 17, 2022 · 53 comments
Open

Memory leak with xrender and experimental backends #892

mike-lloyd03 opened this issue Sep 17, 2022 · 53 comments

Comments

@mike-lloyd03
Copy link

Platform

Linux 5.19.4-arch1-1

GPU, drivers, and screen setup

GPU: Nvidia GTX2070 Super Mobile Max-Q
Driver: 515.65.01
Monitor: Internal monitor, 1920x1080 @ 240 FPS

Environment

WM: Left-WM

picom version

Diagnostics

Version: vgit-f2970

Extensions:

  • Shape: Yes
  • XRandR: Yes
  • Present: Present

Misc:

  • Use Overlay: Yes
  • Config file used: /home/mike/.config/leftwm/themes/oscuro/picom.conf

Drivers (inaccurate):

NVIDIA, modesetting

Backend: glx

  • Driver vendors:
  • GLX: Mesa Project and SGI
  • GL: Intel
  • GL renderer: Mesa Intel(R) UHD Graphics (CML GT2)
  • Accelerated: 1

Configuration:

Configuration file
shadow = true;
shadow-radius = 15;
shadow-offset-x = -7;
shadow-offset-y = -7;
shadow-exclude = [
  "name = 'Notification'",
  "class_g = 'Conky'",
  "class_g ?= 'Notify-osd'",
  "class_g = 'Dunst'",
  "class_g = 'firefox'",
];
fading = true;
fade-in-step = 0.03;
fade-out-step = 0.03;
fade-delta = 7
fade-exclude = [
  "name = 'rofi - window'",
]
frame-opacity = .7;
inactive-opacity-override = false;
corner-radius = 10
rounded-corners-exclude = [
  "window_type = 'dock'",
  "window_type = 'desktop'",
  "class_g = 'Dunst'"
];
blur-method = "dual_kawase"
blur-strength = 3
blur-background-exclude = [
  "window_type = 'desktop'",
  "_GTK_FRAME_EXTENTS@:c",
  "class_g = 'Synapse'",
  "class_g = 'firefox'",
];
backend = "xrender"
vsync = true;
mark-wmwin-focused = true;
mark-ovredir-focused = true;
detect-rounded-corners = true;
detect-client-opacity = true;
use-ewmh-active-win = true
unredir-if-possible = true
detect-transient = true;
glx-no-stencil = true;
use-damage = false;
log-level = "warn";
wintypes:
{
  tooltip = { fade = true; shadow = true; opacity = 0.75; focus = true; full-shadow = false; };
  dock = { shadow = false; clip-shadow-above = true; }
  dnd = { shadow = false; }
  popup_menu = { opacity = 0.8; }
  dropdown_menu = { opacity = 0.8; }
};

Steps of reproduction

  1. Use the above configuration file
  2. Run with default backends (formerly "experimental backends")

Expected behavior

No memory leak

Current Behavior

All 64 gigs of memory get used up within about a minute or so. I have to enable legacy backends to prevent the memory leak.

@yshui
Copy link
Owner

yshui commented Sep 18, 2022

Hmm, I can't reproduce this at all. I would need some help from you.

A good start would be building with -Db_sanitize=address and see if that report any leaks.

@mike-lloyd03
Copy link
Author

mike-lloyd03 commented Sep 20, 2022

Okay I built with b_sanitize=address.

$ meson -Db_sanitize=address --buildtype=debug . build
$ ninja -C build

Memory starts growing quickly as soon as I start running but there are no messages in the console output.

However, if I run with debug logging, the log does show a constant error message like so:

[ 09/19/2022 21:01:33.417 x_print_error DEBUG ] X error 4 PIXMAP request 54 minor 0 serial 6
[ 09/19/2022 21:01:33.439 ev_handle DEBUG ] event    Event 0 serial 0x00000d26 window 0000000000 ""
[ 09/19/2022 21:01:33.439 x_print_error DEBUG ] X error 4 PIXMAP request 54 minor 0 serial 6
[ 09/19/2022 21:01:33.463 ev_handle DEBUG ] event    Event 0 serial 0x00000d74 window 0000000000 ""
[ 09/19/2022 21:01:33.463 x_print_error DEBUG ] X error 4 PIXMAP request 54 minor 0 serial 6
[ 09/19/2022 21:01:33.480 ev_handle DEBUG ] event    Event 0 serial 0x00000dc0 window 0000000000 ""
[ 09/19/2022 21:01:33.480 x_print_error DEBUG ] X error 4 PIXMAP request 54 minor 0 serial 6
[ 09/19/2022 21:01:33.497 ev_handle DEBUG ] event    Event 0 serial 0x00000e0c window 0000000000 ""
[ 09/19/2022 21:01:33.497 x_print_error DEBUG ] X error 4 PIXMAP request 54 minor 0 serial 6
[ 09/19/2022 21:01:33.513 ev_handle DEBUG ] event    Event 0 serial 0x00000e58 window 0000000000 ""
[ 09/19/2022 21:01:33.514 x_print_error DEBUG ] X error 4 PIXMAP request 54 minor 0 serial 6
[ 09/19/2022 21:01:33.530 ev_handle DEBUG ] event    Event 0 serial 0x00000ea4 window 0000000000 ""
[ 09/19/2022 21:01:33.530 x_print_error DEBUG ] X error 4 PIXMAP request 54 minor 0 serial 6
[ 09/19/2022 21:01:33.551 ev_handle DEBUG ] event    Event 0 serial 0x00000ef0 window 0000000000 ""
[ 09/19/2022 21:01:33.551 x_print_error DEBUG ] X error 4 PIXMAP request 54 minor 0 serial 6
[ 09/19/2022 21:01:33.572 ev_handle DEBUG ] event    Event 0 serial 0x00000f3c window 0000000000 ""
[ 09/19/2022 21:01:33.572 x_print_error DEBUG ] X error 4 PIXMAP request 54 minor 0 serial 6
[ 09/19/2022 21:01:33.588 ev_handle DEBUG ] event    Event 0 serial 0x00000f88 window 0000000000 ""

These errors don't appear when I run with --legacy-backends.

@mike-lloyd03
Copy link
Author

Full log:
https://pastebin.com/sRCw0At9

@yshui
Copy link
Owner

yshui commented Sep 20, 2022

I see, there could be a memory leak in the error handling path. I am curious what's causing so many PIXMAP errors though 🤔

@mike-lloyd03
Copy link
Author

I don't know. Is there something else I could provide to help understand the issue?

@yshui
Copy link
Owner

yshui commented Sep 24, 2022

what applications were running when the leak happens?

@mike-lloyd03
Copy link
Author

I can get it to happen with just Alacritty running.

@yshui
Copy link
Owner

yshui commented Sep 25, 2022

Do you have any background applications, auto-starts, etc.?

@mike-lloyd03
Copy link
Author

I just killed every user process I could get away with and tried it and same effect.

@mike-lloyd03
Copy link
Author

So I just tried my picom config with i3 and didn't get any PIXMAP errors or memory growth. I also tried to kill any processes running under LeftWM that weren't running on i3 and the problems still occur under LeftWM. I think the problem may lie there.

@yshui
Copy link
Owner

yshui commented Sep 26, 2022

Likely an issue with LeftWM then, I will find some time to try and reproduce this. Thank you for investigating.

@mike-lloyd03
Copy link
Author

Thank you. I looked around in the issues page in LeftWM but I don't see anyone else having this issue. I'll report back here if I find anything. Thank you for you help and responsiveness.

@Algorhythm-sxv
Copy link

Algorhythm-sxv commented Oct 7, 2022

I am also finding a memory leak with picom, it's not as fast as @mike-lloyd03 is reporting, but rather slowly eats up my RAM until I kill the process. I only started noticing it after I upgraded my RAM to 24GB from 8GB, but that could just be coincidental.

Running picom with --show-all-xerrors has the following errors start showing up:

[ 07/10/22 21:41:51.975 gl_blur_impl ERROR ] GLX error at line 398: GL_OUT_OF_MEMORY
[ 07/10/22 21:41:51.976 _gl_compose ERROR ] GLX error at line 479: GL_OUT_OF_MEMORY
[ 07/10/22 21:41:52.009 gl_blur_impl ERROR ] GLX error at line 398: GL_INVALID_FRAMEBUFFER_OPERATION
[ 07/10/22 21:41:59.844 gl_blur_impl ERROR ] GLX error at line 398: GL_OUT_OF_MEMORY
[ 07/10/22 21:41:59.844 _gl_compose ERROR ] GLX error at line 479: GL_OUT_OF_MEMORY
[ 07/10/22 21:41:59.853 _gl_compose ERROR ] GLX error at line 479: GL_OUT_OF_MEMORY
[ 07/10/22 21:41:59.877 _gl_compose ERROR ] GLX error at line 479: GL_OUT_OF_MEMORY
[ 07/10/22 21:41:59.896 gl_blur_impl ERROR ] GLX error at line 398: GL_INVALID_FRAMEBUFFER_OPERATION
[ 07/10/22 21:42:11.811 gl_kernel_blur ERROR ] Framebuffer attachment failed at line 99: GL_FRAMEBUFFER_UNSUPPORTED
[ 07/10/22 21:42:11.813 gl_shadow_from_mask ERROR ] GLX error at line 1322: GL_INVALID_FRAMEBUFFER_OPERATION
[ 07/10/22 21:42:11.866 _gl_compose ERROR ] GLX error at line 479: GL_OUT_OF_MEMORY

I am running on linux 5.19.13.arch1-1 using picom version vgit-71072, i3 (via the AUR package i3-gaps-rounded-git, version 4.20.1.r107.g3e63a999-1), nvidia GTX 1070ti, driver version 515.76-4.
If this should have its own issue please let me know and I will make a new issue with the full details.

@mike-lloyd03
Copy link
Author

@Algorhythm-sxv what WM/DE are you running?

@Algorhythm-sxv
Copy link

Algorhythm-sxv commented Oct 7, 2022

Ah shoot I meant to include it, I am running i3 (via the AUR package i3-gaps-rounded-git, version 4.20.1.r107.g3e63a999-1), I've added it to the initial comment

@LifeAO
Copy link

LifeAO commented Oct 9, 2022

Greetings, I believe I also encountered the same here, though I noticed it via my full swap memory usage and slowed down my spinning drive performance and everything else.
Vaguely, I believe multiple instances of this happened after I switched my backend from 'glx' to 'xrender'. I copied the bug report template and added my information there, though in plaintext with some markups left behind in case to paste to Github. Pastebin and Imgur links below.

This is my second attempt at WMs with Sway being my first. Still getting to know more of how picom works with the provided config from EndeavourOS's BSPWM repo and the default picom config. Will switch to glx backend to see if I observe high swap usage again without changing other configs. Hope this helps.

Pastebin w/ Imgur Link at the end: https://pastebin.com/RpJ9RqvL
Imgur Link (needs pastebin context): https://imgur.com/a/K69IOZ9

Addendum: I forgot to explicitly mention that the memory build-up was not instant. In the third screenshot, it took ~5h42m to fill. Also long with my prev unobserved leaks. My usage involved Chrome, xset dmps set off, mpv, and couple of kitty instances. Chrome and kitty has glitched rounded corners with xrender, but not sure if it is relevant (glx backend fixes this).

@yshui
Copy link
Owner

yshui commented Nov 20, 2022

can someone run picom with apitrace trace, wait until they see the memory leak, then upload the resulting trace file?

if it's an opengl resource leak, i should be able to see it in the trace.

@yshui
Copy link
Owner

yshui commented Nov 20, 2022

Also remember to enable --log-level=trace

@Monsterovich
Copy link
Contributor

can someone run picom with apitrace trace, wait until they see the memory leak, then upload the resulting trace file?

if it's an opengl resource leak, i should be able to see it in the trace.

Memory leaks accumulate slowly, but there you go.

https://www.mediafire.com/file/srtwm3rcfh3mgp5/picom.trace.7z/file

apitrace trace ./src/picom
apitrace: loaded into /usr/bin/apitrace
apitrace: unloaded from /usr/bin/apitrace
apitrace: loaded into /home/monsterovich/Distfiles/compile/picom/build/src/picom
apitrace: tracing to /home/monsterovich/Distfiles/compile/picom/build/picom.trace
apitrace: attempting to read configuration file: /home/monsterovich/.config/apitrace/gltrace.conf
apitrace: warning: glXBindTexImageEXT: unsupported GLX_TEXTURE_TARGET_EXT 0x0
[ 20.11.2022 21:15:43.825 glx_bind_pixmap ERROR ] GLX error at line 452: GL_INVALID_ENUM
apitrace: warning: caught signal 15
apitrace: flushing trace
/usr/bin/../lib/x86_64-linux-gnu/apitrace/wrappers/glxtrace.so+0x1e1c99
/lib/x86_64-linux-gnu/libc.so.6+0x4308f: /build/glibc-SzIz7B/glibc-2.31/signal/../sysdeps/unix/sysv/linux/x86_64/sigaction.c:0
/lib/x86_64-linux-gnu/libc.so.6: __GI___poll+0x17: ../sysdeps/unix/sysv/linux/poll.c:29
/lib/x86_64-linux-gnu/libnvidia-glcore.so.520.56.06+0x1490ddf
/lib/x86_64-linux-gnu/libnvidia-glcore.so.520.56.06+0x154217f
/lib/x86_64-linux-gnu/libnvidia-glcore.so.520.56.06+0x154235c
/lib/x86_64-linux-gnu/libGLX_nvidia.so.0+0xa9df6
/lib/x86_64-linux-gnu/libGLX_nvidia.so.0+0x7518f
/usr/bin/../lib/x86_64-linux-gnu/apitrace/wrappers/glxtrace.so: glXSwapBuffers+0x74
./src/picom: glx_present+0x632d2: ../src/backend/gl/glx.c:470
./src/picom: paint_all_new+0x5bd96: ../src/backend/backend.c:507
./src/picom: draw_callback_impl+0x152b8: ../src/picom.c:1524
./src/picom: draw_callback+0x153db: ../src/picom.c:1550
/lib/x86_64-linux-gnu/libev.so.4: ev_invoke_pending+0x52
/lib/x86_64-linux-gnu/libev.so.4: ev_run+0x7b2
./src/picom: session_run+0x1a41c: ../src/picom.c:2465
./src/picom: main+0x1a71f: ../src/picom.c:2567
/lib/x86_64-linux-gnu/libc.so.6: __libc_start_main+0xf2: ../csu/libc-start.c:308
./src/picom+0xfadd
?
apitrace: info: taking default action for signal 15
apitrace leaks picom.trace 
43: error: texture 1 was not destroyed until <EOF>
50: error: texture 2 was not destroyed until <EOF>
1226: error: texture 3 was not destroyed until <EOF>
1226: error: texture 4 was not destroyed until <EOF>
1323: error: texture 5 was not destroyed until <EOF>
1323: error: texture 6 was not destroyed until <EOF>
1498: error: texture 7 was not destroyed until <EOF>
1673: error: texture 8 was not destroyed until <EOF>
1728: error: texture 10 was not destroyed until <EOF>
2484: error: texture 14 was not destroyed until <EOF>
2496: error: texture 15 was not destroyed until <EOF>
2539: error: texture 16 was not destroyed until <EOF>
2831: error: texture 17 was not destroyed until <EOF>
2843: error: texture 18 was not destroyed until <EOF>
2886: error: texture 19 was not destroyed until <EOF>
3986: error: texture 27 was not destroyed until <EOF>
4315: error: texture 30 was not destroyed until <EOF>
851172: error: texture 32 was not destroyed until <EOF>
1324450: error: texture 36 was not destroyed until <EOF>
1324493: error: texture 37 was not destroyed until <EOF>
4446448: error: texture 34 was not destroyed until <EOF>
4524566: error: texture 39 was not destroyed until <EOF>
5998719: error: texture 25 was not destroyed until <EOF>
5998762: error: texture 26 was not destroyed until <EOF>
6908577: error: texture 46 was not destroyed until <EOF>
6943374: error: texture 44 was not destroyed until <EOF>
6968636: error: texture 40 was not destroyed until <EOF>
7001828: error: texture 41 was not destroyed until <EOF>
7033705: error: texture 42 was not destroyed until <EOF>
7049261: error: texture 45 was not destroyed until <EOF>
7081934: error: texture 23 was not destroyed until <EOF>
7081997: error: texture 31 was not destroyed until <EOF>
8182388: error: texture 38 was not destroyed until <EOF>
8286721: error: texture 48 was not destroyed until <EOF>
8659106: error: texture 9 was not destroyed until <EOF>
8659121: error: texture 11 was not destroyed until <EOF>
8659164: error: texture 12 was not destroyed until <EOF>
9209782: error: texture 49 was not destroyed until <EOF>
9224007: error: texture 13 was not destroyed until <EOF>
9224745: error: texture 43 was not destroyed until <EOF>
9224967: error: texture 20 was not destroyed until <EOF>
9224982: error: texture 21 was not destroyed until <EOF>
9225025: error: texture 22 was not destroyed until <EOF>
9291460: error: texture 29 was not destroyed until <EOF>
9291475: error: texture 50 was not destroyed until <EOF>
9291518: error: texture 51 was not destroyed until <EOF>
9291812: error: texture 24 was not destroyed until <EOF>
9291827: error: texture 33 was not destroyed until <EOF>
9291870: error: texture 52 was not destroyed until <EOF>
9328997: error: texture 28 was not destroyed until <EOF>
9329158: error: texture 35 was not destroyed until <EOF>
apitrace replay picom.trace
warning: process name not yet set
warning: process name not yet set
/home/monsterovich/Distfiles/compile/picom/build/src/picom
67 @0 glCompileShader(shader = 2)
67: warning: 0(2) : warning C7533: global variable gl_FragColor is deprecated after version 120

87 @0 glLinkProgram(program = 5)
87: warning: Fragment info
-------------
0(2) : warning C7533: global variable gl_FragColor is deprecated after version 120

125 @0 glCompileShader(shader = 2)
125: warning: 0(2) : warning C7533: global variable gl_FragColor is deprecated after version 120

132 @0 glLinkProgram(program = 3)
132: warning: Fragment info
-------------
0(2) : warning C7533: global variable gl_FragColor is deprecated after version 120

152 @0 glCompileShader(shader = 2)
152: warning: 0(2) : warning C7533: global variable gl_FragColor is deprecated after version 120

159 @0 glLinkProgram(program = 4)
159: warning: Fragment info
-------------
0(2) : warning C7533: global variable gl_FragColor is deprecated after version 120

210 @0 glCompileShader(shader = 2)
210: warning: 0(2) : warning C7533: global variable gl_FragColor is deprecated after version 120

218 @0 glLinkProgram(program = 7)
218: warning: Fragment info
-------------
0(2) : warning C7533: global variable gl_FragColor is deprecated after version 120

1290 @0 glCompileShader(shader = 2)
1290: warning: 0(2) : warning C7533: global variable gl_FragColor is deprecated after version 120

1304 @0 glLinkProgram(program = 12)
1304: warning: Fragment info
-------------
0(2) : warning C7533: global variable gl_FragColor is deprecated after version 120

1712: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
1713: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
1753: message: api performance issue 131218: Program/shader state performance warning: Vertex shader in program 3 is being recompiled based on GL state.
1778: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
1779: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
1785: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
1827: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
1828: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
1836: message: api issue 131185: Buffer detailed info: Buffer object 3 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
1837: message: api issue 131185: Buffer detailed info: Buffer object 4 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
1902: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
1903: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
2053: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 0 does not have a defined base level and cannot be used for texture mapping.
2053: message: api performance issue 131218: Program/shader state performance warning: Vertex shader in program 6 is being recompiled based on GL state.
2062: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
2063: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
2128: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
2129: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
2135: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
2177: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
2178: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
2186: message: api issue 131185: Buffer detailed info: Buffer object 3 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
2187: message: api issue 131185: Buffer detailed info: Buffer object 4 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
2252: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
2253: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
2514: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 0 does not have a defined base level and cannot be used for texture mapping.
2523: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
2524: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
2589: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
2590: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
2596: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
2638: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
2639: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
2647: message: api issue 131185: Buffer detailed info: Buffer object 3 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
2648: message: api issue 131185: Buffer detailed info: Buffer object 4 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
2713: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
2714: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
2861: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 0 does not have a defined base level and cannot be used for texture mapping.
2870: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
2871: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
2936: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
2937: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
2943: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
2985: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
2986: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
2994: message: api issue 131185: Buffer detailed info: Buffer object 3 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
2995: message: api issue 131185: Buffer detailed info: Buffer object 4 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
3060: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
3061: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
3208: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 0 does not have a defined base level and cannot be used for texture mapping.
3217: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
3218: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
3283: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
3284: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
3290: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
3332: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
3333: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
3341: message: api issue 131185: Buffer detailed info: Buffer object 3 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
3342: message: api issue 131185: Buffer detailed info: Buffer object 4 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
3407: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
3408: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
3555: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 0 does not have a defined base level and cannot be used for texture mapping.
3564: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
3565: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
3630: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
3631: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
3637: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
3679: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
3680: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
3688: message: api issue 131185: Buffer detailed info: Buffer object 3 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
3689: message: api issue 131185: Buffer detailed info: Buffer object 4 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
3754: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
3755: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
4198: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
4199: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
4205: message: minor api issue 131204: Texture state usage warning: The texture object (7) bound to texture image unit 0 does not have a defined base level and cannot be used for texture mapping.
4205: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
4250: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
4251: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
4290: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
4291: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
4297: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
4342: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
4343: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
4382: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
4383: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
4389: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
4434: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
4435: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
4474: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
4475: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
4481: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
4509: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
4510: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
4518: message: api issue 131185: Buffer detailed info: Buffer object 3 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
4519: message: api issue 131185: Buffer detailed info: Buffer object 4 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
4598: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
4599: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
4605: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
4647: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
4648: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
4654: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
4696: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
4697: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
4703: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
4745: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
4746: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
4752: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
4797: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
4798: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
4837: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
4838: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
4844: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
4886: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
4887: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
4893: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
4935: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
4936: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
4942: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
4968: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
4969: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
5004: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
5005: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
5011: message: minor api issue 131204: Texture state usage warning: The texture object (7) bound to texture image unit 0 does not have a defined base level and cannot be used for texture mapping.
5011: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
5053: message: api issue 131185: Buffer detailed info: Buffer object 1 (bound to GL_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
5054: message: api issue 131185: Buffer detailed info: Buffer object 2 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations.
5060: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
5102: message: api issue 131185: too many identical messages; ignoring
5109: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
5228: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
5277: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
5472: message: minor api issue 131204: Texture state usage warning: The texture object (7) bound to texture image unit 0 does not have a defined base level and cannot be used for texture mapping.
5472: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
5521: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
5570: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
5662: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
5781: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
5830: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
5879: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
5928: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
5977: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
6026: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
6075: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
6144: message: minor api issue 131204: Texture state usage warning: The texture object (7) bound to texture image unit 0 does not have a defined base level and cannot be used for texture mapping.
6144: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
6193: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
6242: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
6291: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
6410: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
6459: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
6508: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
6557: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
6606: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
6655: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
6704: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
6773: message: minor api issue 131204: Texture state usage warning: The texture object (7) bound to texture image unit 0 does not have a defined base level and cannot be used for texture mapping.
6773: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
6822: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
6871: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
6990: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
7039: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
7108: message: minor api issue 131204: Texture state usage warning: The texture object (7) bound to texture image unit 0 does not have a defined base level and cannot be used for texture mapping.
7108: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
7157: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
7206: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
7255: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
7324: message: minor api issue 131204: Texture state usage warning: The texture object (7) bound to texture image unit 0 does not have a defined base level and cannot be used for texture mapping.
7324: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
7373: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
7422: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
7541: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
7590: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
7785: message: minor api issue 131204: Texture state usage warning: The texture object (7) bound to texture image unit 0 does not have a defined base level and cannot be used for texture mapping.
7785: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
7834: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
7883: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
7975: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
8094: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
8143: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
8192: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
8241: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
8290: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
8339: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
8388: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
8457: message: minor api issue 131204: Texture state usage warning: The texture object (7) bound to texture image unit 0 does not have a defined base level and cannot be used for texture mapping.
8457: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
8506: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
8555: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
8604: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
8673: message: minor api issue 131204: Texture state usage warning: The texture object (7) bound to texture image unit 0 does not have a defined base level and cannot be used for texture mapping.
8673: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
8722: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
8771: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
8890: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
8939: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
9008: message: minor api issue 131204: Texture state usage warning: The texture object (7) bound to texture image unit 0 does not have a defined base level and cannot be used for texture mapping.
9008: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
9057: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
9106: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
9155: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
9350: message: minor api issue 131204: Texture state usage warning: The texture object (7) bound to texture image unit 0 does not have a defined base level and cannot be used for texture mapping.
9350: message: minor api issue 131204: Texture state usage warning: The texture object (0) bound to texture image unit 1 does not have a defined base level and cannot be used for texture mapping.
9399: message: minor api issue 131204: too many identical messages; ignoring
37266: message: api performance issue 131218: Program/shader state performance warning: Vertex shader in program 4 is being recompiled based on GL state.
Rendered 13526 frames in 18.0172 secs, average of 750.729 fps

@Minetest-j45
Copy link

hey there @yshui once the vram was fully used up, the ram usage would increase by roughly 3% per second
the window manager i use is awesomewm

@yshui
Copy link
Owner

yshui commented Nov 20, 2022

@Monsterovich did you remember to add --log-level=trace?

@Monsterovich
Copy link
Contributor

@Monsterovich did you remember to add --log-level=trace?

@yshui I did apitrace again, now with this flag.

https://www.mediafire.com/file/cfyd1byyvyyy16d/trace.7z/file

The compositor takes about an hour to eat up 600mb of memory, on a computer without this problem the compositor consumes 80mb.

@yshui
Copy link
Owner

yshui commented Nov 20, 2022

Thank you

@yshui
Copy link
Owner

yshui commented Nov 20, 2022

the trace have some non-ascii data which is breaking apitrace, i can get around it but it'd helpful if you try to make sure all the window titles, etc. are in ascii.

this is fixed upstream, so never mind.

yshui added a commit that referenced this issue Nov 21, 2022
destroy_win_finish doesn't call win_release_images to free the images,
so we need to add a release_mask call there.

Related: #892

Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com>
@yshui
Copy link
Owner

yshui commented Nov 23, 2022

@Monsterovich does the apitrace leak script, or asan report anything?

@Minetest-j45
Copy link

the leak is still happening to me, same as before
vram leak, which then starts using GTT when vram is 100% and gtt is just the graphics card using your ram as vram when the vram is full, from my understanding
version: vgit-98a5c

@yshui
Copy link
Owner

yshui commented Nov 24, 2022

@Minetest-j45 can you do what @Monsterovich did and upload a trace? i can't magically figure out where the leak this without any information.

@Minetest-j45
Copy link

will do, most likely tomorrow

@mochaaP
Copy link

mochaaP commented Nov 25, 2022

Hmm, I'm not able to reproduce it in an hour since then. I have trace enabled now, when it crashes later I will post the trace here.

I am able to 100% reproduce this now.

  • WM: i3 4.21.1 non-git
  • Picom: vgit-a9db7

Steps to reproduce:

  • Ensure rounded corners is on
  • Open two window in a single workspace
  • Switch i3 to tabbed/stacked mode
  • Change window focus
  • See SIGABRT

Attachements:

picom.log
apitrace.log

@mochaaP
Copy link

mochaaP commented Nov 25, 2022

cc @yshui

@Minetest-j45
Copy link

Minetest-j45 commented Nov 25, 2022

@Minetest-j45 can you do what @Monsterovich did and upload a trace? i can't magically figure out where the leak this without any information.

hmm, odd, after running sudo pacman -Syu and reinstalling picom, to the same version as before (vgit-98a5c), i seem to be unable to reproduce the bug

incase it helps, here are the packages upgraded:

upgraded gawk (5.2.0-3 -> 5.2.1-1)
upgraded systemd-libs (252.1-2 -> 252.2-1)
upgraded systemd (252.1-2 -> 252.2-1)
upgraded lib32-systemd (252.1-1 -> 252.2-1)
upgraded python-jaraco.context (4.1.2-1 -> 4.2.0-1)
upgraded python-setuptools (1:65.6.0-1 -> 1:65.6.1-1)
upgraded systemd-sysvcompat (252.1-2 -> 252.2-1)

good that it doesnt happen anymore but i imagine it is frustrating for you as it will make debugging harder... :/

@yshui
Copy link
Owner

yshui commented Nov 25, 2022

@Minetest-j45 i guess it's fixed then 😆

please keep an eye on it if you can, in case it happens again.

@Monsterovich
Copy link
Contributor

Monsterovich commented Nov 26, 2022

@yshui I was able to catch !w->mask_image assertion.

2022-11-26_17-59-35.mkv.zip

log.txt

picom.trace.zip

Could you please check what happened?

@Monsterovich
Copy link
Contributor

Monsterovich commented Nov 26, 2022

How to reproduce this:

  1. Open firefox.
  2. Go to https://bugs.winehq.org/
  3. Type "vulkan" or anything into search (do it multiple times).
  4. Crash.

@Monsterovich
Copy link
Contributor

@yshui Can you just delete this assert if it's not so important?

@mochaaP
Copy link

mochaaP commented Nov 26, 2022

If an assertion fails it means something definitely goes wrong. I don't think it's a good idea

@Minetest-j45
Copy link

hey there, i was editting my config file and i think i found setting causes the memory leak - atleast for me

setting

corner-radius = 14

killing picom, and restarting it, then waiting for abit, the memory leak happens again
when i remove this line, it doesnt happen anymore (repeating the steps above)

@Monsterovich
Copy link
Contributor

If an assertion fails it means something definitely goes wrong. I don't think it's a good idea

This assertion was added recently for debugging, @yshui please remove it because compositor may randomly crash. In my case when I browse certain websites.

@Monsterovich
Copy link
Contributor

hey there, i was editting my config file and i think i found setting causes the memory leak - atleast for me

@Minetest-j45 Please enable the address sanitizer and rebuild picom, otherwise it is not clear which part of the code has the leak.

@mochaaP
Copy link

mochaaP commented Dec 16, 2022

@Monsterovich

please remove it because compositor may randomly crash.

Just remove that assert and compile one yourself, it's not that hard ;)

@Monsterovich
Copy link
Contributor

@Monsterovich

please remove it because compositor may randomly crash.

Just remove that assert and compile one yourself, it's not that hard ;)

I did, just a reminder to do it in the master branch.

@absolutelynothelix
Copy link
Collaborator

absolutelynothelix commented Dec 22, 2022

can reproduce. i tracked it down to combination of frame-opacity and corner-radius, so minimal configuration to reproduce is picom --config=/dev/null --frame-opacity=0.5 --corner-radius=10. picom spams with errors and rapidly consuming memory.
image

edit: it's something about rounded corners, frame opacity just makes it leak automatically, without frame opacity you have to poke around for it to leak.

absolutelynothelix added a commit to absolutelynothelix/picom that referenced this issue Dec 22, 2022
calling wrong free function did nothing and produced ton of x errors

fixes at least yshui#892
@absolutelynothelix
Copy link
Collaborator

@mike-lloyd03, the original issue should be fixed starting from 99e1a74. if it doesn’t happen to you anymore consider closing at least leftwm issue, since it was picom’s issue. and i don’t know should you close this issue or not because it’s a kind of home for memory leak issues now.

FT-Labs pushed a commit to FT-Labs/picom that referenced this issue Jan 23, 2023
destroy_win_finish doesn't call win_release_images to free the images,
so we need to add a release_mask call there.

Related: yshui#892

Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com>
FT-Labs pushed a commit to FT-Labs/picom that referenced this issue Jan 23, 2023
calling wrong free function did nothing and produced ton of x errors

fixes at least yshui#892
FT-Labs pushed a commit to FT-Labs/picom that referenced this issue Jan 23, 2023
destroy_win_finish doesn't call win_release_images to free the images,
so we need to add a release_mask call there.

Related: yshui#892

Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com>
FT-Labs pushed a commit to FT-Labs/picom that referenced this issue Jan 23, 2023
calling wrong free function did nothing and produced ton of x errors

fixes at least yshui#892
@jlcarruda
Copy link

I'm getting the memory leak using qtile on NixOS. Using picom v10.
It happens after a while, probably related to what @absolutelynothelix, since I dont have a frame-opacity configuration, but have a corner-radius setted.
Going to try running without it to confirm on my environment.

My picom.conf

active-opacity = 1.000000;
corner-radius = 10;
animation-clamping = false;
animation-dampening = 25;
animation-for-open-window = "zoom";
animation-for-transient-window = "fly-in";
animation-for-unmap-window = "auto";
animation-for-workspace-switch-in = "fly-in";
animation-for-workspace-switch-out = "auto";
animation-stiffness = 230;
animation-window-mass = 0.500000;
backend = "xrender";
blur: { background = true; background-fixed = true; background-frame = true; deviation = 1; kern = "31,31,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1"; method = "dual_kawase"; strength = 10; };
blur-background-exclude = [ "window_type = 'dock'" , "window_type = 'desktop'" , "class_g = 'slop'" , "class_g = 'Gromit-mpx'" , "class_i = 'Gromit-mpx'" , "class_g = 'Slack'" , "class_i = 'Slack'" , "class_g = 'slack'" , "class_i = 'slack'" , "class_g = 'Peek'" , "_GTK_FRAME_EXTENTS@:c" , "QTILE_INTERNAL:32c = 1" ];
detect-client-opacity = true;
detect-transient = true;
fade-delta = 4;
fade-exclude = [ "class_g = 'slop'" ];
fade-in-step = 0.030000;
fade-out-step = 0.030000;
fading = true;
inactive-opacity = 1.000000;
log-level = "info";
opacity-rule = [ "99:class_g = 'Code' && focused" , "85:class_g = 'Code' && !focused" , "99:class_g = 'Alacritty' && focused" , "85:class_g = 'Alacritty' && !focused" , "99:class_g = 'alacritty' && focused" , "85:class_g = 'alacritty' && !focused" , "99:class_g = 'Rofi' && focused" , "85:class_g = 'Rofi' && !focused" , "99:class_g = 'URxvt' && focused" , "85:class_g = 'URxvt' && !focused" , "99:class_g = 'Thunar' && focused" , "85:class_g = 'Thunar' && !focused" , "99:class_g = 'thunar' && focused" , "85:class_g = 'thunar' && !focused" , "99:class_g = 'thunderbird' && focused" , "85:class_g = 'thunderbird' && !focused" , "99:class_g = 'Mail' && focused" , "85:class_g = 'Mail' && !focused" , "99:class_g = 'Msgcompose' && focused" , "85:class_g = 'Msgcompose' && !focused" , "99:class_g = 'Conky' && focused" , "85:class_g = 'Conky' && !focused" , "99:class_g = 'TelegramDesktop' && focused" , "85:class_g = 'TelegramDesktop' && !focused" , "99:class_g = 'whatsdesk' && focused" , "85:class_g = 'whatsdesk' && !focused" , "99:class_g = 'brave' && focused" , "85:class_g = 'brave' && !focused" , "99:class_g = 'firefox' && focused" , "85:class_g = 'firefox' && !focused" ];
round-borders = 10;
round-borders-rule = [ "3:class_g      = 'XTerm'" , "3:class_g      = 'URxvt'" , "10:class_g     = 'Alacritty'" , "15:class_g     = 'Signal'" ];
rounded-corners-exclude = [ "class_g = 'awesome'" , "class_g = 'kitty'" , "class_g = 'Polybar'" ];
shadow = false;
shadow-exclude = [  ];
shadow-offset-x = -15;
shadow-offset-y = -15;
shadow-opacity = 0.750000;
show-all-xerrors = false;
unredir-if-possible = true;
use-ewmh-active-win = true;
vsync = true;
wintypes: { dialog = { fade = true; opacity = 0.900000; shadow = false; }; dropdown_menu = { fade = true; opacity = 0.900000; shadow = false; }; menu = { fade = true; opacity = 0.900000; shadow = false; }; notify = { fade = true; opacity = 0.900000; shadow = false; }; popup_menu = { fade = false; opacity = 0.900000; shadow = true; }; tooltip = { fade = true; opacity = 0.900000; shadow = false; }; utility = { fade = true; opacity = 0.900000; shadow = false; }; };
xrender-sync-fence = true;

@absolutelynothelix
Copy link
Collaborator

@jlcarruda, try picom built from the latest commit in the next branch.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

9 participants