[libvirt PATCH v2 2/2] ci: Halt on sanitizer errors

Tim Wiederhake posted 2 patches 4 years, 6 months ago
[libvirt PATCH v2 2/2] ci: Halt on sanitizer errors
Posted by Tim Wiederhake 4 years, 6 months ago
The undefined behaviour sanitizer (UBSAN) defaults to merely printing an
error message if it detects undefined behaviour. These error messages often
end up in captured output and do not fail the tests, effectively hiding
the warning. Make the test cases fail to make the issues visible.

Signed-off-by: Tim Wiederhake <twiederh@redhat.com>
---
 .gitlab-ci.yml | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 3cb6ff5e6b..4757139fa9 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -89,6 +89,8 @@ stages:
     - meson build --werror -Ddocs=disabled -Db_lundef=false -Db_sanitize="$SANITIZER"
     - ninja -C build;
     - ninja -C build test;
+  variables:
+    UBSAN_OPTIONS: print_stacktrace=1:halt_on_error=1
 
 # Jobs that we delegate to Cirrus CI because they require an operating
 # system other than Linux. These jobs will only run if the required
-- 
2.31.1

Re: [libvirt PATCH v2 2/2] ci: Halt on sanitizer errors
Posted by Daniel P. Berrangé 4 years, 6 months ago
On Thu, Jul 22, 2021 at 11:00:18AM +0200, Tim Wiederhake wrote:
> The undefined behaviour sanitizer (UBSAN) defaults to merely printing an
> error message if it detects undefined behaviour. These error messages often
> end up in captured output and do not fail the tests, effectively hiding
> the warning. Make the test cases fail to make the issues visible.
> 
> Signed-off-by: Tim Wiederhake <twiederh@redhat.com>
> ---
>  .gitlab-ci.yml | 2 ++
>  1 file changed, 2 insertions(+)

Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>

Regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|