Hi , I'm adding the hot-plug support to the joystick input driver, but when running in "multi-mode" with "linux-fusion-8.7.0", I'm getting a crash after the first "plug/unplug/plug" below is the full trace: Starting program: /usr/local/bin/df_input --dfb:system=sdl,disable-module=linux_input [Thread debugging using libthread_db enabled]
~~~~~~~~~~~~~~~~~~~~~~~~~~| DirectFB 1.6.0-pre1 |~~~~~~~~~~~~~~~~~~~~~~~~~~ (c) 2001-2010 The world wide DirectFB Open Source Community (c) 2000-2004 Convergence (integrated media) GmbH ---------------------------------------------------------------- (*) DirectFB/Core: Multi Application Core. (2011-10-22 20:47) [ DEBUG ] (*) Fusion/SHM: Using MADV_REMOVE (2.6.40.6 >= 2.6.19.2) [New Thread 0xb7fd7b70 (LWP 9174)] (*) Direct/Thread: Started 'Fusion Dispatch' (-1) [MESSAGING OTHER/OTHER 0/0] <8388608>... [New Thread 0xb77d6b70 (LWP 9175)] (*) Direct/Thread: Started 'Fusion Deferred' (-1) [MESSAGING OTHER/OTHER 0/0] <8388608>... (!) Direct/Modules: Unable to dlopen `/usr/local/lib/directfb-1.6-0/inputdrivers/libdirectfb_input_hub.so'! --> /usr/local/lib/directfb-1.6-0/inputdrivers/libdirectfb_input_hub.so: undefined symbol: CoreInputHubClient_Activate (*) Direct/Modules: suppress module 'linux_input' [New Thread 0xb6d1db70 (LWP 9176)] (*) Direct/Thread: Started 'SDL Input' (-1) [INPUT OTHER/OTHER 0/0] <8388608>... (*) DirectFB/Input: SDL Input 0.1 (Denis Oliver Kropp) [New Thread 0xb651cb70 (LWP 9177)] (*) Direct/Thread: Started 'Hotplug with Joystick' (-1) [INPUT OTHER/OTHER 0/0] <8388608>... (*) DirectFB/Input: Hot-plug detection enabled with Joystick Driver (*) DirectFB/Genefx: MMX detected and enabled (*) DirectFB/Graphics: SDL Graphics 0.1 (directfb.org) [New Thread 0xb5d1bb70 (LWP 9178)] (*) Direct/Thread: Started 'Screen Update' (-1) [OUTPUT OTHER/OTHER 0/0] <8388608>... (*) DirectFB/Core/WM: Default 0.3 (directfb.org) (*) Direct/Interface: Loaded 'FT2' implementation of 'IDirectFBFont'. (*) Direct/Interface: Loaded 'PNG' implementation of 'IDirectFBImageProvider'. [New Thread 0xb4fffb70 (LWP 9190)] (*) Direct/Thread: Started 'Joystick Input' (-1) [INPUT OTHER/OTHER 0/0] <8388608>... (*) DirectFB/Input: Logitech Logitech RumblePad 2 US (0) 0.9 (directfb.org) (!!!) *** ONCE [Joystick sends JS_EVENT_INIT events, make sure it has been calibrated using 'jscal -c' ] *** [joystick.c:117 in joystick_handle_event()] (*) closing device 0xb5000470 [Thread 0xb4fffb70 (LWP 9190) exited] (!) [Hotplug with Joystick 1319330927.466] ( 9177) *** Assertion [call->handler != NULL || call->handler3 != NULL] failed *** [call.c:478 in fusion_call_destroy()] (-) [Hotplug with Joy 1319330927.466,624] ( 9177) Direct/Trap: Raising signal 5 from Assertion... Program received signal SIGTRAP, Trace/breakpoint trap. [Switching to Thread 0xb651cb70 (LWP 9177)] 0x00110424 in __kernel_vsyscall () Missing separate debuginfos, use: debuginfo-install SDL-1.2.14-12.fc15.i686 freetype-2.4.4-4.fc15.i686 freetype-2.4.4-5.fc15.i686 glibc-2.13.90-9.i686 libX11-1.4.3-1.fc15.i686 libXau-1.0.6-2.fc15.i686 libXcursor-1.1.11-3.fc15.i686 libXdamage-1.1.3-2.fc15.i686 libXext-1.2.0-2.fc15.i686 libXfixes-5.0-1.fc15.i686 libXrandr-1.3.1-2.fc15.i686 libXrender-0.9.6-2.fc15.i686 libXxf86vm-1.1.1-2.fc15.i686 libdrm-2.4.25-1.fc15.i686 libgcc-4.6.0-6.fc15.i686 libjpeg-turbo-1.1.0-2.fc15.i686 libpng-1.2.44-3.fc15.i686 libpng-1.2.46-1.fc15.i686 libstdc++-4.6.0-6.fc15.i686 libxcb-1.7-2.fc15.i686 mesa-libGL-7.11-0.9.20110509.0.fc15.i686 zlib-1.2.5-3.fc15.i686 (gdb) bt #0 0x00110424 in __kernel_vsyscall () #1 0x4bd5d9d0 in sigqueue () from /lib/libc.so.6 #2 0x00312876 in direct_trap (domain=0x3155d6 "Assertion", sig=5) at system.c:116 #3 0x002f406b in direct_assertion (exp=0x2e35d0 "call->handler != NULL || call->handler3 != NULL", func=0x2e3758 "fusion_call_destroy", file=0x2e32d8 "call.c", line=478) at debug.c:144 #4 0x002c33c8 in fusion_call_destroy (call=0x20199b24) at call.c:478 #5 0x00187753 in dfb_input_remove_device (device_index=0, driver_in=0x809e938) at input.c:1812 #6 0x0032ac5d in js_hotplug_EventThread (thread=0x809e9d8, hotplug_data=0x809c698) at joystick.c:475 #7 0x00314480 in direct_thread_main (arg=0x809e9d8) at thread.c:439 #8 0x4bec3c5e in start_thread () from /lib/libpthread.so.0 #9 0x4be07b4e in clone () from /lib/libc.so.6 (gdb) in the src/core/input.c there is a call to " fusion_call_destroy( &shared->call )" in "dfb_input_remove_device()" but I was not able to understand how the "shared->call" is recreated after the device is re-plugged. regards. Haithem. -- * "If you ask a question - you will be a fool for 5 minutes, otherwise ignorant for rest of your life" *
_______________________________________________ directfb-dev mailing list directfb-dev@directfb.org http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-dev