Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Segmentation fault - Linux 32 bit #5

Open
OzFalcon opened this issue Oct 21, 2016 · 8 comments
Open

Segmentation fault - Linux 32 bit #5

OzFalcon opened this issue Oct 21, 2016 · 8 comments
Labels

Comments

@OzFalcon
Copy link
Contributor

OzFalcon commented Oct 21, 2016

Standard Hypseus compiles without any issues.
Segmentation fault occurs whenever video tries to display.

./testvldp /home/arcade/zframefile/lair/dl-slates.m2v
Using opengl rendering
Segmentation fault

See attached logs for more information
When running with noldp option, Game appears to boot (Boot beeps, Credit sounds)

@h0tw1r3
Copy link
Contributor

h0tw1r3 commented Oct 23, 2016

If you could attach a backtrace (run under gdb), that would be very helpful.

@OzFalcon
Copy link
Contributor Author

OzFalcon commented Oct 23, 2016

Rebuilding........
CMakeLists.txt

option(BENCHMARK    "Benchmark"  OFF)
option(DEBUG        "Debug"      ON)
option(VLDP_DEBUG   "VLDP Debug" ON)
option(CPU_DEBUG    "CPU Debug"  OFF)
option(BUILD_SINGE  "Singe"      OFF)
option(BUILDBOT     "Buildbot"   OFF)

@OzFalcon
Copy link
Contributor Author

OzFalcon commented Oct 28, 2016

Testvldp

(gdb) exe testvldp
(gdb) run /home/arcade/zframefile/lair/dl-slates.m2v
Starting program: /home/michael/Workbench/bin.hypseus-1.2.x/testvldp /home/arcade/zframefile/lair/dl-slates.m2v
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/i386-linux-gnu/libthread_db.so.1".
Using opengl rendering
[New Thread 0xb445bb40 (LWP 31838)]

Thread 2 "vldp" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb445bb40 (LWP 31838)]
0x080678cc in ?? ()
(gdb) bt
#0  0x080678cc in ?? ()
#1  0x00000002 in ?? ()
#2  0xb39d504e in ?? ()
Backtrace stopped: Cannot access memory at address 0xbbe80004

@h0tw1r3
Copy link
Contributor

h0tw1r3 commented Aug 7, 2017

Perhaps I should have been more specific. The trace output needs symbols. Enabling the debug options in Cmake is good, but the build type needs to be Debug also.
cmake -DCMAKE_BUILD_TYPE=Debug

@OzFalcon
Copy link
Contributor Author

OzFalcon commented Sep 27, 2017

Update comment to reflect tree 365c0e9 usage

CMakeLists.txt

option(BENCHMARK    "Benchmark"  OFF)
option(DEBUG        "Debug"      ON)
option(VLDP_DEBUG   "VLDP Debug" ON)
option(CPU_DEBUG    "CPU Debug"  OFF)
option(BUILD_SINGE  "Singe"      OFF)
option(BUILDBOT     "Buildbot"   OFF)
cmake -DCMAKE_BUILD_TYPE=debug ../src
make
(gdb) file testvldp 
Reading symbols from testvldp...done.
(gdb) run ../sa-slates.m2v 
Starting program: /home/michael/Workbench/Compile/hypseus-365c0e92d4015f2d504e0120f50354ab851f2782/testvldp ../sa-slates.m2v
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/i386-linux-gnu/libthread_db.so.1".
Using opengl rendering
[New Thread 0xb4528b40 (LWP 31653)]

Thread 2 "vldp" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb4528b40 (LWP 31653)]
mpeg2_idct_copy_sse2 (block=0xb3c0054a, dest=0xb39d6040 "", stride=720) at idct_mmx.c:1228
1228	    sse2_idct (block);
(gdb) bt
#0  mpeg2_idct_copy_sse2 (block=0xb3c0054a, dest=0xb39d6040 "", stride=720) at idct_mmx.c:1228
#1  0x00418043 in slice_intra_DCT (stride=720, dest=0xb39d6040 "", cc=0, decoder=0xb3c00480) at slice.c:954
#2  mpeg2_slice (decoder=0xb3c00480, code=1, 
    buffer=0xb3ad5040 "\v\374\254&\322}\fk7\273q\253\"\251=\254\061\274*(\250\211\350\336\371\026\207\320\063`\362ѻ.\\W\204\235\032\357\224Z<!\263\373\302\233@\276\215V\314G\020\004\245\300\206\350\022\030/ջ\216\032\001\303\065\020n\244,1\253\277\032\071\227\343\253樍\226tD\302\347\035\002H\001\343\062z(!\177\325\361\244\226ɀ\a\035\006\330\002\346\322\b\237\370\241\247\266r)\274\355\203#X") at slice.c:1908
#3  0x0040d39f in mpeg2_parse (mpeg2dec=0xb3c00480) at decode.c:188
#4  0x0040b0c7 in decode_mpeg2 (current=0x46a4a0 <g_buffer> "", end=0x4aa4a0 <g_header_buf> "")
    at /home/michael/Workbench/Compile/hypseus-365c0e92d4015f2d504e0120f50354ab851f2782/src/vldp/vldp_internal.cpp:418
#5  0x0040b948 in ivldp_render ()
    at /home/michael/Workbench/Compile/hypseus-365c0e92d4015f2d504e0120f50354ab851f2782/src/vldp/vldp_internal.cpp:783
#6  0x0040b7ae in idle_handler_play ()
    at /home/michael/Workbench/Compile/hypseus-365c0e92d4015f2d504e0120f50354ab851f2782/src/vldp/vldp_internal.cpp:686
#7  0x0040ab98 in idle_handler (surface=0x0)
    at /home/michael/Workbench/Compile/hypseus-365c0e92d4015f2d504e0120f50354ab851f2782/src/vldp/vldp_internal.cpp:145
#8  0xb7ef2697 in ?? () from /usr/lib/i386-linux-gnu/libSDL2-2.0.so.0
#9  0xb7f4a338 in ?? () from /usr/lib/i386-linux-gnu/libSDL2-2.0.so.0
#10 0xb771727a in start_thread (arg=0xb4528b40) at pthread_create.c:333
#11 0xb7bb0ae6 in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:110
(gdb) 

@OzFalcon
Copy link
Contributor Author

Reading some gdb tutorials to further this investigation.

@OzFalcon
Copy link
Contributor Author

OzFalcon commented Mar 19, 2018

I'm building with tree 365c0e9

@OzFalcon
Copy link
Contributor Author

Backtrace updated to include symbols.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants