==2312== Memcheck, a memory error detector
==2312== Copyright (C) 2002-2022, and GNU GPL'd, by Julian Seward et al.
==2312== Using Valgrind-3.22.0 and LibVEX; rerun with -h for copyright info
==2312== Command: compfy -b
==2312==
==2325== Syscall param writev(vector[0]) points to uninitialised byte(s)
==2325== at 0x4ECB484: writev (writev.c:26)
==2325== by 0x4ABA3DD: UnknownInlinedFun (xcb_conn.c:296)
==2325== by 0x4ABA3DD: _xcb_conn_wait.part.0 (xcb_conn.c:553)
==2325== by 0x4ABA55F: UnknownInlinedFun (xcb_out.c:469)
==2325== by 0x4ABA55F: _xcb_out_send (xcb_out.c:470)
==2325== by 0x4ABA7D6: _xcb_out_flush_to (xcb_out.c:495)
==2325== by 0x4ABC0BE: xcb_request_check (xcb_in.c:753)
==2325== by 0x1150B6: ??? (in /usr/bin/compfy)
==2325== by 0x4DE2CCF: (below main) (libc_start_call_main.h:58)
==2325== Address 0x544d139 is 4,537 bytes inside a block of size 21,176 alloc'd
==2325== at 0x4848953: calloc (vg_replace_malloc.c:1595)
==2325== by 0x4ABCF35: xcb_connect_to_fd (xcb_conn.c:368)
==2325== by 0x4ABD7BD: xcb_connect_to_display_with_auth_info (xcb_util.c:553)
==2325== by 0x49A5612: _XConnectXCB (xcb_disp.c:78)
==2325== by 0x49968EA: XOpenDisplay (OpenDis.c:129)
==2325== by 0x114218: ??? (in /usr/bin/compfy)
==2325== by 0x4DE2CCF: (below main) (libc_start_call_main.h:58)
==2325==
==2312==
==2312== HEAP SUMMARY:
==2312== in use at exit: 16,520 bytes in 10 blocks
==2312== total heap usage: 143 allocs, 133 frees, 24,624 bytes allocated
==2312==
==2312== LEAK SUMMARY:
==2312== definitely lost: 0 bytes in 0 blocks
==2312== indirectly lost: 0 bytes in 0 blocks
==2312== possibly lost: 0 bytes in 0 blocks
==2312== still reachable: 16,520 bytes in 10 blocks
==2312== suppressed: 0 bytes in 0 blocks
==2312== Reachable blocks (those to which a pointer was found) are not shown.
==2312== To see them, rerun with: --leak-check=full --show-leak-kinds=all
==2312==
==2312== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
==2325==
==2325== Process terminating with default action of signal 15 (SIGTERM)
==2325== at 0x4ECBBB7: epoll_wait (epoll_wait.c:30)
==2325== by 0x4959AB5: ??? (in /usr/lib/libev.so.4.0.0)
==2325== by 0x495C692: ev_run (in /usr/lib/libev.so.4.0.0)
==2325== by 0x115F05: ??? (in /usr/bin/compfy)
==2325== by 0x4DE2CCF: (below main) (libc_start_call_main.h:58)
==2325==
==2325== HEAP SUMMARY:
==2325== in use at exit: 1,386,536 bytes in 8,927 blocks
==2325== total heap usage: 1,395,603 allocs, 1,386,676 frees, 103,307,890 bytes allocated
==2325==
==2325== 80 bytes in 1 blocks are possibly lost in loss record 122 of 176
==2325== at 0x4841828: malloc (vg_replace_malloc.c:442)
==2325== by 0x4FF9DE7: RegisterStubCallbacks (GLdispatch.c:426)
==2325== by 0x4FFA4CB: __glDispatchInit (GLdispatch.c:202)
==2325== by 0x50730CB: __glXInit (libglx.c:2079)
==2325== by 0x4004EED: call_init (dl-init.c:90)
==2325== by 0x4004EED: call_init (dl-init.c:27)
==2325== by 0x4004FDB: _dl_init (dl-init.c:137)
==2325== by 0x401B2CF: ??? (in /usr/lib/ld-linux-x86-64.so.2)
==2325== by 0x1: ???
==2325== by 0x1FFF000C3E: ???
==2325== by 0x1FFF000C45: ???
==2325==
==2325== 80 bytes in 1 blocks are possibly lost in loss record 123 of 176
==2325== at 0x4841828: malloc (vg_replace_malloc.c:442)
==2325== by 0x4FF9DE7: RegisterStubCallbacks (GLdispatch.c:426)
==2325== by 0x4FFA6FE: __glDispatchRegisterStubCallbacks (GLdispatch.c:445)
==2325== by 0x4CED07A: __libGLInit (libgl.c:48)
==2325== by 0x4004EED: call_init (dl-init.c:90)
==2325== by 0x4004EED: call_init (dl-init.c:27)
==2325== by 0x4004FDB: _dl_init (dl-init.c:137)
==2325== by 0x401B2CF: ??? (in /usr/lib/ld-linux-x86-64.so.2)
==2325== by 0x1: ???
==2325== by 0x1FFF000C3E: ???
==2325== by 0x1FFF000C45: ???
==2325==
==2325== 1,234,512 bytes in 8,573 blocks are definitely lost in loss record 176 of 176
==2325== at 0x4841828: malloc (vg_replace_malloc.c:442)
==2325== by 0x4B48876: UnknownInlinedFun (pixman-region.c:213)
==2325== by 0x4B48876: pixman_rect_alloc.lto_priv.1 (pixman-region.c:465)
==2325== by 0x4B4BF05: pixman_op.lto_priv.1 (pixman-region.c:828)
==2325== by 0x4B53BCE: pixman_region32_subtract (pixman-region.c:1987)
==2325== by 0x14832B: ??? (in /usr/bin/compfy)
==2325== by 0x11A985: ??? (in /usr/bin/compfy)
==2325== by 0x11B8BB: ??? (in /usr/bin/compfy)
==2325== by 0x49590CA: ev_invoke_pending (in /usr/lib/libev.so.4.0.0)
==2325== by 0x495CD0F: ev_run (in /usr/lib/libev.so.4.0.0)
==2325== by 0x115F05: ??? (in /usr/bin/compfy)
==2325== by 0x4DE2CCF: (below main) (libc_start_call_main.h:58)
==2325==
==2325== LEAK SUMMARY:
==2325== definitely lost: 1,234,512 bytes in 8,573 blocks
==2325== indirectly lost: 0 bytes in 0 blocks
==2325== possibly lost: 160 bytes in 2 blocks
==2325== still reachable: 151,864 bytes in 352 blocks
==2325== suppressed: 0 bytes in 0 blocks
==2325== Reachable blocks (those to which a pointer was found) are not shown.
==2325== To see them, rerun with: --leak-check=full --show-leak-kinds=all
==2325==
==2325== Use --track-origins=yes to see where uninitialised values come from
==2325== ERROR SUMMARY: 4 errors from 4 contexts (suppressed: 0 from 0)
==2325==
==2325== 1 errors in context 1 of 4:
==2325== Syscall param writev(vector[0]) points to uninitialised byte(s)
==2325== at 0x4ECB484: writev (writev.c:26)
==2325== by 0x4ABA3DD: UnknownInlinedFun (xcb_conn.c:296)
==2325== by 0x4ABA3DD: _xcb_conn_wait.part.0 (xcb_conn.c:553)
==2325== by 0x4ABA55F: UnknownInlinedFun (xcb_out.c:469)
==2325== by 0x4ABA55F: _xcb_out_send (xcb_out.c:470)
==2325== by 0x4ABA7D6: _xcb_out_flush_to (xcb_out.c:495)
==2325== by 0x4ABC0BE: xcb_request_check (xcb_in.c:753)
==2325== by 0x1150B6: ??? (in /usr/bin/compfy)
==2325== by 0x4DE2CCF: (below main) (libc_start_call_main.h:58)
==2325== Address 0x544d139 is 4,537 bytes inside a block of size 21,176 alloc'd
==2325== at 0x4848953: calloc (vg_replace_malloc.c:1595)
==2325== by 0x4ABCF35: xcb_connect_to_fd (xcb_conn.c:368)
==2325== by 0x4ABD7BD: xcb_connect_to_display_with_auth_info (xcb_util.c:553)
==2325== by 0x49A5612: _XConnectXCB (xcb_disp.c:78)
==2325== by 0x49968EA: XOpenDisplay (OpenDis.c:129)
==2325== by 0x114218: ??? (in /usr/bin/compfy)
==2325== by 0x4DE2CCF: (below main) (libc_start_call_main.h:58)
==2325==
==2325== ERROR SUMMARY: 4 errors from 4 contexts (suppressed: 0 from 0)
What is the issue
When running
compfywithbspwm, any time I switch desktops or a window otherwise animates there is an increase in RAM usage. Killing thecompfyprocess does not free the RAM. The additional RAM is not cache RAM, if I continue to switch desktops I can max out RAM usage and crash my computer.What did you expect
Either animations cause temporary RAM usage or the additional RAM is freed properly when
compfyis stopped.Your configuration
I am still using the default example configuration from
/etc/xdg/compfy.conf.exampleforcompfy, copied to~/.config/compfy/compfy.conf.example.Relevant Images/Videos
No images or videos but I did wrap the
compfy -bprocess invalgrind(usingvalgrind -s --leak-check=full compfy -b > valout 2>&1) and received the following. I think for this to really be useful I'd have to run it again having builtcompfywith different flags:Valgrind Output
I run
compfyfrombspwmrcPackage Version: 1.7.2-1
Build Method: Arch makepkg
WM: bspwm