Project

General

Profile

Actions

Emulator Issues #332

closed

Dolphin SIGSEGV at Stop Emulation (Linux - Fedora Core 9)

Added by olejl77 about 16 years ago.

Status:
Fixed
Priority:
Normal
Assignee:
-
% Done:

0%

Operating system:
N/A
Issue type:
Bug
Milestone:
Regression:
No
Relates to usability:
No
Relates to performance:
No
Easy:
No
Relates to maintainability:
No
Regression start:
Fixed in:

Description

What steps will reproduce the problem?

  1. Start Dolphin
  2. Run Game (Zelda WW [DC])
  3. Stop Game from GUI

What is the expected output?
Expected the game to stop, and the possibility to start a new one.

What do you see instead?
The game stops, but Dolphin crashes as well.

What version of the product are you using? On what operating system?
Happens on every rev I have tried from around r1100 until r1271

Please provide any additional information below.

#gdb ./Dolphin
GNU gdb Fedora (6.8-23.fc9)
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
<http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu"...
(gdb) run
Starting program: /usr/local/dolphin-emu-read-only/Binary/Linux-
x86_64/Dolphin
[Thread debugging using libthread_db enabled]
[New Thread 0x7fe914701750 (LWP 25814)]
Symbol DllDebugger missing in Plugins/libPlugin_PadSimple.so (error:
Plugins/libPlugin_PadSimple.so: undefined symbol: DllDebugger)
Symbol DllDebugger missing in Plugins/libPlugin_nJoy_SDL.so (error:
Plugins/libPlugin_nJoy_SDL.so: undefined symbol: DllDebugger)
Symbol DllDebugger missing in Plugins/libPlugin_DSP_NULL.so (error:
Plugins/libPlugin_DSP_NULL.so: undefined symbol: DllDebugger)
Symbol DllDebugger missing in Plugins/libPlugin_Wiimote.so (error:
Plugins/libPlugin_Wiimote.so: undefined symbol: DllDebugger)
Could not read ./User/Config/SYSCONF
[New Thread 0x403f9950 (LWP 25997)]
[New Thread 0x42640950 (LWP 26046)]
[Thread 0x42640950 (LWP 26046) exited]
[New Thread 0x42640950 (LWP 26047)]
wiiuse v0.12 loaded.
By: Michael Laforest <thepara[at]gmail{dot}com>
http://wiiuse.net http://wiiuse.sf.net
hci_get_route: No such device
[New Thread 0x196b950 (LWP 26048)]
Open device file: Permission denied
ALSA: underrun, at least 0ms.
[Thread 0x196b950 (LWP 26048) exited]
[INFO] wiiuse clean up...

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x42640950 (LWP 26047)]
0x0000003b9364f30a in snd_pcm_poll_descriptors_revents (pcm=<value
optimized out>, pfds=<value optimized out>, nfds=<value optimized out>,
revents=<value optimized out>) at pcm.c:1429
1429 if (pcm->fast_ops->poll_revents)
Current language: auto; currently c
Missing separate debuginfos, use: debuginfo-install libcroco.x86_64
libgsf.x86_64 librsvg2.x86_64
(gdb) bt
#0 0x0000003b9364f30a in snd_pcm_poll_descriptors_revents (pcm=<value
optimized out>, pfds=<value optimized out>, nfds=<value optimized out>,
revents=<value optimized out>) at pcm.c:1429
#1 0x0000003b93653111 in snd1_pcm_wait_nocheck (pcm=<value optimized
out>, timeout=<value optimized out>) at pcm.c:2350
#2 0x0000003b936534b7 in snd1_pcm_write_areas (pcm=<value optimized out>,
areas=<value optimized out>, offset=<value optimized out>,
size=<value optimized out>, func=<value optimized out>) at pcm.c:6557
#3 0x0000003b93660e3a in snd_pcm_plugin_writei (pcm=<value optimized
out>, buffer=<value optimized out>, size=<value optimized out>)
at pcm_plugin.c:361
#4 0x00007fe8f27af5a4 in ?? ()
#5 0x0000000042640080 in ?? ()
#6 0x0000000042640950 in ?? ()
#7 0x0000000042640080 in ?? ()
#8 0x0000000000a01000 in ?? ()
#9 0x0000003a6741d000 in ?? () from /lib64/ld-linux-x86-64.so.2
#10 0x0000000003d87421 in ?? ()
#11 0x0000000000000000 in ?? ()
(gdb)

Actions #1

Updated by nakeee about 16 years ago

can you see what's happening with the other threads?
what gives Open device file: Permission denied?

Actions #2

Updated by olejl77 about 16 years ago

Permission denied is probably from trying to open /dev/input/event, but I haven't
investegated because it is working. No write permissions for Rumble?

Some more debug info. Please let me know if I can provide any more information.
Program received signal SIGSEGV, Segmentation fault.
getenv (name=) at getenv.c:90
90 if (name_start == ep_start && !strncmp (*ep + 2, name, len)
(gdb) thread apply all backtrace

Thread 1 (Thread 0x7fb94a843750 (LWP 2114)):
#0 getenv (name=) at getenv.c:90
#1 0x0000003b7b0d42e9 in wxGetenv (name=) at
src/common/wxchar.cpp:2156
#2 0x0000003b7b0bd1e4 in wxSystemOptions::GetOption (name=) at
src/common/sysopt.cpp:92
#3 0x0000003b7b0bd369 in wxSystemOptions::GetOptionInt (name=)
at src/common/sysopt.cpp:103
#4 0x00000033d3dfb286 in wxWindow::GtkSendPaintEvents (this=)
at src/gtk/window.cpp:3860
#5 0x00000033d3dfb489 in gtk_window_expose_callback (widget=,
gdk_event=, win=)
at src/gtk/window.cpp:541
#6 0x0000003f8f387452 in _gtk_marshal_BOOLEAN__BOXED (closure=Could not find the
frame base for "_gtk_marshal_BOOLEAN__BOXED".
) at gtkmarshalers.c:84
#7 0x0000003f8ca0b6cd in IA__g_closure_invoke (closure=,
return_value=,
n_param_values=, param_values=,
invocation_hint=) at gclosure.c:490
#8 0x0000003f8ca1f6b1 in signal_emit_unlocked_R (node=,
detail=, instance=,
emission_return=, instance_and_params=) at gsignal.c:2440
#9 0x0000003f8ca20a0f in IA__g_signal_emit_valist (instance=,
signal_id=, detail=,
var_args=) at gsignal.c:2209
#10 0x0000003f8ca210d3 in IA__g_signal_emit (instance=,
signal_id=, detail=)
at gsignal.c:2243
#11 0x0000003f8f4f48be in gtk_widget_event_internal (widget=Could not find the frame
base for "gtk_widget_event_internal".
) at gtkwidget.c:4695
#12 0x0000003f8f4f452e in IA__gtk_widget_send_expose (widget=Could not find the
frame base for "IA__gtk_widget_send_expose".
) at gtkwidget.c:4527
#13 0x0000003f8f3845af in IA__gtk_main_do_event (event=Could not find the frame base
for "IA__gtk_main_do_event".
) at gtkmain.c:1514
#14 0x0000003f8fe3d183 in gdk_window_process_updates_internal (window=Could not find
the frame base for "gdk_window_process_updates_internal".
) at gdkwindow.c:2378
#15 0x0000003f8fe3d2cb in IA__gdk_window_process_all_updates () at gdkwindow.c:2444
#16 0x0000003f8f2cf86d in gtk_container_idle_sizer (data=Could not find the frame
base for "gtk_container_idle_sizer".
) at gtkcontainer.c:1307
#17 0x0000003f8fe1a656 in gdk_threads_dispatch (data=Could not find the frame base
for "gdk_threads_dispatch".
) at gdk.c:470
#18 0x0000003f8923742b in IA__g_main_context_dispatch (context=) at gmain.c:2012
#19 0x0000003f8923ac0d in g_main_context_iterate (context=,
block=, dispatch=,
self=) at gmain.c:2645
#20 0x0000003f8923b13d in IA__g_main_loop_run (loop=) at
gmain.c:2853
#21 0x0000003f8f383db0 in IA__gtk_main () at gtkmain.c:1163
#22 0x00000033d3de6718 in wxEventLoop::Run (this=) at
src/gtk/evtloop.cpp:76
#23 0x00000033d3e6fa6b in wxAppBase::MainLoop (this=) at
src/common/appcmn.cpp:312
---Type to continue, or q to quit---
#24 0x0000003b7b099b9d in wxEntry (argc=, argv=) at src/common/init.cpp:460
#25 0x0000000000440cf2 in main ()
(gdb)

Actions #3

Updated by nakeee almost 16 years ago

does it still happen?
what compiler do you use?

Actions #4

Updated by olejl77 almost 16 years ago

Yes still happens in r1313.

gcc --version
gcc (GCC) 4.3.0 20080428 (Red Hat 4.3.0-8)
Copyright (C) 2008 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Actions #5

Updated by nakeee almost 16 years ago

Sound like the rigth version for the bug
upgrade to 4.3.2

Actions #6

Updated by olejl77 almost 16 years ago

It took a long time for me to upgrade, but that is a different story.

I have now compiled r1395 with:
$ gcc --version
gcc (GCC) 4.3.2 20081105 (Red Hat 4.3.2-7)
Copyright (C) 2008 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

The difference now is I get a 'Zelda ucode chosen' when it exits.
./Dolphin
Symbol DllDebugger missing in Plugins/libPlugin_PadSimple.so (error:
Plugins/libPlugin_PadSimple.so: undefined symbol: DllDebugger)
Symbol DllDebugger missing in Plugins/libPlugin_nJoy_SDL.so (error:
Plugins/libPlugin_nJoy_SDL.so: undefined symbol: DllDebugger)
Symbol DllDebugger missing in Plugins/libPlugin_DSP_NULL.so (error:
Plugins/libPlugin_DSP_NULL.so: undefined symbol: DllDebugger)
Symbol DllDebugger missing in Plugins/libPlugin_Wiimote.so (error:
Plugins/libPlugin_Wiimote.so: undefined symbol: DllDebugger)
Symbol DllDebugger missing in Plugins/libPlugin_nJoy_Testing.so (error:
Plugins/libPlugin_nJoy_Testing.so: undefined symbol: DllDebugger)
wiiuse v0.12 loaded.
By: Michael Laforest <thepara[at]gmail{dot}com>
http://wiiuse.net http://wiiuse.sf.net
hci_get_route: No such device
[INFO] wiiuse clean up...
Zelda ucode chosenSegmentation fault

Actions #7

Updated by nakeee almost 16 years ago

Do you have gdb log by any chance?

Actions #8

Updated by olejl77 almost 16 years ago

I'm not able come that far when using gdb. It either freezes og SIGSEGV before the
emulation is properly started.

I will keep trying...

Actions #9

Updated by Sonicadvance1 almost 16 years ago

Open device file: Permission denied is indeed caused by the rumble. This means that
the file doesn't have write permissions, which is needed to use rumble. Linux doesn't
have write permissions on the file by default.
I should give it a nicer error message in the future.

Actions #10

Updated by tinctorius almost 16 years ago

AFAIK reproducable on Debian lenny (Linux x86_64). Will try to gdb this later.

Actions #11

Updated by Anonymous almost 16 years ago

I'm having the same problem, on all recent SVN revisions, gentoo 64-bit, gcc-4.3.2.
Only the backtrace is a lot different:

Thread 2 (Thread 0x2aaaab3b5950 (LWP 18514)): <- this is the "emu" thread
#0 0x00002ae6b952f9c9 in ?? () from /usr/lib/libglib-2.0.so.0
#1 0x00002ae6b5429a69 in __nptl_deallocate_tsd () from /lib/libpthread.so.0
#2 0x00002ae6b542a0a5 in start_thread () from /lib/libpthread.so.0
#3 0x00002ae6b71836cd in clone () from /lib/libc.so.6
#4 0x0000000000000000 in ?? ()

Thread 1 (Thread 0x2ae6bc83be30 (LWP 18511)):
#0 0x00002ae6b542b68d in pthread_join () from /lib/libpthread.so.0
#1 0x0000000000505084 in Common::Thread::WaitForDeath (this=0xaeec10)
at Source/Core/Common/Src/Thread.cpp:264
...

Actions #12

Updated by nakeee over 15 years ago

I fixed few crash bugs
can you check now?

Actions #13

Updated by Anonymous over 15 years ago

  • Status changed from New to Fixed

dead issue is dead

Actions

Also available in: Atom PDF