libaom module appears to be crashing on Windows XP
As per a forum post: https://forum.videolan.org/viewtopic.php?f=14&t=152252
Activity
-
Newest first Oldest first
-
Show all activity Show comments only Show history only
- Hugo Beauzée-Luyssen changed milestone to %3.0.15
changed milestone to %3.0.15
added Component::Build system: Contribs label
- Hugo Beauzée-Luyssen added Platform::Windows desktop label
added Platform::Windows desktop label
- Author Developer
dav1d#364 (closed) could be win32 specific instead of winXP specific
Collapse replies That issue is for Windows 10 so it appears to be completely unrelated.
- Please register or sign in to reply
dav1d doesn't support Windows XP (and never will). Minimum requirement is Windows 7.
- Author Developer
I'm not saying it is related, just that it might. Feel free to unlink if you feel this was premature, I was just linking to a potentially related thing until we start a more thorough investigation on VLC's side.
- Hugo Beauzée-Luyssen changed title from dav1d module appears to be crashing on Windows XP to libaom module appears to be crashing on Windows XP
changed title from dav1d module appears to be crashing on Windows XP to libaom module appears to be crashing on Windows XP
- Author Developer
The issue is in the libaom module, not dav1d
- Owner
What is the priority?
- Hugo Beauzée-Luyssen changed milestone to %3.0.x maintenance
changed milestone to %3.0.x maintenance
- Author Developer
Not blocker, AFAICS this is the case since we introduced AV1 support in 3.0
- Owner
This is a blocker, AV1 is now mainstream.
- Author Developer
I really don't think we should delay 3.0.15 because of this.
1 - Author Developer
It seems this isn't XP related, but rather Win32 (as opposed to win64) related, as I can reproduce the issue on Windows 10 with a 32bits VLC:
Thread 30 received signal SIGSEGV, Segmentation fault. [Switching to Thread 14980.0x2b58] 0x56b008f9 in _mm_set_epi16 (q0=<optimized out>, q1=<optimized out>, q2=<optimized out>, q3=<optimized out>, q4=<optimized out>, q5=<optimized out>, q6=<optimized out>, q7=<optimized out>) at /opt/gcc-i686-w64-mingw32/lib/gcc/i686-w64-mingw32/6.4.0/include/emmintrin.h:606 606 /opt/gcc-i686-w64-mingw32/lib/gcc/i686-w64-mingw32/6.4.0/include/emmintrin.h: No such file or directory. (gdb) bt #0 0x56b008f9 in _mm_set_epi16 (__q0=<optimized out>, __q1=<optimized out>, __q2=<optimized out>, __q3=<optimized out>, __q4=<optimized out>, __q5=<optimized out>, __q6=<optimized out>, __q7=<optimized out>) at /opt/gcc-i686-w64-mingw32/lib/gcc/i686-w64-mingw32/6.4.0/include/emmintrin.h:606 #1 _mm_set1_epi16 (__A=-3980) at /opt/gcc-i686-w64-mingw32/lib/gcc/i686-w64-mingw32/6.4.0/include/emmintrin.h:645 #2 aom_paeth_predictor_4x16_ssse3 (dst=0x211a0194 "", stride=768, above=0x226ef114 "\200\200\200\200````▒▒-\002V&\002\"▒▒▒V▒▒▒\020\003", left=0x226ef074 "\200\200\200}hddddddh}\200\200\200") at /home/chouquette/dev/vlc-3.0/contrib/contrib-win32/aom/aom_dsp/x86/intrapred_ssse3.c:92 #3 0x56b34fc8 in build_intra_predictors (xd=0x21b03d60, ref=ref@entry=0x211a0194 "", ref_stride=ref_stride@entry=768, dst=<optimized out>, dst_stride=768, mode=PAETH_PRED, angle_delta=0, filter_intra_mode=FILTER_INTRA_MODES, tx_size=TX_4X16, disable_edge_filter=0, n_top_px=0, n_topright_px=0, n_left_px=16, n_bottomleft_px=0, plane=1) at /home/chouquette/dev/vlc-3.0/contrib/contrib-win32/aom/av1/common/reconintra.c:1492 #4 0x56b37373 in av1_predict_intra_block (cm=<optimized out>, cm@entry=0x1d40dc60, xd=<optimized out>, xd@entry=0x21b03d60, wpx=<optimized out>, hpx=<optimized out>, tx_size=<optimized out>, tx_size@entry=TX_4X16, mode=<optimized out>, mode@entry=PAETH_PRED, angle_delta=<optimized out>, use_palette=<optimized out>, use_palette@entry=0, filter_intra_mode=<optimized out>, ref=<optimized out>, ref@entry=0x211a0194 "", ref_stride=<optimized out>, dst=<optimized out>, dst@entry=0x211a0194 "", dst_stride=768, col_off=col_off@entry=0, row_off=row_off@entry=0, plane=plane@entry=1) at /home/chouquette/dev/vlc-3.0/contrib/contrib-win32/aom/av1/common/reconintra.c:1583 #5 0x56b37961 in av1_predict_intra_block_facade (cm=cm@entry=0x1d40dc60, xd=xd@entry=0x21b03d60, plane=plane@entry=1, blk_col=blk_col@entry=0, blk_row=blk_row@entry=0, tx_size=tx_size@entry=TX_4X16) at /home/chouquette/dev/vlc-3.0/contrib/contrib-win32/aom/av1/common/reconintra.c:1640 #6 0x56ab8048 in predict_and_reconstruct_intra_block (r=0x2201f0fc, tx_size=<optimized out>, col=0, row=0, plane=1, xd=0x21b03d60, cm=0x1d40dc60) at /home/chouquette/dev/vlc-3.0/contrib/contrib-win32/aom/av1/decoder/decodeframe.c:188 #7 decode_token_and_recon_block (bsize=BLOCK_8X32, r=0x2201f0fc, mi_col=98, mi_row=0, xd=0x21b03d60, pbi=0x1d402e60) at /home/chouquette/dev/vlc-3.0/contrib/contrib-win32/aom/av1/decoder/decodeframe.c:1139 #8 decode_block (pbi=pbi@entry=0x1d402e60, xd=xd@entry=0x21b03d60, mi_row=mi_row@entry=0, mi_col=mi_col@entry=98, r=r@entry=0x2201f0fc, partition=partition@entry=PARTITION_VERT_4, bsize=bsize@entry=BLOCK_8X32) at /home/chouquette/dev/vlc-3.0/contrib/contrib-win32/aom/av1/decoder/decodeframe.c:1370 #9 0x56ab9d7a in decode_partition (pbi=pbi@entry=0x1d402e60, xd=xd@entry=0x21b03d60, mi_row=mi_row@entry=0, mi_col=mi_col@entry=96, r=r@entry=0x2201f0fc, bsize=bsize@entry=BLOCK_32X32) at /home/chouquette/dev/vlc-3.0/contrib/contrib-win32/aom/av1/decoder/decodeframe.c:1504 #10 0x56ab9af2 in decode_partition (pbi=pbi@entry=0x1d402e60, xd=xd@entry=0x21b03d60, mi_row=mi_row@entry=0, mi_col=mi_col@entry=96, r=r@entry=0x2201f0fc, bsize=bsize@entry=BLOCK_64X64) at /home/chouquette/dev/vlc-3.0/contrib/contrib-win32/aom/av1/decoder/decodeframe.c:1468 #11 0x56ab9af2 in decode_partition (pbi=pbi@entry=0x1d402e60, xd=xd@entry=0x21b03d60, mi_row=mi_row@entry=0, mi_col=mi_col@entry=96, r=0x2201f0fc, bsize=BLOCK_128X128) at /home/chouquette/dev/vlc-3.0/contrib/contrib-win32/aom/av1/decoder/decodeframe.c:1468 #12 0x56aba65e in decode_tile_sb_row (mi_row=<optimized out>, td=0x21b03d40, pbi=<optimized out>, tile_info=...) at /home/chouquette/dev/vlc-3.0/contrib/contrib-win32/aom/av1/decoder/decodeframe.c:2532 #13 decode_tile (pbi=pbi@entry=0x1d402e60, td=td@entry=0x21b03d40, tile_row=<optimized out>, tile_col=<optimized out>) at /home/chouquette/dev/vlc-3.0/contrib/contrib-win32/aom/av1/decoder/decodeframe.c:2578 #14 0x56abaa65 in tile_worker_hook (arg1=<optimized out>, arg2=<optimized out>) at /home/chouquette/dev/vlc-3.0/contrib/contrib-win32/aom/av1/decoder/decodeframe.c:2794 #15 0x56b0fb18 in execute (worker=0x1d3e2420) at /home/chouquette/dev/vlc-3.0/contrib/contrib-win32/aom/aom_util/aom_thread.c:135 #16 thread_loop (ptr=ptr@entry=0x1d3e2420) at /home/chouquette/dev/vlc-3.0/contrib/contrib-win32/aom/aom_util/aom_thread.c:44 #17 0x56bce6a6 in ptw32_threadStart@4 (vthreadParms=0x1d402740) at ptw32_threadStart.c:225 #18 0x77226cff in msvcrt!_beginthreadex () from C:\Windows\SysWOW64\msvcrt.dll #19 0x77226dc1 in msvcrt!_endthreadex () from C:\Windows\SysWOW64\msvcrt.dll #20 0x765afa29 in KERNEL32!BaseThreadInitThunk () from C:\Windows\SysWOW64\kernel32.dll #21 0x77bf7a7e in ntdll!RtlGetAppContainerNamedObjectPath () from C:\Windows\SysWOW64\ntdll.dll #22 0x77bf7a4e in ntdll!RtlGetAppContainerNamedObjectPath () from C:\Windows\SysWOW64\ntdll.dll #23 0x00
- Author Developer
The problem can also be reproduced with libaom 3.1.0 in VLC 4.0.
It appears to be similar to https://bugs.chromium.org/p/aomedia/issues/detail?id=3025.
Disabling assembly for 32bits windows builds fixes the issue, but we'd ideally need to test on a 64bits XP machine
- Author Developer
Worked around for the 3.0 branch in vlc-3.0@6835e923
- Hugo Beauzée-Luyssen closed
closed
- Hugo Beauzée-Luyssen changed milestone to %3.0.15
changed milestone to %3.0.15
- Hugo Beauzée-Luyssen assigned to @chouquette
assigned to @chouquette