Ping On Tue, 2021-05-18 at 10:41 +0200, Tim Wiederhake wrote: > Ping. > > On Thu, 2021-05-06 at 17:08 +0200, Tim Wiederhake wrote: > > This series enables and adds AddressSanitizer and > > UndefinedBehaviorSanitizer > > builds to the CI. > > > > See: > > https://clang.llvm.org/docs/AddressSanitizer.html and > > https://clang.llvm.org/docs/UndefinedBehaviorSanitizer.html > > > > These sanitizers already found some issues in libvirt, e.g. > > 4eb7c621985dad4de911ec394ac628bd1a5b29ab, > > 1294de209cee6643511265c7e2d4283c047cf652, > > 8b8c91f487592c6c067847ca59dde405ca17573f, or > > 1c34211c22de28127a509edbf2cf2f44cb0d891e. > > > > There exist two more relevant sanitizers, ThreadSanitizer and > > MemorySanitizer. > > Unfortunately, those two require an instrumented build of all > > dependencies, > > including libc, to work correctly. > > > > Note that clang and gcc have different implementations of these > > sanitizers, > > hence the introduction of two new jobs to the CI. The latter one > > issues a > > warning about the use of LD_PRELOAD in `virTestMain`, which in this > > particular case can be safely ignored by setting `ASAN_OPTIONS` to > > verify_asan_link_order=0` for the gcc build. > > > > Changes since V1: > > > > Incorporated changes suggested by Pavel, except for #6 (now #7): > > The > > statement > > in > > https://listman.redhat.com/archives/libvir-list/2021-May/msg00070.html > > on > > the sanitizers working with Fedora 33 is wrong, I was fooled by > > caching. The > > bug described there is present in Fedora 33, 34, and Rawhide. > > > > Cheers, > > Tim > > > > Tim Wiederhake (7): > > meson: Allow larger stack frames when instrumenting > > meson: Allow undefined symbols when sanitizers are enabled > > tests: virfilemock: realpath: Allow non-null second parameter > > openvz: Add missing symbols to libvirt_openvz.syms > > tests: openvzutilstest: Remove duplicate linking with > > libvirt_openvz.a > > virt-aa-helper: Remove duplicate linking with src/datatypes.o > > ci: Enable address and undefined behavior sanitizers > > > > .gitlab-ci.yml | 35 +++++++++++++++++++++++++++++++++++ > > build-aux/syntax-check.mk | 2 +- > > meson.build | 14 ++++++++++---- > > src/libvirt_openvz.syms | 2 ++ > > src/security/meson.build | 1 - > > tests/meson.build | 2 +- > > tests/virfilemock.c | 20 ++++++++++++-------- > > 7 files changed, 61 insertions(+), 15 deletions(-) > > > > -- > > 2.26.3 > > > >