Hi,

Other important points that I just found:

- The leak only occurs under Wayland (I'm using sway and XWayland), not
  with Xorg (tested with i3)

- The leak only occurs when the Audacity window is visible. If it is not
  onscreen, the memory usage doesn't seem to grow.

(I reiterate that the problem doesn't occur when compiling Audacity
myself from source, so it's not a general issue of Audacity not working
under Wayland -- the problem must be with the specific versions of
libraries that I used, or with the packaging, compilation options,
etc.)

Besides, looking at audacity's memory with pmap, what changes when
memory gets allocated is that lines of the following form get added:

> 00007f8064030000    8640    3740    3740 rw-s- /memfd:gdk-wayland (deleted)

Best,

-- 
Antoine Amarilli



On Sat, Mar 21, 2020 at 06:56:45PM +0100, Antoine Amarilli wrote:
> Hi,
> 
> I am still having this bug as of today, which makes Audacity unusable. I
> compiled Audacity 2.3.3 from source and it doesn't seem to have the same
> problem.
> 
> So the problem may be in the Debian packaging, or in the use of
> different library versions than what I did.
> 
> Here is some information about my build:
> 
> $ ldd ./audacity 
> linux-vdso.so.1 (0x00007ffe2415d000)
> libexpat.so.1 => /lib/x86_64-linux-gnu/libexpat.so.1 (0x00007f234d943000)
> libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f234d922000)
> libwx_gtk2u_html-3.0.so.0 => 
> /usr/lib/x86_64-linux-gnu/libwx_gtk2u_html-3.0.so.0 (0x00007f234d643000)
> libwx_gtk2u_qa-3.0.so.0 => /usr/lib/x86_64-linux-gnu/libwx_gtk2u_qa-3.0.so.0 
> (0x00007f234d414000)
> libwx_gtk2u_adv-3.0.so.0 => 
> /usr/lib/x86_64-linux-gnu/libwx_gtk2u_adv-3.0.so.0 (0x00007f234d026000)
> libwx_gtk2u_core-3.0.so.0 => 
> /usr/lib/x86_64-linux-gnu/libwx_gtk2u_core-3.0.so.0 (0x00007f234c78c000)
> libwx_baseu_net-3.0.so.0 => 
> /usr/lib/x86_64-linux-gnu/libwx_baseu_net-3.0.so.0 (0x00007f234c53e000)
> libwx_baseu-3.0.so.0 => /usr/lib/x86_64-linux-gnu/libwx_baseu-3.0.so.0 
> (0x00007f234c09f000)
> libavcodec.so.58 => /usr/lib/x86_64-linux-gnu/libavcodec.so.58 
> (0x00007f234ab0d000)
> libavformat.so.58 => /usr/lib/x86_64-linux-gnu/libavformat.so.58 
> (0x00007f234a899000)
> libavutil.so.56 => /usr/lib/x86_64-linux-gnu/libavutil.so.56 
> (0x00007f234a774000)
> libid3tag.so.0 => /usr/lib/x86_64-linux-gnu/libid3tag.so.0 
> (0x00007f234a755000)
> libmad.so.0 => /usr/lib/x86_64-linux-gnu/libmad.so.0 (0x00007f234a733000)
> libSoundTouch.so.1 => /usr/lib/x86_64-linux-gnu/libSoundTouch.so.1 
> (0x00007f234a71c000)
> libvorbisenc.so.2 => /usr/lib/x86_64-linux-gnu/libvorbisenc.so.2 
> (0x00007f234a671000)
> libvorbisfile.so.3 => /usr/lib/x86_64-linux-gnu/libvorbisfile.so.3 
> (0x00007f234a666000)
> libvorbis.so.0 => /usr/lib/x86_64-linux-gnu/libvorbis.so.0 
> (0x00007f234a638000)
> libogg.so.0 => /usr/lib/x86_64-linux-gnu/libogg.so.0 (0x00007f234a42d000)
> libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f234a428000)
> libgtk-x11-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 
> (0x00007f2349fdc000)
> libgdk-x11-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0 
> (0x00007f2349f25000)
> libgdk_pixbuf-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0 
> (0x00007f2349efe000)
> libgobject-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 
> (0x00007f2349ea2000)
> libglib-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 
> (0x00007f2349d7b000)
> libasound.so.2 => /usr/lib/x86_64-linux-gnu/libasound.so.2 
> (0x00007f2349c82000)
> librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f2349c77000)
> libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 
> (0x00007f2349aaa000)
> libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f2349965000)
> libmvec.so.1 => /lib/x86_64-linux-gnu/libmvec.so.1 (0x00007f2349939000)
> libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f234991d000)
> libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f234975d000)
> /lib64/ld-linux-x86-64.so.2 (0x00007f234ec09000)
> libwx_baseu_xml-3.0.so.0 => 
> /usr/lib/x86_64-linux-gnu/libwx_baseu_xml-3.0.so.0 (0x00007f234954d000)
> libpango-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libpango-1.0.so.0 
> (0x00007f2349503000)
> libX11.so.6 => /usr/lib/x86_64-linux-gnu/libX11.so.6 (0x00007f23493c1000)
> libnotify.so.4 => /usr/lib/x86_64-linux-gnu/libnotify.so.4 
> (0x00007f23493b7000)
> libpangocairo-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0 
> (0x00007f23493a5000)
> libcairo.so.2 => /usr/lib/x86_64-linux-gnu/libcairo.so.2 (0x00007f2349285000)
> libXxf86vm.so.1 => /usr/lib/x86_64-linux-gnu/libXxf86vm.so.1 
> (0x00007f234907f000)
> libSM.so.6 => /usr/lib/x86_64-linux-gnu/libSM.so.6 (0x00007f2349074000)
> libpng16.so.16 => /usr/lib/x86_64-linux-gnu/libpng16.so.16 
> (0x00007f234903b000)
> libjpeg.so.62 => /usr/lib/x86_64-linux-gnu/libjpeg.so.62 (0x00007f2348dd2000)
> libtiff.so.5 => /usr/lib/x86_64-linux-gnu/libtiff.so.5 (0x00007f2348d4e000)
> libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f2348d31000)
> libswresample.so.3 => /usr/lib/x86_64-linux-gnu/libswresample.so.3 
> (0x00007f2348d0f000)
> libvpx.so.6 => /usr/lib/x86_64-linux-gnu/libvpx.so.6 (0x00007f2348ad8000)
> libwebpmux.so.3 => /usr/lib/x86_64-linux-gnu/libwebpmux.so.3 
> (0x00007f2348acc000)
> libwebp.so.6 => /usr/lib/x86_64-linux-gnu/libwebp.so.6 (0x00007f2348a5f000)
> liblzma.so.5 => /lib/x86_64-linux-gnu/liblzma.so.5 (0x00007f2348a36000)
> librsvg-2.so.2 => /usr/lib/x86_64-linux-gnu/librsvg-2.so.2 
> (0x00007f2348606000)
> libzvbi.so.0 => /usr/lib/x86_64-linux-gnu/libzvbi.so.0 (0x00007f2348576000)
> libsnappy.so.1 => /usr/lib/x86_64-linux-gnu/libsnappy.so.1 
> (0x00007f234856b000)
> libaom.so.0 => /usr/lib/x86_64-linux-gnu/libaom.so.0 (0x00007f23480d3000)
> libcodec2.so.0.9 => /usr/lib/x86_64-linux-gnu/libcodec2.so.0.9 
> (0x00007f23472ec000)
> libgsm.so.1 => /usr/lib/x86_64-linux-gnu/libgsm.so.1 (0x00007f23472dc000)
> libmp3lame.so.0 => /usr/lib/x86_64-linux-gnu/libmp3lame.so.0 
> (0x00007f2347264000)
> libopenjp2.so.7 => /usr/lib/x86_64-linux-gnu/libopenjp2.so.7 
> (0x00007f234720d000)
> libopus.so.0 => /usr/lib/x86_64-linux-gnu/libopus.so.0 (0x00007f23471b2000)
> libshine.so.3 => /usr/lib/x86_64-linux-gnu/libshine.so.3 (0x00007f2346fa7000)
> libspeex.so.1 => /usr/lib/x86_64-linux-gnu/libspeex.so.1 (0x00007f2346f8a000)
> libtheoraenc.so.1 => /usr/lib/x86_64-linux-gnu/libtheoraenc.so.1 
> (0x00007f2346f4d000)
> libtheoradec.so.1 => /usr/lib/x86_64-linux-gnu/libtheoradec.so.1 
> (0x00007f2346f2d000)
> libtwolame.so.0 => /usr/lib/x86_64-linux-gnu/libtwolame.so.0 
> (0x00007f2346f08000)
> libwavpack.so.1 => /usr/lib/x86_64-linux-gnu/libwavpack.so.1 
> (0x00007f2346edc000)
> libx264.so.155 => /usr/lib/x86_64-linux-gnu/libx264.so.155 
> (0x00007f2346c1e000)
> libx265.so.179 => /usr/lib/x86_64-linux-gnu/libx265.so.179 
> (0x00007f2345cb3000)
> libxvidcore.so.4 => /usr/lib/x86_64-linux-gnu/libxvidcore.so.4 
> (0x00007f2345ba0000)
> libva.so.2 => /usr/lib/x86_64-linux-gnu/libva.so.2 (0x00007f2345b79000)
> libxml2.so.2 => /usr/lib/x86_64-linux-gnu/libxml2.so.2 (0x00007f23459c0000)
> libbz2.so.1.0 => /lib/x86_64-linux-gnu/libbz2.so.1.0 (0x00007f23459ad000)
> libgme.so.0 => /usr/lib/x86_64-linux-gnu/libgme.so.0 (0x00007f234595d000)
> libopenmpt.so.0 => /usr/lib/x86_64-linux-gnu/libopenmpt.so.0 
> (0x00007f2345773000)
> libchromaprint.so.1 => /usr/lib/x86_64-linux-gnu/libchromaprint.so.1 
> (0x00007f234575d000)
> libbluray.so.2 => /usr/lib/x86_64-linux-gnu/libbluray.so.2 
> (0x00007f234570d000)
> libgnutls.so.30 => /usr/lib/x86_64-linux-gnu/libgnutls.so.30 
> (0x00007f2345535000)
> libssh-gcrypt.so.4 => /usr/lib/x86_64-linux-gnu/libssh-gcrypt.so.4 
> (0x00007f23454a8000)
> libva-drm.so.2 => /usr/lib/x86_64-linux-gnu/libva-drm.so.2 
> (0x00007f23454a1000)
> libva-x11.so.2 => /usr/lib/x86_64-linux-gnu/libva-x11.so.2 
> (0x00007f2345499000)
> libvdpau.so.1 => /usr/lib/x86_64-linux-gnu/libvdpau.so.1 (0x00007f2345493000)
> libdrm.so.2 => /usr/lib/x86_64-linux-gnu/libdrm.so.2 (0x00007f234547f000)
> libOpenCL.so.1 => /usr/lib/x86_64-linux-gnu/libOpenCL.so.1 
> (0x00007f2345472000)
> libgmodule-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgmodule-2.0.so.0 
> (0x00007f234546a000)
> libXfixes.so.3 => /usr/lib/x86_64-linux-gnu/libXfixes.so.3 
> (0x00007f2345264000)
> libatk-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libatk-1.0.so.0 
> (0x00007f234523b000)
> libgio-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0 
> (0x00007f2345068000)
> libpangoft2-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0 
> (0x00007f234504f000)
> libfontconfig.so.1 => /usr/lib/x86_64-linux-gnu/libfontconfig.so.1 
> (0x00007f2345009000)
> libXrender.so.1 => /usr/lib/x86_64-linux-gnu/libXrender.so.1 
> (0x00007f2344dfd000)
> libXinerama.so.1 => /usr/lib/x86_64-linux-gnu/libXinerama.so.1 
> (0x00007f2344df8000)
> libXi.so.6 => /usr/lib/x86_64-linux-gnu/libXi.so.6 (0x00007f2344be8000)
> libXrandr.so.2 => /usr/lib/x86_64-linux-gnu/libXrandr.so.2 
> (0x00007f23449dd000)
> libXcursor.so.1 => /usr/lib/x86_64-linux-gnu/libXcursor.so.1 
> (0x00007f23449d0000)
> libXcomposite.so.1 => /usr/lib/x86_64-linux-gnu/libXcomposite.so.1 
> (0x00007f23447cd000)
> libXdamage.so.1 => /usr/lib/x86_64-linux-gnu/libXdamage.so.1 
> (0x00007f23447c6000)
> libXext.so.6 => /usr/lib/x86_64-linux-gnu/libXext.so.6 (0x00007f23445b4000)
> libffi.so.7 => /usr/lib/x86_64-linux-gnu/libffi.so.7 (0x00007f23445a8000)
> libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3 (0x00007f2344534000)
> libthai.so.0 => /usr/lib/x86_64-linux-gnu/libthai.so.0 (0x00007f2344529000)
> libfribidi.so.0 => /usr/lib/x86_64-linux-gnu/libfribidi.so.0 
> (0x00007f234450b000)
> libxcb.so.1 => /usr/lib/x86_64-linux-gnu/libxcb.so.1 (0x00007f23444e1000)
> libfreetype.so.6 => /usr/lib/x86_64-linux-gnu/libfreetype.so.6 
> (0x00007f2344422000)
> libpixman-1.so.0 => /usr/lib/x86_64-linux-gnu/libpixman-1.so.0 
> (0x00007f234437c000)
> libxcb-shm.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-shm.so.0 
> (0x00007f2344377000)
> libxcb-render.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-render.so.0 
> (0x00007f2344366000)
> libICE.so.6 => /usr/lib/x86_64-linux-gnu/libICE.so.6 (0x00007f2344149000)
> libuuid.so.1 => /lib/x86_64-linux-gnu/libuuid.so.1 (0x00007f2344140000)
> libzstd.so.1 => /usr/lib/x86_64-linux-gnu/libzstd.so.1 (0x00007f2344096000)
> libjbig.so.0 => /usr/lib/x86_64-linux-gnu/libjbig.so.0 (0x00007f2343e88000)
> libsoxr.so.0 => /usr/lib/x86_64-linux-gnu/libsoxr.so.0 (0x00007f2343e1d000)
> libcroco-0.6.so.3 => /usr/lib/x86_64-linux-gnu/libcroco-0.6.so.3 
> (0x00007f2343ddd000)
> libnuma.so.1 => /usr/lib/x86_64-linux-gnu/libnuma.so.1 (0x00007f2343dcf000)
> libicuuc.so.63 => /usr/lib/x86_64-linux-gnu/libicuuc.so.63 
> (0x00007f2343bfe000)
> libmpg123.so.0 => /usr/lib/x86_64-linux-gnu/libmpg123.so.0 
> (0x00007f2343b9e000)
> libp11-kit.so.0 => /usr/lib/x86_64-linux-gnu/libp11-kit.so.0 
> (0x00007f2343a6c000)
> libidn2.so.0 => /usr/lib/x86_64-linux-gnu/libidn2.so.0 (0x00007f2343a4b000)
> libunistring.so.2 => /usr/lib/x86_64-linux-gnu/libunistring.so.2 
> (0x00007f23438c9000)
> libtasn1.so.6 => /usr/lib/x86_64-linux-gnu/libtasn1.so.6 (0x00007f23438b3000)
> libnettle.so.7 => /usr/lib/x86_64-linux-gnu/libnettle.so.7 
> (0x00007f2343878000)
> libhogweed.so.5 => /usr/lib/x86_64-linux-gnu/libhogweed.so.5 
> (0x00007f234383f000)
> libgmp.so.10 => /usr/lib/x86_64-linux-gnu/libgmp.so.10 (0x00007f23437ba000)
> libgcrypt.so.20 => /usr/lib/x86_64-linux-gnu/libgcrypt.so.20 
> (0x00007f234369d000)
> libgpg-error.so.0 => /lib/x86_64-linux-gnu/libgpg-error.so.0 
> (0x00007f234367a000)
> libgssapi_krb5.so.2 => /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2 
> (0x00007f234362e000)
> libmount.so.1 => /lib/x86_64-linux-gnu/libmount.so.1 (0x00007f23435cd000)
> libselinux.so.1 => /lib/x86_64-linux-gnu/libselinux.so.1 (0x00007f23435a0000)
> libresolv.so.2 => /lib/x86_64-linux-gnu/libresolv.so.2 (0x00007f2343588000)
> libharfbuzz.so.0 => /usr/lib/x86_64-linux-gnu/libharfbuzz.so.0 
> (0x00007f2343483000)
> libdatrie.so.1 => /usr/lib/x86_64-linux-gnu/libdatrie.so.1 
> (0x00007f2343479000)
> libXau.so.6 => /usr/lib/x86_64-linux-gnu/libXau.so.6 (0x00007f2343275000)
> libXdmcp.so.6 => /usr/lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007f234306d000)
> libbsd.so.0 => /usr/lib/x86_64-linux-gnu/libbsd.so.0 (0x00007f2343053000)
> libgomp.so.1 => /usr/lib/x86_64-linux-gnu/libgomp.so.1 (0x00007f2343013000)
> libicudata.so.63 => /usr/lib/x86_64-linux-gnu/libicudata.so.63 
> (0x00007f2341622000)
> libkrb5.so.3 => /usr/lib/x86_64-linux-gnu/libkrb5.so.3 (0x00007f2341542000)
> libk5crypto.so.3 => /usr/lib/x86_64-linux-gnu/libk5crypto.so.3 
> (0x00007f234150f000)
> libcom_err.so.2 => /lib/x86_64-linux-gnu/libcom_err.so.2 (0x00007f2341509000)
> libkrb5support.so.0 => /usr/lib/x86_64-linux-gnu/libkrb5support.so.0 
> (0x00007f23414fa000)
> libkeyutils.so.1 => /lib/x86_64-linux-gnu/libkeyutils.so.1 
> (0x00007f23414f3000)
> libblkid.so.1 => /lib/x86_64-linux-gnu/libblkid.so.1 (0x00007f234149d000)
> libpcre2-8.so.0 => /usr/lib/x86_64-linux-gnu/libpcre2-8.so.0 
> (0x00007f234140d000)
> libgraphite2.so.3 => /usr/lib/x86_64-linux-gnu/libgraphite2.so.3 
> (0x00007f23413df000)
> 
> $ apt-cache policy of some relevant packages:
> libwxbase3.0-0v5:
>   Installed: 3.0.4+dfsg-4~bpo9+1
>   Candidate: 3.0.4+dfsg-15
>   Version table:
>      3.0.4+dfsg-15 650
>         650 http://debian.proxad.net/debian testing/main amd64 Packages
>         600 http://debian.proxad.net/debian unstable/main amd64 Packages
>  *** 3.0.4+dfsg-4~bpo9+1 100
>         100 http://debian.proxad.net/debian stretch-backports/main amd64 
> Packages
>         100 /var/lib/dpkg/status
>      3.0.2+dfsg-4 500
>         500 http://debian.proxad.net/debian stretch/main amd64 Packages
> libwxgtk-webview3.0-0v5:
>   Installed: 3.0.4+dfsg-4~bpo9+1
>   Candidate: 3.0.4+dfsg-4~bpo9+1
>   Version table:
>  *** 3.0.4+dfsg-4~bpo9+1 100
>         100 http://debian.proxad.net/debian stretch-backports/main amd64 
> Packages
>         100 /var/lib/dpkg/status
>      3.0.2+dfsg-4 500
>         500 http://debian.proxad.net/debian stretch/main amd64 Packages
> libwxgtk3.0-0v5:
>   Installed: 3.0.4+dfsg-4~bpo9+1
>   Candidate: 3.0.4+dfsg-14
>   Version table:
>      3.0.4+dfsg-14 600
>         600 http://debian.proxad.net/debian unstable/main amd64 Packages
>  *** 3.0.4+dfsg-4~bpo9+1 100
>         100 http://debian.proxad.net/debian stretch-backports/main amd64 
> Packages
>         100 /var/lib/dpkg/status
>      3.0.2+dfsg-4 500
>         500 http://debian.proxad.net/debian stretch/main amd64 Packages
> 
> I hope this helps. I can provide more information if needed.
> 
> Best regards,
> 
> -- 
> Antoine Amarilli
> 


Attachment: signature.asc
Description: PGP signature

Reply via email to