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

Clean-up thread for literally *any* ASAN output you get #6400

Open
JulianVolodia opened this issue Sep 13, 2019 · 9 comments
Open

Clean-up thread for literally *any* ASAN output you get #6400

JulianVolodia opened this issue Sep 13, 2019 · 9 comments

Comments

@JulianVolodia
Copy link
Contributor

Hi, I starting a thread to fix some leaks on success and unsuccessfull run of Clementine.

I will be noting some issues here and please, feel free to post your problems which most info you could get from your lastest clementine (great if on Debian).

Windows and MacOS X will be for some time out of support (I don't have money for even used, devices).

@JulianVolodia
Copy link
Contributor Author

JulianVolodia commented Sep 13, 2019

During easy-to-reproduce crash (no X server, so cannot connect to any; crash status for me because memory incorrectly handled then) I have output attached below in file.

Adding some super easy to run Dockerfile for this case to get. Install docker and copy Dockerfile somewhere. Then run:

docker build -t clementine_debian_img -f /change/to/path/pointing/to/Dockerfile /change/to/path/pointing/to/
docker run -it clementine_debian_img -n clementine_debian_container

(inside clementine_debian_container) $ /make_debug.sh
(inside clementine_debian_container) $ /Clementine/bin_debug/clementine

part of terminal output:

22:24:02.397 INFO  main:328                         Clementine 1.3.1-627-gda6ff9124 
22:24:02.487 WARN  unknown                          clementine: cannot connect to X server  
==8908==ERROR: LeakSanitizer: detected memory leaks
Direct leak of 2032 byte(s) in 1 object(s) allocated from:
...

Direct leak of 256 byte(s) in 1 object(s) allocated from:
    #9 0x7f850e1a780e in XML_ParseBuffer (/lib/x86_64-linux-gnu/libexpat.so.1+0xd80e)
    #18 0x7f8508fcfb9a in FcConfigParseAndLoad (/usr/lib/x86_64-linux-gnu/libfontconfig.so.1+0x22b9a)
    #25 0x7f8511b68c27 in QApplication::QApplication(int&, char**, bool, int) (/usr/lib/x86_64-linux-gnu/libQtGui.so.4+0x1c8c27)
    #26 0x122039f in QtSingleApplication::QtSingleApplication(int&, char**, bool) /fuzzing/Clementine/3rdparty/qtsingleapplication/qtsingleapplication.cpp:163:7
    #27 0xa48351 in main /fuzzing/Clementine/src/main.cpp:337:23

...

Direct leak of 96 byte(s) in 1 object(s) allocated from:
    #4 0x7f8514b3dfef  (/usr/lib/x86_64-linux-gnu/libQtCore.so.4+0xd8fef)
    #20 0x1220f76 in QtSingleCoreApplication::QtSingleCoreApplication(int&, char**) /fuzzing/Clementine/3rdparty/qtsingleapplication/qtsinglecoreapplication.cpp:80:7
    #21 0xa48116 in main /fuzzing/Clementine/src/main.cpp:294:29

Direct leak of 96 byte(s) in 1 object(s) allocated from:
    #4 0x7f8514b3deaa  (/usr/lib/x86_64-linux-gnu/libQtCore.so.4+0xd8eaa)
    #20 0x1220f76 in QtSingleCoreApplication::QtSingleCoreApplication(int&, char**) /fuzzing/Clementine/3rdparty/qtsingleapplication/qtsinglecoreapplication.cpp:80:7
    #21 0xa48116 in main /fuzzing/Clementine/src/main.cpp:294:29

...

Direct leak of 78 byte(s) in 1 object(s) allocated from:
    #1 0x7f8514b2aeeb in QString::fromLatin1_helper(char const*, int) (/usr/lib/x86_64-linux-gnu/libQtCore.so.4+0xc5eeb)
    #2 0x7f8514b2e4e4 in QString::fromAscii_helper(char const*, int) (/usr/lib/x86_64-linux-gnu/libQtCore.so.4+0xc94e4)
    #3 0xa49e38 in QString::QString(char const*) /usr/include/qt4/QtCore/qstring.h:419:71
    #4 0xa5fff4 in CommandlineOptions::CommandlineOptions(int, char**) /fuzzing/Clementine/src/core/commandlineoptions.cpp:88:7
    #5 0xa480ff in main /fuzzing/Clementine/src/main.cpp:287:22

...

Indirect leak of 64 byte(s) in 1 object(s) allocated from:
    #4 0x7f8514b3dee3  (/usr/lib/x86_64-linux-gnu/libQtCore.so.4+0xd8ee3)
    #20 0x1220f76 in QtSingleCoreApplication::QtSingleCoreApplication(int&, char**) /fuzzing/Clementine/3rdparty/qtsingleapplication/qtsinglecoreapplication.cpp:80:7
    #21 0xa48116 in main /fuzzing/Clementine/src/main.cpp:294:29

Indirect leak of 60 byte(s) in 1 object(s) allocated from:
    #4 0x7f8514b3e035  (/usr/lib/x86_64-linux-gnu/libQtCore.so.4+0xd9035)
    #20 0x1220f76 in QtSingleCoreApplication::QtSingleCoreApplication(int&, char**) /fuzzing/Clementine/3rdparty/qtsingleapplication/qtsinglecoreapplication.cpp:80:7
    #21 0xa48116 in main /fuzzing/Clementine/src/main.cpp:294:29

...

Indirect leak of 46 byte(s) in 1 object(s) allocated from:
    #1 0x7f8514b2aeeb in QString::fromLatin1_helper(char const*, int) (/usr/lib/x86_64-linux-gnu/libQtCore.so.4+0xc5eeb)
    #2 0x7f8514b3de86  (/usr/lib/x86_64-linux-gnu/libQtCore.so.4+0xd8e86)
    #18 0x1220f76 in QtSingleCoreApplication::QtSingleCoreApplication(int&, char**) /fuzzing/Clementine/3rdparty/qtsingleapplication/qtsinglecoreapplication.cpp:80:7
    #19 0xa48116 in main /fuzzing/Clementine/src/main.cpp:294:29

Indirect leak of 42 byte(s) in 1 object(s) allocated from:
    #2 0x7f8514b3dfdb  (/usr/lib/x86_64-linux-gnu/libQtCore.so.4+0xd8fdb)
Indirect leak of 36 byte(s) in 1 object(s) allocated from:
    #2 0x7f8514b3dfc5  (/usr/lib/x86_64-linux-gnu/libQtCore.so.4+0xd8fc5)
Indirect leak of 36 byte(s) in 1 object(s) allocated from:
    #2 0x7f8514b3de70  (/usr/lib/x86_64-linux-gnu/libQtCore.so.4+0xd8e70)
...


Indirect leak of 32 byte(s) in 1 object(s) allocated from:
    #0 0xa0cf70 in calloc (/fuzzing/Clementine/bin_debug/clementine+0xa0cf70)
    #1 0x7f8508fca808  (/usr/lib/x86_64-linux-gnu/libfontconfig.so.1+0x1d808)
    #2 0x7f8508fcbb9a  (/usr/lib/x86_64-linux-gnu/libfontconfig.so.1+0x1eb9a)
    #3 0x7f8508fd18f1  (/usr/lib/x86_64-linux-gnu/libfontconfig.so.1+0x248f1)
    #4 0x7f850e1a2b4b in _init (/lib/x86_64-linux-gnu/libexpat.so.1+0x8b4b)
    #5 0x7f850e1a346b in _init (/lib/x86_64-linux-gnu/libexpat.so.1+0x946b)
    #6 0x7f850e1a4d70 in _init (/lib/x86_64-linux-gnu/libexpat.so.1+0xad70)
    #7 0x7f850e1a54a4 in _init (/lib/x86_64-linux-gnu/libexpat.so.1+0xb4a4)
    #8 0x7f850e1a780e in XML_ParseBuffer (/lib/x86_64-linux-gnu/libexpat.so.1+0xd80e)
    #9 0x7f8508fcfb9a in FcConfigParseAndLoad (/usr/lib/x86_64-linux-gnu/libfontconfig.so.1+0x22b9a)
    #10 0x7f8508fcfeb6 in FcConfigParseAndLoad (/usr/lib/x86_64-linux-gnu/libfontconfig.so.1+0x22eb6)
    #11 0x7f8508fd0947  (/usr/lib/x86_64-linux-gnu/libfontconfig.so.1+0x23947)
    #12 0x7f850e1a2b4b in _init (/lib/x86_64-linux-gnu/libexpat.so.1+0x8b4b)
    #13 0x7f850e1a346b in _init (/lib/x86_64-linux-gnu/libexpat.so.1+0x946b)
    #14 0x7f850e1a4d70 in _init (/lib/x86_64-linux-gnu/libexpat.so.1+0xad70)
    #15 0x7f850e1a54a4 in _init (/lib/x86_64-linux-gnu/libexpat.so.1+0xb4a4)
    #16 0x7f850e1a780e in XML_ParseBuffer (/lib/x86_64-linux-gnu/libexpat.so.1+0xd80e)
    #17 0x7f8508fcfb9a in FcConfigParseAndLoad (/usr/lib/x86_64-linux-gnu/libfontconfig.so.1+0x22b9a)
    #18 0x7f8508fc3b17  (/usr/lib/x86_64-linux-gnu/libfontconfig.so.1+0x16b17)
    #19 0x7f8508fc3cb5  (/usr/lib/x86_64-linux-gnu/libfontconfig.so.1+0x16cb5)
    #20 0x7f8508fb6fdc  (/usr/lib/x86_64-linux-gnu/libfontconfig.so.1+0x9fdc)
    #21 0x7f8508fb7018  (/usr/lib/x86_64-linux-gnu/libfontconfig.so.1+0xa018)
    #22 0x7f8511bdfa56  (/usr/lib/x86_64-linux-gnu/libQtGui.so.4+0x23fa56)
    #23 0x7f8511b68851 in QApplicationPrivate::construct(_XDisplay*, unsigned long, unsigned long) (/usr/lib/x86_64-linux-gnu/libQtGui.so.4+0x1c8851)
    #24 0x7f8511b68c27 in QApplication::QApplication(int&, char**, bool, int) (/usr/lib/x86_64-linux-gnu/libQtGui.so.4+0x1c8c27)
    #25 0x122039f in QtSingleApplication::QtSingleApplication(int&, char**, bool) /fuzzing/Clementine/3rdparty/qtsingleapplication/qtsingleapplication.cpp:163:7
    #26 0xa48351 in main /fuzzing/Clementine/src/main.cpp:337:23
    #27 0x7f850fc3c2e0 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x202e0)
    #28 0x95d459 in _start (/fuzzing/Clementine/bin_debug/clementine+0x95d459)

LeakMemory-001.txt
Dockerfile.txt

@JulianVolodia
Copy link
Contributor Author

JulianVolodia commented Sep 14, 2019

#6391 valgrind ; qt5 branch ; realloc crash ; quite NEW

@JulianVolodia
Copy link
Contributor Author

#6309 crash, but WIP; PR merged, before issue author's tests when commenting.

@JulianVolodia
Copy link
Contributor Author

JulianVolodia commented Sep 14, 2019

#4875 memleak, crash description, but unfortunately no info about crashing file example... 1.2.x issue

@JulianVolodia
Copy link
Contributor Author

JulianVolodia commented Sep 14, 2019

#4782 Google Drive indexing issue, 1.2.x issue, tagreader

@JulianVolodia
Copy link
Contributor Author

JulianVolodia commented Sep 14, 2019

#4665 during streaming from inet radio ; long story, all platforms, 7.8 MB/sec increase of used virtmem + huge leakage. Yummy.
Duplicate comments here #2221 but older seems to be touching other thing...

@JulianVolodia
Copy link
Contributor Author

#4115 does it corresponds to Latin1/Ascii helpers from comment? Need to check this out.

@JulianVolodia
Copy link
Contributor Author

#3750 sb blame playlist history to leak mem during loading FLAC. Strange, cacheing all this things? 1.1.x issue... very old. The track of person is gone.

@JulianVolodia
Copy link
Contributor Author

JulianVolodia commented Sep 14, 2019

#3230 need to check very old Clementine 1.0/1.1, on Windows... ;/ but it's interesting. original issue #3229 says doc... and #3144 #3143 and possibly duplicates #2910

Yummy ^ 2 with M$. Cheese

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

1 participant