On 16/01/2025 19:12, Vitaly Buka via ffmpeg-devel wrote: > UBSAN by default is just prints a mesage and > moves on. This hides a few UBs in fate-suite. > > Signed-off-by: Vitaly Buka <vitalyb...@google.com> > --- > configure | 4 ++-- > libavcodec/aacenc_pred.c | 1 + > libavcodec/ffv1dec.c | 1 + > libavcodec/ffv1enc_template.c | 1 + > libavcodec/get_bits.h | 1 + > libavcodec/indeo3.c | 2 +- > libavcodec/motion_est.c | 1 + > libavcodec/mss2dsp.c | 1 + > libavcodec/opus/dec.c | 1 + > libavcodec/snow.h | 1 + > libavcodec/svq1enc.c | 1 + > libavfilter/vf_curves.c | 1 + > libavfilter/vf_overlay.c | 1 + > libavformat/mov.c | 1 + > libswscale/input.c | 6 ++++++ > libswscale/output.c | 4 ++++ > libswscale/swscale_unscaled.c | 3 +++ > 17 files changed, 28 insertions(+), 3 deletions(-) > > diff --git a/configure b/configure > index 3a1e72e1c6..f2b4fd2c62 100755 > --- a/configure > +++ b/configure > @@ -4568,7 +4568,7 @@ set >> $logfile > test -n "$valgrind" && toolchain="valgrind-memcheck" > > enabled ossfuzz && ! echo $CFLAGS | grep -q -- "-fsanitize=" && ! echo > $CFLAGS | grep -q -- "-fcoverage-mapping" &&{ > - add_cflags -fsanitize=address,undefined > -fsanitize-coverage=trace-pc-guard,trace-cmp -fno-omit-frame-pointer > + add_cflags -fsanitize=address,undefined > -fsanitize-coverage=trace-pc-guard,trace-cmp -fno-omit-frame-pointer > -fno-sanitize-recover=all > add_ldflags -fsanitize=address,undefined > -fsanitize-coverage=trace-pc-guard,trace-cmp > } > > @@ -4591,7 +4591,7 @@ add_sanitizer_flags(){ > add_ldflags -fsanitize=thread > ;; > usan) > - add_cflags -fsanitize=undefined > + add_cflags -fsanitize=undefined -fno-sanitize-recover=all
I agree it would be good to return a nonzero exit code on detecting undefined behaviour when running FATE, but this sets the flag for any --toolchain=*-usan configuration. Personally, I would find it a little unexpected that compiling with --toolchain=*-usan results in anything but the default behaviour of UBSAN, and one might wish to use UBSAN without the flag when testing manually. As an alternative, what about instead setting UBSAN_OPTIONS=halt_on_error=1 only when running the FATE suite or fuzzing? -- Frank _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".