Msan error in MASA encoder @ 512kbps WB
Basic info
- Commit SHA: b32873b6
Bug description
Clang msan sanitizer error found in MASA encoder:
==138704==WARNING: MemorySanitizer: use-of-uninitialized-value
#0 0x13f879c in write_indices_to_stream /local/knj/ivas-codec/lib_com/bitstream.c:701:22
#1 0x13d6cf2 in write_indices_element /local/knj/ivas-codec/lib_com/bitstream.c:825:17
#2 0x13d43ed in write_indices_ivas /local/knj/ivas-codec/lib_com/bitstream.c:964:9
#3 0x4d0745 in IVAS_ENC_EncodeFrameToSerial /local/knj/ivas-codec/lib_enc/lib_enc.c:1160:5
#4 0x4a2ee6 in main /local/knj/ivas-codec/apps/encoder.c:743:24
#5 0x7f71c5f57d09 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x23d09)
#6 0x41f579 in _start (/local/knj/ivas-codec/CLANG1/IVAS_cod+0x41f579)
Uninitialized value was stored to memory at
#0 0x13f82be in write_indices_to_stream /local/knj/ivas-codec/lib_com/bitstream.c:687:15
#1 0x13d6cf2 in write_indices_element /local/knj/ivas-codec/lib_com/bitstream.c:825:17
#2 0x13d43ed in write_indices_ivas /local/knj/ivas-codec/lib_com/bitstream.c:964:9
#3 0x4d0745 in IVAS_ENC_EncodeFrameToSerial /local/knj/ivas-codec/lib_enc/lib_enc.c:1160:5
#4 0x4a2ee6 in main /local/knj/ivas-codec/apps/encoder.c:743:24
#5 0x7f71c5f57d09 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x23d09)
Uninitialized value was stored to memory at
#0 0x13cb52b in push_next_indice /local/knj/ivas-codec/lib_com/bitstream.c:357:44
#1 0x7cf616 in ivas_qmetadata_enc_encode_hr_384_512 /local/knj/ivas-codec/lib_enc/ivas_qmetadata_enc.c:876:17
#2 0x67a991 in ivas_masa_encode /local/knj/ivas-codec/lib_enc/ivas_masa_enc.c:333:13
#3 0x60cd57 in ivas_enc /local/knj/ivas-codec/lib_enc/ivas_enc.c:235:32
#4 0x4d0560 in IVAS_ENC_EncodeFrameToSerial /local/knj/ivas-codec/lib_enc/lib_enc.c:1153:24
#5 0x4a2ee6 in main /local/knj/ivas-codec/apps/encoder.c:743:24
#6 0x7f71c5f57d09 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x23d09)
Uninitialized value was stored to memory at
#0 0x13ca7ca in push_next_indice /local/knj/ivas-codec/lib_com/bitstream.c:326
#1 0x7cf616 in ivas_qmetadata_enc_encode_hr_384_512 /local/knj/ivas-codec/lib_enc/ivas_qmetadata_enc.c:876:17
#2 0x67a991 in ivas_masa_encode /local/knj/ivas-codec/lib_enc/ivas_masa_enc.c:333:13
#3 0x60cd57 in ivas_enc /local/knj/ivas-codec/lib_enc/ivas_enc.c:235:32
#4 0x4d0560 in IVAS_ENC_EncodeFrameToSerial /local/knj/ivas-codec/lib_enc/lib_enc.c:1153:24
#5 0x4a2ee6 in main /local/knj/ivas-codec/apps/encoder.c:743:24
#6 0x7f71c5f57d09 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x23d09)
Uninitialized value was created by a heap allocation
#0 0x42b33d in malloc /local1/bnd/llvm-8.0.1.src/projects/compiler-rt/lib/msan/msan_interceptors.cc:912:3
#1 0x181da21 in ivas_qmetadata_allocate_memory /local/knj/ivas-codec/lib_com/ivas_qmetadata_com.c:143:95
#2 0x6a1b4c in ivas_masa_enc_config /local/knj/ivas-codec/lib_enc/ivas_masa_enc.c:616:20
#3 0x60c5b7 in ivas_enc /local/knj/ivas-codec/lib_enc/ivas_enc.c:231:32
#4 0x4d0560 in IVAS_ENC_EncodeFrameToSerial /local/knj/ivas-codec/lib_enc/lib_enc.c:1153:24
#5 0x4a2ee6 in main /local/knj/ivas-codec/apps/encoder.c:743:24
#6 0x7f71c5f57d09 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x23d09)
SUMMARY: MemorySanitizer: use-of-uninitialized-value /local/knj/ivas-codec/lib_com/bitstream.c:701:22 in write_indices_to_stream
Not found in test pipeline (yet?).
Ways to reproduce
Using the scripts:
python3 scripts/IvasBuildAndRunChecks.py --checks CLANG1 -m MASA_2TC_1DIR_b512_wb_cbr -p /path/to/my/local/ci_linux_ltv_local.json
or directly:
make clean
make -j CLANG=1
# resample testvector stv1MASA1TC48c.wav to 16kHz here...
./IVAS_cod -masa 2 scripts/testv/stv1MASA1TC48c.met -max_band_ wb 512000 16 stv1MASA1TC48c_16_MASA2TC1DIR.pcm bit