Confirmed, thank you!
The pattern at https://github.com/amadvance/advancecomp/blob/e17d498d4d3bfac8bac34e62dc03f5ddb3be9bea/zopfli/lz77.c#L304 (and in the rest of the function) looks exactly like some of the other issues I've reported and fixed. This sort of pattern falls afoul of compilers getting better at vectorising.
Unaligned access in advcomp's GetMatch causes crash with UBSAN or upcoming GCC 16
Thanks a lot for your patience & work on this. I can't reproduce it anymore. I think we're good to close!
Thank you! I won't declare victory yet but it's looking promising.
OK, @garloff, a friend's setup a VM where they can reproduce it easily and made it available for SSH. Where should I email the credentials to?
Ah, sorry, I thought I had but I can't find it indeed. This fails for me: wget https://www.garloff.de/kurt/linux/ddrescue/dd_rescue-1.99.20.tar.bz2 tar xvf dd_rescue-1.99.20.tar.bz2 cd dd_rescue-1.99.20 make -j all make check while true; do ./test_sparse.sh "-L ./libddr_crypt.so=AES192-CTR:weakrnd:pbkdf2:pass=ABC:" "encrypt" "decrypt" 8388612 || break; done ... but I haven't reproduced it more than once so far this morning. Bad (good) luck, I guess. A friend who can reproduce it is also going to...
Ah, sorry, I thought I had but I can't find it indeed. This fails for me: wget https://www.garloff.de/kurt/linux/ddrescue/dd_rescue-1.99.20.tar.bz2 tar xvf dd_rescue-1.99.20.tar.bz2 cd dd_rescue-1.99.20 make -j all make check while true; do ./test_sparse.sh "-L ./libddr_crypt.so=AES192-CTR:weakrnd:pbkdf2:pass=ABC:" "encrypt" "decrypt" 8388612 || break; done ... but I haven't reproduced it more than one so far this morning. Bad (good) luck, I guess. A friend who can reproduce it is also going to setup...