[FFmpeg-devel] [PATCH] avcodec/v210dec: Fix alignment check for AVX2
Reimar Döffinger
Reimar.Doeffinger at gmx.de
Sat May 18 14:05:01 EEST 2019
On 18.05.2019, at 12:15, Michael Niedermayer <michael at niedermayer.cc> wrote:
> On Sat, May 18, 2019 at 12:02:55PM +0200, James Darnley wrote:
>> On 2019-05-18 09:39, Michael Niedermayer wrote:
>>> Fixes: "null pointer dereference"
>>> Fixes: 14551/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_V210_fuzzer-5088609952071680
>>>
>>> Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
>>> Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
>>> ---
>>> libavcodec/v210dec.c | 2 +-
>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/libavcodec/v210dec.c b/libavcodec/v210dec.c
>>> index bc1e1d34ff..5a33d8c089 100644
>>> --- a/libavcodec/v210dec.c
>>> +++ b/libavcodec/v210dec.c
>>> @@ -104,7 +104,7 @@ static int decode_frame(AVCodecContext *avctx, void *data, int *got_frame,
>>> && avpkt->size - 64 >= stride * avctx->height)
>>> psrc += 64;
>>>
>>> - aligned_input = !((uintptr_t)psrc & 0xf) && !(stride & 0xf);
>>> + aligned_input = !((uintptr_t)psrc & 0x1f) && !(stride & 0x1f);
>>> if (aligned_input != s->aligned_input) {
>>> s->aligned_input = aligned_input;
>>> ff_v210dec_init(s);
>>>
>>
>> Ah yes, that'll be needed after the recent addition of avx2. LGTM and
>> sorry.
>>
>
>> I object to the commit message though because it isn't a "null pointer
>> dereference" but if that is the error as reported by the tool then keep
>> it as is.
>
> yes, the tool(s) say things like "Null-dereference READ", "SEGV on unknown address 0x000000000000"
Is that a tool bug or are we missing something that goes on here besides the alignment?
If it's a tool bug can we try to get it fixed?
This has a big risk of wasting time if they print straight-up wrong information...
More information about the ffmpeg-devel
mailing list