Message ID | 20240609005936.5662-1-pal@sandflow.com |
---|---|
State | New |
Headers | show |
Series | [FFmpeg-devel] configure: remove false positives with valgrind-memcheck | expand |
Context | Check | Description |
---|---|---|
andriy/commit_msg_x86 | warning | Please wrap lines in the body of the commit message between 60 and 72 characters. |
andriy/make_x86 | success | Make finished |
andriy/make_fate_x86 | success | Make fate finished |
On 6/8/2024 9:59 PM, pal@sandflow.com wrote: > From: Pierre-Anthony Lemieux <pal@palemieux.com> > > If `--toolchain=valgrind-memcheck` is selected, fate-lavf-asf fails on a false positive. I can't reproduce this. Tried with both --disable-optimizations and without it, on Ubuntu 22.04 x86_64. How are you getting these false positives? > --- > configure | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/configure b/configure > index 6c5b8aab9a..c708f2e38c 100755 > --- a/configure > +++ b/configure > @@ -4571,7 +4571,7 @@ case "$toolchain" in > target_exec_args="--tool=massif --alloc-fn=av_malloc --alloc-fn=av_mallocz --alloc-fn=av_calloc --alloc-fn=av_fast_padded_malloc --alloc-fn=av_fast_malloc --alloc-fn=av_realloc_f --alloc-fn=av_fast_realloc --alloc-fn=av_realloc" > ;; > valgrind-memcheck) > - target_exec_args="--error-exitcode=1 --malloc-fill=0x2a --track-origins=yes --leak-check=full --gen-suppressions=all --suppressions=$source_path/tests/fate-valgrind.supp" > + target_exec_args="--error-exitcode=1 --expensive-definedness-checks=yes --malloc-fill=0x2a --track-origins=yes --leak-check=full --gen-suppressions=all --suppressions=$source_path/tests/fate-valgrind.supp" > ;; > esac > ;;
On Sat, Jun 8, 2024 at 6:13 PM James Almer <jamrial@gmail.com> wrote: > > On 6/8/2024 9:59 PM, pal@sandflow.com wrote: > > From: Pierre-Anthony Lemieux <pal@palemieux.com> > > > > If `--toolchain=valgrind-memcheck` is selected, fate-lavf-asf fails on a false positive. > > I can't reproduce this. Tried with both --disable-optimizations and > without it, on Ubuntu 22.04 x86_64. > How are you getting these false positives? Command and log at https://pastebin.com/3TKk0RF4 > > > --- > > configure | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/configure b/configure > > index 6c5b8aab9a..c708f2e38c 100755 > > --- a/configure > > +++ b/configure > > @@ -4571,7 +4571,7 @@ case "$toolchain" in > > target_exec_args="--tool=massif --alloc-fn=av_malloc --alloc-fn=av_mallocz --alloc-fn=av_calloc --alloc-fn=av_fast_padded_malloc --alloc-fn=av_fast_malloc --alloc-fn=av_realloc_f --alloc-fn=av_fast_realloc --alloc-fn=av_realloc" > > ;; > > valgrind-memcheck) > > - target_exec_args="--error-exitcode=1 --malloc-fill=0x2a --track-origins=yes --leak-check=full --gen-suppressions=all --suppressions=$source_path/tests/fate-valgrind.supp" > > + target_exec_args="--error-exitcode=1 --expensive-definedness-checks=yes --malloc-fill=0x2a --track-origins=yes --leak-check=full --gen-suppressions=all --suppressions=$source_path/tests/fate-valgrind.supp" > > ;; > > esac > > ;; > _______________________________________________ > ffmpeg-devel mailing list > ffmpeg-devel@ffmpeg.org > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel > > To unsubscribe, visit link above, or email > ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
On 6/9/2024 2:56 AM, Pierre-Anthony Lemieux wrote: > On Sat, Jun 8, 2024 at 6:13 PM James Almer <jamrial@gmail.com> wrote: >> >> On 6/8/2024 9:59 PM, pal@sandflow.com wrote: >>> From: Pierre-Anthony Lemieux <pal@palemieux.com> >>> >>> If `--toolchain=valgrind-memcheck` is selected, fate-lavf-asf fails on a false positive. >> >> I can't reproduce this. Tried with both --disable-optimizations and >> without it, on Ubuntu 22.04 x86_64. >> How are you getting these false positives? > > Command and log at https://pastebin.com/3TKk0RF4 But that command is missing all the extra args configure adds to the invocation, before and after your patch. > >> >>> --- >>> configure | 2 +- >>> 1 file changed, 1 insertion(+), 1 deletion(-) >>> >>> diff --git a/configure b/configure >>> index 6c5b8aab9a..c708f2e38c 100755 >>> --- a/configure >>> +++ b/configure >>> @@ -4571,7 +4571,7 @@ case "$toolchain" in >>> target_exec_args="--tool=massif --alloc-fn=av_malloc --alloc-fn=av_mallocz --alloc-fn=av_calloc --alloc-fn=av_fast_padded_malloc --alloc-fn=av_fast_malloc --alloc-fn=av_realloc_f --alloc-fn=av_fast_realloc --alloc-fn=av_realloc" >>> ;; >>> valgrind-memcheck) >>> - target_exec_args="--error-exitcode=1 --malloc-fill=0x2a --track-origins=yes --leak-check=full --gen-suppressions=all --suppressions=$source_path/tests/fate-valgrind.supp" >>> + target_exec_args="--error-exitcode=1 --expensive-definedness-checks=yes --malloc-fill=0x2a --track-origins=yes --leak-check=full --gen-suppressions=all --suppressions=$source_path/tests/fate-valgrind.supp" >>> ;; >>> esac >>> ;; >> _______________________________________________ >> ffmpeg-devel mailing list >> ffmpeg-devel@ffmpeg.org >> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel >> >> To unsubscribe, visit link above, or email >> ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe". > _______________________________________________ > ffmpeg-devel mailing list > ffmpeg-devel@ffmpeg.org > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel > > To unsubscribe, visit link above, or email > ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
On Sun, Jun 9, 2024 at 6:41 AM James Almer <jamrial@gmail.com> wrote: > > On 6/9/2024 2:56 AM, Pierre-Anthony Lemieux wrote: > > On Sat, Jun 8, 2024 at 6:13 PM James Almer <jamrial@gmail.com> wrote: > >> > >> On 6/8/2024 9:59 PM, pal@sandflow.com wrote: > >>> From: Pierre-Anthony Lemieux <pal@palemieux.com> > >>> > >>> If `--toolchain=valgrind-memcheck` is selected, fate-lavf-asf fails on a false positive. > >> > >> I can't reproduce this. Tried with both --disable-optimizations and > >> without it, on Ubuntu 22.04 x86_64. > >> How are you getting these false positives? > > > > Command and log at https://pastebin.com/3TKk0RF4 > > But that command is missing all the extra args configure adds to the > invocation, before and after your patch. Full story. Before the proposed patch, "./configure --toolchain=valgrind-memcheck; make fate-lavf-asf" results in "Conditional jump or move depends on uninitialised value(s)" being emitted on my system (gcc (Ubuntu 9.4.0-1ubuntu1~20.04.1) 9.4.0). The proposed patch only adds "--expensive-definedness-checks=yes" to the "valgrind-memcheck" command line -- this was the result of a discussion on the mailing list. After the proposed patch, "./configure --toolchain=valgrind-memcheck; make fate-lavf-asf" does not result in any error being emitted. The pastebin is intended to isolate the issue/solution. On my system, adding/removing "--expensive-definedness-checks=yes" to the command line removes/triggers the issue. Let me know if you need additional information. Thanks for reviewing. > > > > >> > >>> --- > >>> configure | 2 +- > >>> 1 file changed, 1 insertion(+), 1 deletion(-) > >>> > >>> diff --git a/configure b/configure > >>> index 6c5b8aab9a..c708f2e38c 100755 > >>> --- a/configure > >>> +++ b/configure > >>> @@ -4571,7 +4571,7 @@ case "$toolchain" in > >>> target_exec_args="--tool=massif --alloc-fn=av_malloc --alloc-fn=av_mallocz --alloc-fn=av_calloc --alloc-fn=av_fast_padded_malloc --alloc-fn=av_fast_malloc --alloc-fn=av_realloc_f --alloc-fn=av_fast_realloc --alloc-fn=av_realloc" > >>> ;; > >>> valgrind-memcheck) > >>> - target_exec_args="--error-exitcode=1 --malloc-fill=0x2a --track-origins=yes --leak-check=full --gen-suppressions=all --suppressions=$source_path/tests/fate-valgrind.supp" > >>> + target_exec_args="--error-exitcode=1 --expensive-definedness-checks=yes --malloc-fill=0x2a --track-origins=yes --leak-check=full --gen-suppressions=all --suppressions=$source_path/tests/fate-valgrind.supp" > >>> ;; > >>> esac > >>> ;; > >> _______________________________________________ > >> ffmpeg-devel mailing list > >> ffmpeg-devel@ffmpeg.org > >> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel > >> > >> To unsubscribe, visit link above, or email > >> ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe". > > _______________________________________________ > > ffmpeg-devel mailing list > > ffmpeg-devel@ffmpeg.org > > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel > > > > To unsubscribe, visit link above, or email > > ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe". > _______________________________________________ > ffmpeg-devel mailing list > ffmpeg-devel@ffmpeg.org > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel > > To unsubscribe, visit link above, or email > ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
On Sun, Jun 9, 2024 at 9:00 AM Pierre-Anthony Lemieux <pal@sandflow.com> wrote: > > On Sun, Jun 9, 2024 at 6:41 AM James Almer <jamrial@gmail.com> wrote: > > > > On 6/9/2024 2:56 AM, Pierre-Anthony Lemieux wrote: > > > On Sat, Jun 8, 2024 at 6:13 PM James Almer <jamrial@gmail.com> wrote: > > >> > > >> On 6/8/2024 9:59 PM, pal@sandflow.com wrote: > > >>> From: Pierre-Anthony Lemieux <pal@palemieux.com> > > >>> > > >>> If `--toolchain=valgrind-memcheck` is selected, fate-lavf-asf fails on a false positive. > > >> > > >> I can't reproduce this. Tried with both --disable-optimizations and > > >> without it, on Ubuntu 22.04 x86_64. > > >> How are you getting these false positives? > > > > > > Command and log at https://pastebin.com/3TKk0RF4 > > > > But that command is missing all the extra args configure adds to the > > invocation, before and after your patch. Quick note to check if I have addressed your comment. > > Full story. > > Before the proposed patch, "./configure --toolchain=valgrind-memcheck; > make fate-lavf-asf" results in "Conditional jump or move depends on > uninitialised value(s)" being emitted on my system (gcc (Ubuntu > 9.4.0-1ubuntu1~20.04.1) 9.4.0). > > The proposed patch only adds "--expensive-definedness-checks=yes" to > the "valgrind-memcheck" command line -- this was the result of a > discussion on the mailing list. > > After the proposed patch, "./configure --toolchain=valgrind-memcheck; > make fate-lavf-asf" does not result in any error being emitted. > > The pastebin is intended to isolate the issue/solution. On my system, > adding/removing "--expensive-definedness-checks=yes" to the command > line removes/triggers the issue. > > Let me know if you need additional information. > > Thanks for reviewing. > > > > > > > > >> > > >>> --- > > >>> configure | 2 +- > > >>> 1 file changed, 1 insertion(+), 1 deletion(-) > > >>> > > >>> diff --git a/configure b/configure > > >>> index 6c5b8aab9a..c708f2e38c 100755 > > >>> --- a/configure > > >>> +++ b/configure > > >>> @@ -4571,7 +4571,7 @@ case "$toolchain" in > > >>> target_exec_args="--tool=massif --alloc-fn=av_malloc --alloc-fn=av_mallocz --alloc-fn=av_calloc --alloc-fn=av_fast_padded_malloc --alloc-fn=av_fast_malloc --alloc-fn=av_realloc_f --alloc-fn=av_fast_realloc --alloc-fn=av_realloc" > > >>> ;; > > >>> valgrind-memcheck) > > >>> - target_exec_args="--error-exitcode=1 --malloc-fill=0x2a --track-origins=yes --leak-check=full --gen-suppressions=all --suppressions=$source_path/tests/fate-valgrind.supp" > > >>> + target_exec_args="--error-exitcode=1 --expensive-definedness-checks=yes --malloc-fill=0x2a --track-origins=yes --leak-check=full --gen-suppressions=all --suppressions=$source_path/tests/fate-valgrind.supp" > > >>> ;; > > >>> esac > > >>> ;; > > >> _______________________________________________ > > >> ffmpeg-devel mailing list > > >> ffmpeg-devel@ffmpeg.org > > >> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel > > >> > > >> To unsubscribe, visit link above, or email > > >> ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe". > > > _______________________________________________ > > > ffmpeg-devel mailing list > > > ffmpeg-devel@ffmpeg.org > > > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel > > > > > > To unsubscribe, visit link above, or email > > > ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe". > > _______________________________________________ > > ffmpeg-devel mailing list > > ffmpeg-devel@ffmpeg.org > > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel > > > > To unsubscribe, visit link above, or email > > ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
On 6/13/2024 2:00 PM, Pierre-Anthony Lemieux wrote: > On Sun, Jun 9, 2024 at 9:00 AM Pierre-Anthony Lemieux <pal@sandflow.com> wrote: >> >> On Sun, Jun 9, 2024 at 6:41 AM James Almer <jamrial@gmail.com> wrote: >>> >>> On 6/9/2024 2:56 AM, Pierre-Anthony Lemieux wrote: >>>> On Sat, Jun 8, 2024 at 6:13 PM James Almer <jamrial@gmail.com> wrote: >>>>> >>>>> On 6/8/2024 9:59 PM, pal@sandflow.com wrote: >>>>>> From: Pierre-Anthony Lemieux <pal@palemieux.com> >>>>>> >>>>>> If `--toolchain=valgrind-memcheck` is selected, fate-lavf-asf fails on a false positive. >>>>> >>>>> I can't reproduce this. Tried with both --disable-optimizations and >>>>> without it, on Ubuntu 22.04 x86_64. >>>>> How are you getting these false positives? >>>> >>>> Command and log at https://pastebin.com/3TKk0RF4 >>> >>> But that command is missing all the extra args configure adds to the >>> invocation, before and after your patch. > > Quick note to check if I have addressed your comment. > >> >> Full story. >> >> Before the proposed patch, "./configure --toolchain=valgrind-memcheck; >> make fate-lavf-asf" results in "Conditional jump or move depends on >> uninitialised value(s)" being emitted on my system (gcc (Ubuntu >> 9.4.0-1ubuntu1~20.04.1) 9.4.0). >> >> The proposed patch only adds "--expensive-definedness-checks=yes" to >> the "valgrind-memcheck" command line -- this was the result of a >> discussion on the mailing list. >> >> After the proposed patch, "./configure --toolchain=valgrind-memcheck; >> make fate-lavf-asf" does not result in any error being emitted. >> >> The pastebin is intended to isolate the issue/solution. On my system, >> adding/removing "--expensive-definedness-checks=yes" to the command >> line removes/triggers the issue. >> >> Let me know if you need additional information. >> >> Thanks for reviewing. I still can't reproduce this issue. Valgrind does not complain about this test at all for me no matter what settings do i use. The name --expensive-definedness-checks=yes implies that Valgrind will do extra work that will slow the process even more than it already is. I'd like someone else's opinion about it (Andreas maybe, since he suggested this change). >> >>> >>>> >>>>> >>>>>> --- >>>>>> configure | 2 +- >>>>>> 1 file changed, 1 insertion(+), 1 deletion(-) >>>>>> >>>>>> diff --git a/configure b/configure >>>>>> index 6c5b8aab9a..c708f2e38c 100755 >>>>>> --- a/configure >>>>>> +++ b/configure >>>>>> @@ -4571,7 +4571,7 @@ case "$toolchain" in >>>>>> target_exec_args="--tool=massif --alloc-fn=av_malloc --alloc-fn=av_mallocz --alloc-fn=av_calloc --alloc-fn=av_fast_padded_malloc --alloc-fn=av_fast_malloc --alloc-fn=av_realloc_f --alloc-fn=av_fast_realloc --alloc-fn=av_realloc" >>>>>> ;; >>>>>> valgrind-memcheck) >>>>>> - target_exec_args="--error-exitcode=1 --malloc-fill=0x2a --track-origins=yes --leak-check=full --gen-suppressions=all --suppressions=$source_path/tests/fate-valgrind.supp" >>>>>> + target_exec_args="--error-exitcode=1 --expensive-definedness-checks=yes --malloc-fill=0x2a --track-origins=yes --leak-check=full --gen-suppressions=all --suppressions=$source_path/tests/fate-valgrind.supp" >>>>>> ;; >>>>>> esac >>>>>> ;; >>>>> _______________________________________________ >>>>> ffmpeg-devel mailing list >>>>> ffmpeg-devel@ffmpeg.org >>>>> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel >>>>> >>>>> To unsubscribe, visit link above, or email >>>>> ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe". >>>> _______________________________________________ >>>> ffmpeg-devel mailing list >>>> ffmpeg-devel@ffmpeg.org >>>> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel >>>> >>>> To unsubscribe, visit link above, or email >>>> ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe". >>> _______________________________________________ >>> ffmpeg-devel mailing list >>> ffmpeg-devel@ffmpeg.org >>> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel >>> >>> To unsubscribe, visit link above, or email >>> ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
diff --git a/configure b/configure index 6c5b8aab9a..c708f2e38c 100755 --- a/configure +++ b/configure @@ -4571,7 +4571,7 @@ case "$toolchain" in target_exec_args="--tool=massif --alloc-fn=av_malloc --alloc-fn=av_mallocz --alloc-fn=av_calloc --alloc-fn=av_fast_padded_malloc --alloc-fn=av_fast_malloc --alloc-fn=av_realloc_f --alloc-fn=av_fast_realloc --alloc-fn=av_realloc" ;; valgrind-memcheck) - target_exec_args="--error-exitcode=1 --malloc-fill=0x2a --track-origins=yes --leak-check=full --gen-suppressions=all --suppressions=$source_path/tests/fate-valgrind.supp" + target_exec_args="--error-exitcode=1 --expensive-definedness-checks=yes --malloc-fill=0x2a --track-origins=yes --leak-check=full --gen-suppressions=all --suppressions=$source_path/tests/fate-valgrind.supp" ;; esac ;;
From: Pierre-Anthony Lemieux <pal@palemieux.com> If `--toolchain=valgrind-memcheck` is selected, fate-lavf-asf fails on a false positive. --- configure | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)