* [FFmpeg-devel] [PATCH] configure: Update ossfuzz stuff to clang-12+
@ 2025-07-14 22:24 Michael Niedermayer
2025-07-16 9:58 ` Kacper Michajlow
0 siblings, 1 reply; 6+ messages in thread
From: Michael Niedermayer @ 2025-07-14 22:24 UTC (permalink / raw)
To: FFmpeg development discussions and patches
---
configure | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/configure b/configure
index fc082d5467e..e568eed55d3 100755
--- a/configure
+++ b/configure
@@ -4606,8 +4606,8 @@ 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_ldflags -fsanitize=address,undefined -fsanitize-coverage=trace-pc-guard,trace-cmp
+ add_cflags -fsanitize=fuzzer,address,undefined -fsanitize-memory-track-origins -fno-omit-frame-pointer
+ add_ldflags -fsanitize=address,undefined
}
add_sanitizer_flags(){
--
2.49.0
_______________________________________________
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".
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [FFmpeg-devel] [PATCH] configure: Update ossfuzz stuff to clang-12+
2025-07-14 22:24 [FFmpeg-devel] [PATCH] configure: Update ossfuzz stuff to clang-12+ Michael Niedermayer
@ 2025-07-16 9:58 ` Kacper Michajlow
2025-07-16 10:11 ` Frank Plowman
2025-07-16 13:26 ` Michael Niedermayer
0 siblings, 2 replies; 6+ messages in thread
From: Kacper Michajlow @ 2025-07-16 9:58 UTC (permalink / raw)
To: FFmpeg development discussions and patches
On Tue, 15 Jul 2025 at 00:24, Michael Niedermayer
<michael@niedermayer.cc> wrote:
>
> ---
> configure | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/configure b/configure
> index fc082d5467e..e568eed55d3 100755
> --- a/configure
> +++ b/configure
> @@ -4606,8 +4606,8 @@ 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_ldflags -fsanitize=address,undefined -fsanitize-coverage=trace-pc-guard,trace-cmp
> + add_cflags -fsanitize=fuzzer,address,undefined -fsanitize-memory-track-origins -fno-omit-frame-pointer
> + add_ldflags -fsanitize=address,undefined
> }
How about we remove this block of code? Or move it to
--toolchain=clang-fuzz for local build? In oss-fuzz build environment
(docker) this flags shouldn't be injected (and are not because of grep
checks) and instead CFLAGS are used for compile flags and
--libfuzzer for linking.
- Kacper
_______________________________________________
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".
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [FFmpeg-devel] [PATCH] configure: Update ossfuzz stuff to clang-12+
2025-07-16 9:58 ` Kacper Michajlow
@ 2025-07-16 10:11 ` Frank Plowman
2025-07-16 11:49 ` Frank Plowman
2025-07-16 13:21 ` Michael Niedermayer
2025-07-16 13:26 ` Michael Niedermayer
1 sibling, 2 replies; 6+ messages in thread
From: Frank Plowman @ 2025-07-16 10:11 UTC (permalink / raw)
To: ffmpeg-devel
[-- Attachment #1.1.1.1: Type: text/plain, Size: 1584 bytes --]
On 16/07/2025 18:58, Kacper Michajlow wrote:
> On Tue, 15 Jul 2025 at 00:24, Michael Niedermayer
> <michael@niedermayer.cc> wrote:
>>
>> ---
>> configure | 4 ++--
>> 1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/configure b/configure
>> index fc082d5467e..e568eed55d3 100755
>> --- a/configure
>> +++ b/configure
>> @@ -4606,8 +4606,8 @@ 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_ldflags -fsanitize=address,undefined -fsanitize-coverage=trace-pc-guard,trace-cmp
>> + add_cflags -fsanitize=fuzzer,address,undefined -fsanitize-memory-track-origins -fno-omit-frame-pointer
>> + add_ldflags -fsanitize=address,undefined
>> }
>
> How about we remove this block of code? Or move it to
> --toolchain=clang-fuzz for local build? In oss-fuzz build environment
> (docker) this flags shouldn't be injected (and are not because of grep
> checks) and instead CFLAGS are used for compile flags and
> --libfuzzer for linking.
>
> - Kacper
+1
I have a patch locally which does something similar. We could add these
flags only to those targets which need to be compiled with libfuzzer,
rather than to all CFLAGS. It saves you having to re-configure if you
want to compile some fftool, then some fuzzer binary or vice-versa.
--
Frank
[-- Attachment #1.1.1.2: OpenPGP public key --]
[-- Type: application/pgp-keys, Size: 1091 bytes --]
[-- Attachment #1.2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 236 bytes --]
[-- Attachment #2: Type: text/plain, Size: 251 bytes --]
_______________________________________________
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".
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [FFmpeg-devel] [PATCH] configure: Update ossfuzz stuff to clang-12+
2025-07-16 10:11 ` Frank Plowman
@ 2025-07-16 11:49 ` Frank Plowman
2025-07-16 13:21 ` Michael Niedermayer
1 sibling, 0 replies; 6+ messages in thread
From: Frank Plowman @ 2025-07-16 11:49 UTC (permalink / raw)
To: ffmpeg-devel
[-- Attachment #1.1.1.1: Type: text/plain, Size: 2203 bytes --]
On 16/07/2025 19:11, Frank Plowman wrote:
>
>
> On 16/07/2025 18:58, Kacper Michajlow wrote:
>> On Tue, 15 Jul 2025 at 00:24, Michael Niedermayer
>> <michael@niedermayer.cc> wrote:
>>>
>>> ---
>>> configure | 4 ++--
>>> 1 file changed, 2 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/configure b/configure
>>> index fc082d5467e..e568eed55d3 100755
>>> --- a/configure
>>> +++ b/configure
>>> @@ -4606,8 +4606,8 @@ 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_ldflags -fsanitize=address,undefined -fsanitize-coverage=trace-pc-guard,trace-cmp
>>> + add_cflags -fsanitize=fuzzer,address,undefined -fsanitize-memory-track-origins -fno-omit-frame-pointer
>>> + add_ldflags -fsanitize=address,undefined
>>> }
>>
>> How about we remove this block of code? Or move it to
>> --toolchain=clang-fuzz for local build? In oss-fuzz build environment
>> (docker) this flags shouldn't be injected (and are not because of grep
>> checks) and instead CFLAGS are used for compile flags and
>> --libfuzzer for linking.
>>
>> - Kacper
>
> +1
>
> I have a patch locally which does something similar. We could add these
> flags only to those targets which need to be compiled with libfuzzer,
> rather than to all CFLAGS. It saves you having to re-configure if you
> want to compile some fftool, then some fuzzer binary or vice-versa.
>
It occurred to me that my suggestion might only work in my situation
because I am not actually using the fuzzer binaries to fuzz anything,
but only to run individual fuzzed bitstreams which I have produced using
a different fuzzer. In this situation, it is okay to only link the
final executables with the libfuzzer flags and not the libs. Maybe if
you want to actually do fuzzing with libfuzzer, though, you also need
the libfuzzer flags when linking the libs in order to get the relevant
coverage instrumentation?
--
Frank
[-- Attachment #1.1.1.2: OpenPGP public key --]
[-- Type: application/pgp-keys, Size: 1091 bytes --]
[-- Attachment #1.2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 236 bytes --]
[-- Attachment #2: Type: text/plain, Size: 251 bytes --]
_______________________________________________
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".
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [FFmpeg-devel] [PATCH] configure: Update ossfuzz stuff to clang-12+
2025-07-16 10:11 ` Frank Plowman
2025-07-16 11:49 ` Frank Plowman
@ 2025-07-16 13:21 ` Michael Niedermayer
1 sibling, 0 replies; 6+ messages in thread
From: Michael Niedermayer @ 2025-07-16 13:21 UTC (permalink / raw)
To: FFmpeg development discussions and patches
[-- Attachment #1.1: Type: text/plain, Size: 2163 bytes --]
Hi
On Wed, Jul 16, 2025 at 11:11:13AM +0100, Frank Plowman wrote:
>
>
> On 16/07/2025 18:58, Kacper Michajlow wrote:
> > On Tue, 15 Jul 2025 at 00:24, Michael Niedermayer
> > <michael@niedermayer.cc> wrote:
> >>
> >> ---
> >> configure | 4 ++--
> >> 1 file changed, 2 insertions(+), 2 deletions(-)
> >>
> >> diff --git a/configure b/configure
> >> index fc082d5467e..e568eed55d3 100755
> >> --- a/configure
> >> +++ b/configure
> >> @@ -4606,8 +4606,8 @@ 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_ldflags -fsanitize=address,undefined -fsanitize-coverage=trace-pc-guard,trace-cmp
> >> + add_cflags -fsanitize=fuzzer,address,undefined -fsanitize-memory-track-origins -fno-omit-frame-pointer
> >> + add_ldflags -fsanitize=address,undefined
> >> }
> >
> > How about we remove this block of code? Or move it to
> > --toolchain=clang-fuzz for local build? In oss-fuzz build environment
> > (docker) this flags shouldn't be injected (and are not because of grep
> > checks) and instead CFLAGS are used for compile flags and
> > --libfuzzer for linking.
> >
> > - Kacper
>
> +1
>
> I have a patch locally which does something similar. We could add these
> flags only to those targets which need to be compiled with libfuzzer,
> rather than to all CFLAGS. It saves you having to re-configure if you
> want to compile some fftool, then some fuzzer binary or vice-versa.
I expect that the code a bug is in needs to be build with the sanitizer and
related flags. And that anything that we want fuzzed needs the fuzzer and
related flags
So that basically means everything needs these flags
IIUC in fact even external libs would need them
thx
[...]
--
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
Those who are best at talking, realize last or never when they are wrong.
[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 195 bytes --]
[-- Attachment #2: Type: text/plain, Size: 251 bytes --]
_______________________________________________
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".
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [FFmpeg-devel] [PATCH] configure: Update ossfuzz stuff to clang-12+
2025-07-16 9:58 ` Kacper Michajlow
2025-07-16 10:11 ` Frank Plowman
@ 2025-07-16 13:26 ` Michael Niedermayer
1 sibling, 0 replies; 6+ messages in thread
From: Michael Niedermayer @ 2025-07-16 13:26 UTC (permalink / raw)
To: FFmpeg development discussions and patches
[-- Attachment #1.1: Type: text/plain, Size: 1603 bytes --]
On Wed, Jul 16, 2025 at 11:58:14AM +0200, Kacper Michajlow wrote:
> On Tue, 15 Jul 2025 at 00:24, Michael Niedermayer
> <michael@niedermayer.cc> wrote:
> >
> > ---
> > configure | 4 ++--
> > 1 file changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/configure b/configure
> > index fc082d5467e..e568eed55d3 100755
> > --- a/configure
> > +++ b/configure
> > @@ -4606,8 +4606,8 @@ 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_ldflags -fsanitize=address,undefined -fsanitize-coverage=trace-pc-guard,trace-cmp
> > + add_cflags -fsanitize=fuzzer,address,undefined -fsanitize-memory-track-origins -fno-omit-frame-pointer
> > + add_ldflags -fsanitize=address,undefined
> > }
>
> [...] Or move it to
> --toolchain=clang-fuzz for local build?
If you want to improve this, its welcome!
note though this enables fuzzer+address+undefined theres also memory which
cannot be enabled at the same time it seems (at least not when i tried)
and needs a seperate build.
so toolchain=clang-fuzz is a little to limited
we need fuzz+address+undefined and fuzz+memory at least or something liek that
thx
[...]
--
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
The worst form of inequality is to try to make unequal things equal.
-- Aristotle
[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 195 bytes --]
[-- Attachment #2: Type: text/plain, Size: 251 bytes --]
_______________________________________________
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".
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2025-07-16 13:26 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-07-14 22:24 [FFmpeg-devel] [PATCH] configure: Update ossfuzz stuff to clang-12+ Michael Niedermayer
2025-07-16 9:58 ` Kacper Michajlow
2025-07-16 10:11 ` Frank Plowman
2025-07-16 11:49 ` Frank Plowman
2025-07-16 13:21 ` Michael Niedermayer
2025-07-16 13:26 ` Michael Niedermayer
Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
This inbox may be cloned and mirrored by anyone:
git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
ffmpegdev@gitmailbox.com
public-inbox-index ffmpegdev
Example config snippet for mirrors.
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git