Skip to content

Assertion `a >= 0 && a < (1 << bits) failed in get_relative_dist() src/ref_mvs.c

Reproduced with commit 44ad79e9

Steps to reproduce:

  1. replay testcase with ./dav1d_fuzzer testcase.ivf

testcase.ivf

dav1d_fuzzer: ../src/ref_mvs.c:613: int get_relative_dist(const AV1_COMMON *, int, int): Assertion `a >= 0 && a < (1 << bits)' failed.

==23220==ERROR: AddressSanitizer: ABRT on unknown address 0x03e800005ab4 (pc 0x7fbf788e4428 bp 0x0000006f8f40 sp 0x7ffebfe78048 T0)
    #0 0x7fbf788e4427 in gsignal /build/glibc-Cl5G7W/glibc-2.23/signal/../sysdeps/unix/sysv/linux/raise.c:54
    #1 0x7fbf788e6029 in abort /build/glibc-Cl5G7W/glibc-2.23/stdlib/abort.c:89
    #2 0x7fbf788dcbd6 in __assert_fail_base /build/glibc-Cl5G7W/glibc-2.23/assert/assert.c:92
    #3 0x7fbf788dcc81 in __assert_fail /build/glibc-Cl5G7W/glibc-2.23/assert/assert.c:101
    #4 0x5a9a9f in get_relative_dist src/ref_mvs.c:613:3
    #5 0x5a9a9f in av1_init_ref_mv_common src/ref_mvs.c:2055
    #6 0x5384ea in dav1d_decode_frame src/decode.c:2523:25
    #7 0x545447 in dav1d_submit_frame src/decode.c:3031:20
    #8 0x51cb29 in dav1d_parse_obus src/obu.c:1130:20
    #9 0x5182c2 in dav1d_decode src/lib.c:201:20
    #10 0x512a0d in LLVMFuzzerTestOneInput tests/libfuzzer/dav1d_fuzzer.c:101:19
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information