Thread: Re: [Touchd-devel] Interested by touchd
Status: Alpha
Brought to you by:
tannewt
From: Anthony C. <cal...@gm...> - 2008-05-01 22:09:19
|
Hey Scott, Thanks for the answer but you must have forgot the attachment :o) I thought it was in the SVN... Could you send me your new version of touchd.c so I could try to debug a bit further ? Cheers LeTic On Thu, May 1, 2008 at 3:54 AM, Scott Shawcroft <sco...@gm...> wrote: > LeTic, > Neat! I've never had that problem before. Are you running Hardy Heron? I > agree with you that the main loop was in device_new but am uncertain thats > where the problem was because the backtrace had dbus stuff in it. In fact > you can see the segfault comes from process 6531 and the uinput stuff should > be in 6512 still. > > I've attached a new version of touchd.c with more debug statements. > They'll give us a better idea about how far the main loop is getting. > However, I think its a dbus problem. > Thanks, > Scott > > P.S. I cced the touchd-devel mailing list to archive the issue. You can > join it through the sourceforge project page at sf.net/projects/touchd. > > > > Anthony Callegaro wrote: > >> Hi Tannewt, >> >> My girlfriend bought a MacBook Pro 4.1 like yours being used to have >> Debian on our home box I installed Ubuntu for her. When trying to get touchd >> working I hit some issues. >> >> ./touchd >> ** (process:6418): DEBUG: Running touchd version alpha 2. >> ** (process:6418): DEBUG: Connecting to the Session D-Bus. >> ** (process:6418): DEBUG: Registering the well-known name >> (org.tannewt.touchd). >> ** (process:6418): DEBUG: RequestName returned 1. >> ** (process:6418): DEBUG: Creating one Touchd object. >> ** (process:6418): DEBUG: Initializing Touchd class. >> ** (process:6418): DEBUG: Creating the signals. >> ** (process:6418): DEBUG: Binding to GLib/D-Bus. >> ** (process:6418): DEBUG: Initializing TouchdObject. >> ** (process:6418): DEBUG: Registering it on the D-Bus. >> ** (process:6418): DEBUG: Ready to serve requests. >> ** (process:6418): DEBUG: Setting up uinput device. >> Segmentation fault >> >> The backtrace in gdb isn't very verbose >> ** (process:6512): DEBUG: Setting up uinput device. >> [New Thread 0xb7cab720 (LWP 6512)] >> [New Thread 0xb7caab90 (LWP 6523)] >> [New Thread 0xb74a9b90 (LWP 6528)] >> [New Thread 0xb6c82b90 (LWP 6531)] >> >> Program received signal SIGSEGV, Segmentation fault. >> [Switching to Thread 0xb6c82b90 (LWP 6531)] >> 0xb7d7c463 in memmove () from /lib/tls/i686/cmov/libc.so.6 >> (gdb) bt >> #0 0xb7d7c463 in memmove () from /lib/tls/i686/cmov/libc.so.6 >> #1 0xb7fa73b2 in ?? () from /usr/lib/libdbus-1.so.3 >> #2 0x080672a0 in ?? () >> #3 0x0806927f in ?? () >> #4 0xffffe042 in ?? () >> #5 0xb7fa5479 in ?? () from /usr/lib/libdbus-1.so.3 >> #6 0x08059b60 in ?? () >> #7 0x0805a3f0 in ?? () >> #8 0x00000000 in ?? () >> >> It might be coming from : >> touchdObj->device = device_new(); >> >> But my uinput device is correctly created in /dev/input/uinput >> >> Any idea to get me started ? >> >> Anyway I would be very interested in helping you in this project. Let me >> know what I can do. >> Cheers >> LeTic >> > |
From: Anthony C. <cal...@gm...> - 2008-05-05 12:26:16
|
Hey Scott, Cheers for that. I used your new code and here is the result of my investigation : If I run touchd in the terminal this is what I get : ./touchd ** (process:27596): DEBUG: Running touchd version alpha 2. ** (process:27596): DEBUG: Connecting to the Session D-Bus. ** (process:27596): DEBUG: Registering the well-known name (org.tannewt.touchd). ** (process:27596): DEBUG: RequestName returned 1. ** (process:27596): DEBUG: Creating one Touchd object. ** (process:27596): DEBUG: Initializing Touchd class. ** (process:27596): DEBUG: Creating the signals. ** (process:27596): DEBUG: Binding to GLib/D-Bus. ** (process:27596): DEBUG: Initializing TouchdObject. ** (process:27596): DEBUG: Registering it on the D-Bus. ** (process:27596): DEBUG: Ready to serve requests. ** (process:27596): DEBUG: Setting up uinput device. ** (process:27596): DEBUG: Running the device. ** (process:27596): DEBUG: Initializing the hardware. Segmentation fault I next tried in gdb : (gdb) run Starting program: /home/letic/Desktop/touchd-svn/src/touchd [Thread debugging using libthread_db enabled] ** (process:8084): DEBUG: Running touchd version alpha 2. ** (process:8084): DEBUG: Connecting to the Session D-Bus. ** (process:8084): DEBUG: Registering the well-known name (org.tannewt.touchd). ** (process:8084): DEBUG: RequestName returned 1. ** (process:8084): DEBUG: Creating one Touchd object. ** (process:8084): DEBUG: Initializing Touchd class. ** (process:8084): DEBUG: Creating the signals. ** (process:8084): DEBUG: Binding to GLib/D-Bus. ** (process:8084): DEBUG: Initializing TouchdObject. ** (process:8084): DEBUG: Registering it on the D-Bus. ** (process:8084): DEBUG: Ready to serve requests. ** (process:8084): DEBUG: Setting up uinput device. ** (process:8084): DEBUG: Running the device. [New Thread 0xb7bd5720 (LWP 8084)] [New Thread 0xb7bd4b90 (LWP 8093)] ** (process:8084): DEBUG: Initializing the hardware. [New Thread 0xb73d3b90 (LWP 8095)] [New Thread 0xb6bacb90 (LWP 8101)] Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 0xb6bacb90 (LWP 8101)] 0xb7ca6463 in memmove () from /lib/tls/i686/cmov/libc.so.6 (gdb) bt #0 0xb7ca6463 in memmove () from /lib/tls/i686/cmov/libc.so.6 #1 0xb7ed13b2 in ?? () from /usr/lib/libdbus-1.so.3 #2 0x080674a0 in ?? () #3 0x0806947f in ?? () #4 0xffffe021 in ?? () #5 0xb7ecf479 in ?? () from /usr/lib/libdbus-1.so.3 #6 0x08059be0 in ?? () #7 0x0805a470 in ?? () #8 0x00000000 in ?? () As I don't know gdb that well I then used nemiver (gnome frontend for gdb) to get the source backtrace manually and here is what I get : So in touchd.c it hangs on line 274 : MultitouchData* md = multitouch_init(touchdObj->device->queue); multitouch.c line 67 : int32_t result = openusb_init(0 , &handle ); usb.c line 618 : usbi_rescan_devices(); devices.c line 258 : ibus->ops->refresh_devices(ibus); linux.c line 2214 : device_names = libhal_get_all_devices (hal_ctx, &num_devices, &error); I can't get any further than this. I guess I would need to download hal sources to follow... Let me know if I can give you more information, and what you would need. Cheers LeTic On Fri, May 2, 2008 at 3:11 AM, Scott Shawcroft <sco...@gm...> wrote: > LeTic, > I totally forgot! I also checked it into subversion. > Thanks, > Scott > > Anthony Callegaro wrote: > >> Hey Scott, >> >> Thanks for the answer but you must have forgot the attachment :o) I >> thought it was in the SVN... Could you send me your new version of touchd.c >> so I could try to debug a bit further ? >> >> Cheers >> LeTic >> >> On Thu, May 1, 2008 at 3:54 AM, Scott Shawcroft < >> sco...@gm... <mailto:sco...@gm...>> wrote: >> >> LeTic, >> Neat! I've never had that problem before. Are you running Hardy >> Heron? I agree with you that the main loop was in device_new but >> am uncertain thats where the problem was because the backtrace had >> dbus stuff in it. In fact you can see the segfault comes from >> process 6531 and the uinput stuff should be in 6512 still. >> >> I've attached a new version of touchd.c with more debug >> statements. They'll give us a better idea about how far the main >> loop is getting. However, I think its a dbus problem. >> Thanks, >> Scott >> >> P.S. I cced the touchd-devel mailing list to archive the issue. >> You can join it through the sourceforge project page at >> sf.net/projects/touchd <http://sf.net/projects/touchd>. >> >> >> >> >> Anthony Callegaro wrote: >> >> Hi Tannewt, >> >> My girlfriend bought a MacBook Pro 4.1 like yours being used >> to have Debian on our home box I installed Ubuntu for her. >> When trying to get touchd working I hit some issues. >> >> ./touchd >> ** (process:6418): DEBUG: Running touchd version alpha 2. >> ** (process:6418): DEBUG: Connecting to the Session D-Bus. >> ** (process:6418): DEBUG: Registering the well-known name >> (org.tannewt.touchd). >> ** (process:6418): DEBUG: RequestName returned 1. >> ** (process:6418): DEBUG: Creating one Touchd object. >> ** (process:6418): DEBUG: Initializing Touchd class. >> ** (process:6418): DEBUG: Creating the signals. >> ** (process:6418): DEBUG: Binding to GLib/D-Bus. >> ** (process:6418): DEBUG: Initializing TouchdObject. >> ** (process:6418): DEBUG: Registering it on the D-Bus. >> ** (process:6418): DEBUG: Ready to serve requests. >> ** (process:6418): DEBUG: Setting up uinput device. >> Segmentation fault >> >> The backtrace in gdb isn't very verbose >> ** (process:6512): DEBUG: Setting up uinput device. >> [New Thread 0xb7cab720 (LWP 6512)] >> [New Thread 0xb7caab90 (LWP 6523)] >> [New Thread 0xb74a9b90 (LWP 6528)] >> [New Thread 0xb6c82b90 (LWP 6531)] >> >> Program received signal SIGSEGV, Segmentation fault. >> [Switching to Thread 0xb6c82b90 (LWP 6531)] >> 0xb7d7c463 in memmove () from /lib/tls/i686/cmov/libc.so.6 >> (gdb) bt >> #0 0xb7d7c463 in memmove () from /lib/tls/i686/cmov/libc.so.6 >> #1 0xb7fa73b2 in ?? () from /usr/lib/libdbus-1.so.3 >> #2 0x080672a0 in ?? () >> #3 0x0806927f in ?? () >> #4 0xffffe042 in ?? () >> #5 0xb7fa5479 in ?? () from /usr/lib/libdbus-1.so.3 >> #6 0x08059b60 in ?? () >> #7 0x0805a3f0 in ?? () >> #8 0x00000000 in ?? () >> >> It might be coming from : >> touchdObj->device = device_new(); >> >> But my uinput device is correctly created in /dev/input/uinput >> >> Any idea to get me started ? >> >> Anyway I would be very interested in helping you in this >> project. Let me know what I can do. >> Cheers >> LeTic >> >> >> |
From: Scott S. <sco...@gm...> - 2008-05-05 15:53:34
|
LeTic, What would help now is knowing more about your system. What distro? What architecture? An lspci. What version of dbus do you have? What version of OpenUSB? What kernel? I don't think its a problem with my code. However, theres always a chance there is. Thanks, Scott Anthony Callegaro wrote: > Hey Scott, > > Cheers for that. I used your new code and here is the result of my > investigation : > > If I run touchd in the terminal this is what I get : > ./touchd > ** (process:27596): DEBUG: Running touchd version alpha 2. > ** (process:27596): DEBUG: Connecting to the Session D-Bus. > ** (process:27596): DEBUG: Registering the well-known name > (org.tannewt.touchd). > ** (process:27596): DEBUG: RequestName returned 1. > ** (process:27596): DEBUG: Creating one Touchd object. > ** (process:27596): DEBUG: Initializing Touchd class. > ** (process:27596): DEBUG: Creating the signals. > ** (process:27596): DEBUG: Binding to GLib/D-Bus. > ** (process:27596): DEBUG: Initializing TouchdObject. > ** (process:27596): DEBUG: Registering it on the D-Bus. > ** (process:27596): DEBUG: Ready to serve requests. > ** (process:27596): DEBUG: Setting up uinput device. > ** (process:27596): DEBUG: Running the device. > ** (process:27596): DEBUG: Initializing the hardware. > Segmentation fault > > I next tried in gdb : > (gdb) run > Starting program: /home/letic/Desktop/touchd-svn/src/touchd > [Thread debugging using libthread_db enabled] > ** (process:8084): DEBUG: Running touchd version alpha 2. > ** (process:8084): DEBUG: Connecting to the Session D-Bus. > ** (process:8084): DEBUG: Registering the well-known name > (org.tannewt.touchd). > ** (process:8084): DEBUG: RequestName returned 1. > ** (process:8084): DEBUG: Creating one Touchd object. > ** (process:8084): DEBUG: Initializing Touchd class. > ** (process:8084): DEBUG: Creating the signals. > ** (process:8084): DEBUG: Binding to GLib/D-Bus. > ** (process:8084): DEBUG: Initializing TouchdObject. > ** (process:8084): DEBUG: Registering it on the D-Bus. > ** (process:8084): DEBUG: Ready to serve requests. > ** (process:8084): DEBUG: Setting up uinput device. > ** (process:8084): DEBUG: Running the device. > [New Thread 0xb7bd5720 (LWP 8084)] > [New Thread 0xb7bd4b90 (LWP 8093)] > ** (process:8084): DEBUG: Initializing the hardware. > [New Thread 0xb73d3b90 (LWP 8095)] > [New Thread 0xb6bacb90 (LWP 8101)] > > Program received signal SIGSEGV, Segmentation fault. > [Switching to Thread 0xb6bacb90 (LWP 8101)] > 0xb7ca6463 in memmove () from /lib/tls/i686/cmov/libc.so.6 > (gdb) bt > #0 0xb7ca6463 in memmove () from /lib/tls/i686/cmov/libc.so.6 > #1 0xb7ed13b2 in ?? () from /usr/lib/libdbus-1.so.3 > #2 0x080674a0 in ?? () > #3 0x0806947f in ?? () > #4 0xffffe021 in ?? () > #5 0xb7ecf479 in ?? () from /usr/lib/libdbus-1.so.3 > #6 0x08059be0 in ?? () > #7 0x0805a470 in ?? () > #8 0x00000000 in ?? () > > As I don't know gdb that well I then used nemiver (gnome frontend for > gdb) to get the source backtrace manually and here is what I get : > So in touchd.c it hangs on line 274 : MultitouchData* md = > multitouch_init(touchdObj->device->queue); > multitouch.c line 67 : int32_t result = openusb_init(0 , &handle ); > usb.c line 618 : usbi_rescan_devices(); > devices.c line 258 : ibus->ops->refresh_devices(ibus); > linux.c line 2214 : device_names = libhal_get_all_devices (hal_ctx, > &num_devices, &error); > > I can't get any further than this. I guess I would need to download > hal sources to follow... > > Let me know if I can give you more information, and what you would need. > Cheers > LeTic > > On Fri, May 2, 2008 at 3:11 AM, Scott Shawcroft > <sco...@gm... <mailto:sco...@gm...>> wrote: > > LeTic, > I totally forgot! I also checked it into subversion. > Thanks, > Scott > > Anthony Callegaro wrote: > > Hey Scott, > > Thanks for the answer but you must have forgot the attachment > :o) I thought it was in the SVN... Could you send me your new > version of touchd.c so I could try to debug a bit further ? > > Cheers > LeTic > > On Thu, May 1, 2008 at 3:54 AM, Scott Shawcroft > <sco...@gm... <mailto:sco...@gm...> > <mailto:sco...@gm... > <mailto:sco...@gm...>>> wrote: > > LeTic, > Neat! I've never had that problem before. Are you running > Hardy > Heron? I agree with you that the main loop was in > device_new but > am uncertain thats where the problem was because the > backtrace had > dbus stuff in it. In fact you can see the segfault comes from > process 6531 and the uinput stuff should be in 6512 still. > > I've attached a new version of touchd.c with more debug > statements. They'll give us a better idea about how far > the main > loop is getting. However, I think its a dbus problem. > Thanks, > Scott > > P.S. I cced the touchd-devel mailing list to archive the issue. > You can join it through the sourceforge project page at > sf.net/projects/touchd <http://sf.net/projects/touchd> > <http://sf.net/projects/touchd>. > > > > > Anthony Callegaro wrote: > > Hi Tannewt, > > My girlfriend bought a MacBook Pro 4.1 like yours being > used > to have Debian on our home box I installed Ubuntu for her. > When trying to get touchd working I hit some issues. > > ./touchd > ** (process:6418): DEBUG: Running touchd version alpha 2. > ** (process:6418): DEBUG: Connecting to the Session D-Bus. > ** (process:6418): DEBUG: Registering the well-known name > (org.tannewt.touchd). > ** (process:6418): DEBUG: RequestName returned 1. > ** (process:6418): DEBUG: Creating one Touchd object. > ** (process:6418): DEBUG: Initializing Touchd class. > ** (process:6418): DEBUG: Creating the signals. > ** (process:6418): DEBUG: Binding to GLib/D-Bus. > ** (process:6418): DEBUG: Initializing TouchdObject. > ** (process:6418): DEBUG: Registering it on the D-Bus. > ** (process:6418): DEBUG: Ready to serve requests. > ** (process:6418): DEBUG: Setting up uinput device. > Segmentation fault > > The backtrace in gdb isn't very verbose > ** (process:6512): DEBUG: Setting up uinput device. > [New Thread 0xb7cab720 (LWP 6512)] > [New Thread 0xb7caab90 (LWP 6523)] > [New Thread 0xb74a9b90 (LWP 6528)] > [New Thread 0xb6c82b90 (LWP 6531)] > > Program received signal SIGSEGV, Segmentation fault. > [Switching to Thread 0xb6c82b90 (LWP 6531)] > 0xb7d7c463 in memmove () from /lib/tls/i686/cmov/libc.so.6 > (gdb) bt > #0 0xb7d7c463 in memmove () from > /lib/tls/i686/cmov/libc.so.6 > #1 0xb7fa73b2 in ?? () from /usr/lib/libdbus-1.so.3 > #2 0x080672a0 in ?? () > #3 0x0806927f in ?? () > #4 0xffffe042 in ?? () > #5 0xb7fa5479 in ?? () from /usr/lib/libdbus-1.so.3 > #6 0x08059b60 in ?? () > #7 0x0805a3f0 in ?? () > #8 0x00000000 in ?? () > > It might be coming from : > touchdObj->device = device_new(); > > But my uinput device is correctly created in > /dev/input/uinput > > Any idea to get me started ? > > Anyway I would be very interested in helping you in this > project. Let me know what I can do. > Cheers > LeTic > > > |
From: Anthony C. <cal...@gm...> - 2008-05-06 19:55:19
|
Hey Scott, It's a clean Ubuntu 8.04 i386 install (not in use yet except for testing) the lspci and lspci -n output : ~$ lspci 00:00.0 Host bridge: Intel Corporation Mobile PM965/GM965/GL960 Memory Controller Hub (rev 03) 00:01.0 PCI bridge: Intel Corporation Mobile PM965/GM965/GL960 PCI Express Root Port (rev 03) 00:1a.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #4 (rev 03) 00:1a.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #5 (rev 03) 00:1a.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #2 (rev 03) 00:1b.0 Audio device: Intel Corporation 82801H (ICH8 Family) HD Audio Controller (rev 03) 00:1c.0 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 1 (rev 03) 00:1c.2 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 3 (rev 03) 00:1c.4 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 5 (rev 03) 00:1c.5 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 6 (rev 03) 00:1d.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #1 (rev 03) 00:1d.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #2 (rev 03) 00:1d.2 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #3 (rev 03) 00:1d.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #1 (rev 03) 00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev f3) 00:1f.0 ISA bridge: Intel Corporation 82801HEM (ICH8M) LPC Interface Controller (rev 03) 00:1f.1 IDE interface: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) IDE Controller (rev 03) 00:1f.2 IDE interface: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) SATA IDE Controller (rev 03) 00:1f.3 SMBus: Intel Corporation 82801H (ICH8 Family) SMBus Controller (rev 03) 01:00.0 VGA compatible controller: nVidia Corporation GeForce 8600M GT (rev a1) 0b:00.0 Network controller: Broadcom Corporation BCM4328 802.11a/b/g/n (rev 05) 0c:00.0 Ethernet controller: Marvell Technology Group Ltd. Marvell Yukon 88E8058 PCI-E Gigabit Ethernet Controller (rev 13) 0d:03.0 FireWire (IEEE 1394): Texas Instruments TSB82AA2 IEEE-1394b Link Layer Controller (rev 02) ~$ lspci -n 00:00.0 0600: 8086:2a00 (rev 03) 00:01.0 0604: 8086:2a01 (rev 03) 00:1a.0 0c03: 8086:2834 (rev 03) 00:1a.1 0c03: 8086:2835 (rev 03) 00:1a.7 0c03: 8086:283a (rev 03) 00:1b.0 0403: 8086:284b (rev 03) 00:1c.0 0604: 8086:283f (rev 03) 00:1c.2 0604: 8086:2843 (rev 03) 00:1c.4 0604: 8086:2847 (rev 03) 00:1c.5 0604: 8086:2849 (rev 03) 00:1d.0 0c03: 8086:2830 (rev 03) 00:1d.1 0c03: 8086:2831 (rev 03) 00:1d.2 0c03: 8086:2832 (rev 03) 00:1d.7 0c03: 8086:2836 (rev 03) 00:1e.0 0604: 8086:2448 (rev f3) 00:1f.0 0601: 8086:2815 (rev 03) 00:1f.1 0101: 8086:2850 (rev 03) 00:1f.2 0101: 8086:2828 (rev 03) 00:1f.3 0c05: 8086:283e (rev 03) 01:00.0 0300: 10de:0407 (rev a1) 0b:00.0 0280: 14e4:4328 (rev 05) 0c:00.0 0200: 11ab:436a (rev 13) 0d:03.0 0c00: 104c:8025 (rev 02) ~$ uname -a Linux christelle-laptop 2.6.24-16-generic #1 SMP Thu Apr 10 13:23:42 UTC 2008 i686 GNU/Linux ~$ dbus-daemon --version D-Bus Message Bus Daemon 1.1.20 ~$ apt-cache show dbus Package: dbus Priority: optional ... Architecture: i386 Version: 1.1.20-1ubuntu1 ~$ openusb-config --version 1.0.1 (downloaded and compiled) And a bit more information provided by MacOS : MacBook Pro 4.1 Intel Core 2 Duo 2.4 Boot ROM Version : MBP41.00C1.B00 LeTic On Mon, May 5, 2008 at 4:53 PM, Scott Shawcroft <sco...@gm...> wrote: > LeTic, > What would help now is knowing more about your system. What distro? What > architecture? An lspci. What version of dbus do you have? What version of > OpenUSB? What kernel? I don't think its a problem with my code. However, > theres always a chance there is. > Thanks, > Scott > > Anthony Callegaro wrote: > >> Hey Scott, >> >> Cheers for that. I used your new code and here is the result of my >> investigation : >> >> If I run touchd in the terminal this is what I get : >> ./touchd >> ** (process:27596): DEBUG: Running touchd version alpha 2. >> ** (process:27596): DEBUG: Connecting to the Session D-Bus. >> ** (process:27596): DEBUG: Registering the well-known name >> (org.tannewt.touchd). >> ** (process:27596): DEBUG: RequestName returned 1. >> ** (process:27596): DEBUG: Creating one Touchd object. >> ** (process:27596): DEBUG: Initializing Touchd class. >> ** (process:27596): DEBUG: Creating the signals. >> ** (process:27596): DEBUG: Binding to GLib/D-Bus. >> ** (process:27596): DEBUG: Initializing TouchdObject. >> ** (process:27596): DEBUG: Registering it on the D-Bus. >> ** (process:27596): DEBUG: Ready to serve requests. >> ** (process:27596): DEBUG: Setting up uinput device. >> ** (process:27596): DEBUG: Running the device. >> ** (process:27596): DEBUG: Initializing the hardware. >> Segmentation fault >> >> I next tried in gdb : >> (gdb) run >> Starting program: /home/letic/Desktop/touchd-svn/src/touchd >> [Thread debugging using libthread_db enabled] >> ** (process:8084): DEBUG: Running touchd version alpha 2. >> ** (process:8084): DEBUG: Connecting to the Session D-Bus. >> ** (process:8084): DEBUG: Registering the well-known name >> (org.tannewt.touchd). >> ** (process:8084): DEBUG: RequestName returned 1. >> ** (process:8084): DEBUG: Creating one Touchd object. >> ** (process:8084): DEBUG: Initializing Touchd class. >> ** (process:8084): DEBUG: Creating the signals. >> ** (process:8084): DEBUG: Binding to GLib/D-Bus. >> ** (process:8084): DEBUG: Initializing TouchdObject. >> ** (process:8084): DEBUG: Registering it on the D-Bus. >> ** (process:8084): DEBUG: Ready to serve requests. >> ** (process:8084): DEBUG: Setting up uinput device. >> ** (process:8084): DEBUG: Running the device. >> [New Thread 0xb7bd5720 (LWP 8084)] >> [New Thread 0xb7bd4b90 (LWP 8093)] >> ** (process:8084): DEBUG: Initializing the hardware. >> [New Thread 0xb73d3b90 (LWP 8095)] >> [New Thread 0xb6bacb90 (LWP 8101)] >> >> Program received signal SIGSEGV, Segmentation fault. >> [Switching to Thread 0xb6bacb90 (LWP 8101)] >> 0xb7ca6463 in memmove () from /lib/tls/i686/cmov/libc.so.6 >> (gdb) bt >> #0 0xb7ca6463 in memmove () from /lib/tls/i686/cmov/libc.so.6 >> #1 0xb7ed13b2 in ?? () from /usr/lib/libdbus-1.so.3 >> #2 0x080674a0 in ?? () >> #3 0x0806947f in ?? () >> #4 0xffffe021 in ?? () >> #5 0xb7ecf479 in ?? () from /usr/lib/libdbus-1.so.3 >> #6 0x08059be0 in ?? () >> #7 0x0805a470 in ?? () >> #8 0x00000000 in ?? () >> >> As I don't know gdb that well I then used nemiver (gnome frontend for gdb) >> to get the source backtrace manually and here is what I get : >> So in touchd.c it hangs on line 274 : MultitouchData* md = >> multitouch_init(touchdObj->device->queue); >> multitouch.c line 67 : int32_t result = openusb_init(0 , &handle ); >> usb.c line 618 : usbi_rescan_devices(); >> devices.c line 258 : ibus->ops->refresh_devices(ibus); >> linux.c line 2214 : device_names = libhal_get_all_devices (hal_ctx, >> &num_devices, &error); >> >> I can't get any further than this. I guess I would need to download hal >> sources to follow... >> >> Let me know if I can give you more information, and what you would need. >> Cheers >> LeTic >> >> On Fri, May 2, 2008 at 3:11 AM, Scott Shawcroft < >> sco...@gm... <mailto:sco...@gm...>> wrote: >> >> LeTic, >> I totally forgot! I also checked it into subversion. >> Thanks, >> Scott >> >> Anthony Callegaro wrote: >> >> Hey Scott, >> >> Thanks for the answer but you must have forgot the attachment >> :o) I thought it was in the SVN... Could you send me your new >> version of touchd.c so I could try to debug a bit further ? >> >> Cheers >> LeTic >> >> On Thu, May 1, 2008 at 3:54 AM, Scott Shawcroft >> <sco...@gm... <mailto:sco...@gm...> >> <mailto:sco...@gm... >> <mailto:sco...@gm...>>> wrote: >> >> LeTic, >> Neat! I've never had that problem before. Are you running >> Hardy >> Heron? I agree with you that the main loop was in >> device_new but >> am uncertain thats where the problem was because the >> backtrace had >> dbus stuff in it. In fact you can see the segfault comes from >> process 6531 and the uinput stuff should be in 6512 still. >> >> I've attached a new version of touchd.c with more debug >> statements. They'll give us a better idea about how far >> the main >> loop is getting. However, I think its a dbus problem. >> Thanks, >> Scott >> >> P.S. I cced the touchd-devel mailing list to archive the issue. >> You can join it through the sourceforge project page at >> sf.net/projects/touchd <http://sf.net/projects/touchd> >> <http://sf.net/projects/touchd>. >> >> >> >> >> Anthony Callegaro wrote: >> >> Hi Tannewt, >> >> My girlfriend bought a MacBook Pro 4.1 like yours being >> used >> to have Debian on our home box I installed Ubuntu for her. >> When trying to get touchd working I hit some issues. >> >> ./touchd >> ** (process:6418): DEBUG: Running touchd version alpha 2. >> ** (process:6418): DEBUG: Connecting to the Session D-Bus. >> ** (process:6418): DEBUG: Registering the well-known name >> (org.tannewt.touchd). >> ** (process:6418): DEBUG: RequestName returned 1. >> ** (process:6418): DEBUG: Creating one Touchd object. >> ** (process:6418): DEBUG: Initializing Touchd class. >> ** (process:6418): DEBUG: Creating the signals. >> ** (process:6418): DEBUG: Binding to GLib/D-Bus. >> ** (process:6418): DEBUG: Initializing TouchdObject. >> ** (process:6418): DEBUG: Registering it on the D-Bus. >> ** (process:6418): DEBUG: Ready to serve requests. >> ** (process:6418): DEBUG: Setting up uinput device. >> Segmentation fault >> >> The backtrace in gdb isn't very verbose >> ** (process:6512): DEBUG: Setting up uinput device. >> [New Thread 0xb7cab720 (LWP 6512)] >> [New Thread 0xb7caab90 (LWP 6523)] >> [New Thread 0xb74a9b90 (LWP 6528)] >> [New Thread 0xb6c82b90 (LWP 6531)] >> >> Program received signal SIGSEGV, Segmentation fault. >> [Switching to Thread 0xb6c82b90 (LWP 6531)] >> 0xb7d7c463 in memmove () from /lib/tls/i686/cmov/libc.so.6 >> (gdb) bt >> #0 0xb7d7c463 in memmove () from >> /lib/tls/i686/cmov/libc.so.6 >> #1 0xb7fa73b2 in ?? () from /usr/lib/libdbus-1.so.3 >> #2 0x080672a0 in ?? () >> #3 0x0806927f in ?? () >> #4 0xffffe042 in ?? () >> #5 0xb7fa5479 in ?? () from /usr/lib/libdbus-1.so.3 >> #6 0x08059b60 in ?? () >> #7 0x0805a3f0 in ?? () >> #8 0x00000000 in ?? () >> >> It might be coming from : >> touchdObj->device = device_new(); >> >> But my uinput device is correctly created in >> /dev/input/uinput >> >> Any idea to get me started ? >> >> Anyway I would be very interested in helping you in this >> project. Let me know what I can do. >> Cheers >> LeTic >> >> >> >> |
From: Anthony C. <cal...@gm...> - 2008-05-09 19:53:47
|
Hey Scott, I found the culprit ! It was indeed openusb I tried with revision 139 and it's working ! Thanks for the help I will help somebody else as well LeTic On Fri, May 9, 2008 at 1:45 AM, Anthony Callegaro <cal...@gm...> wrote: > Hey Scott, > > I just tried the live 64bit Ubuntu recompile everything and I ran into the > same error, so the only difference I guess is openusb. I will try rev 138 > tomorrow, I'm running out of battery now ;o) > > FYI the lsusb you asked : > Bus 006 Device 001: ID 0000:0000 > Bus 007 Device 003: ID 05ac:0230 Apple Computer, Inc. > Bus 007 Device 002: ID 05ac:8242 Apple Computer, Inc. > Bus 007 Device 001: ID 0000:0000 > Bus 005 Device 001: ID 0000:0000 > Bus 002 Device 001: ID 0000:0000 > Bus 001 Device 003: ID 05ac:820f Apple Computer, Inc. > Bus 001 Device 002: ID 0a5c:4500 Broadcom Corp. > Bus 001 Device 001: ID 0000:0000 > Bus 004 Device 002: ID 05ac:8502 Apple Computer, Inc. > Bus 004 Device 001: ID 0000:0000 > Bus 003 Device 001: ID 0000:0000 > > Thanks for the answer > LeTic > > > On Wed, May 7, 2008 at 7:14 AM, Scott Shawcroft <sco...@gm...> > wrote: > >> Anthony, >> Here are what mine are. I'm not to sure why this is not working. >> However, I am using openusb from svn rev 138. The architecture is also >> different. >> ~Scott >> >> Anthony Callegaro wrote: >> >>> Hey Scott, >>> >>> It's a clean Ubuntu 8.04 i386 install (not in use yet except for testing) >>> the lspci and lspci -n output : >>> >> How bout a lsusb? >> >>> >>> >>> ~$ uname -a >>> Linux christelle-laptop 2.6.24-16-generic #1 SMP Thu Apr 10 13:23:42 UTC >>> 2008 i686 GNU/Linux >>> >> tannewt@wintergreen:~$ uname -a >> Linux wintergreen 2.6.24-16-generic #1 SMP Thu Apr 10 12:47:45 UTC 2008 >> x86_64 GNU/Linux >> >>> >>> ~$ dbus-daemon --version >>> D-Bus Message Bus Daemon 1.1.20 >>> >> tannewt@wintergreen:~$ dbus-daemon --version >> D-Bus Message Bus Daemon 1.1.20 >> >>> >>> ~$ apt-cache show dbus >>> Package: dbus >>> Priority: optional >>> ... >>> Architecture: i386 >>> Version: 1.1.20-1ubuntu1 >>> >> tannewt@wintergreen:~$ apt-cache show dbus >> ... >> Architecture: amd64 >> Version: 1.1.20-1ubuntu1 >> >> >>> ~$ openusb-config --version >>> 1.0.1 >>> (downloaded and compiled) >>> >> tannewt@wintergreen:~$ openusb-config --version >> 1.0.1 >> >>> >>> And a bit more information provided by MacOS : MacBook Pro 4.1 >>> Intel Core 2 Duo 2.4 >>> Boot ROM Version : MBP41.00C1.B00 >>> >>> LeTic >>> >>> On Mon, May 5, 2008 at 4:53 PM, Scott Shawcroft < >>> sco...@gm... <mailto:sco...@gm...>> wrote: >>> >>> LeTic, >>> What would help now is knowing more about your system. What >>> distro? What architecture? An lspci. What version of dbus do >>> you have? What version of OpenUSB? What kernel? I don't think >>> its a problem with my code. However, theres always a chance there >>> is. >>> >>> Thanks, >>> Scott >>> >>> Anthony Callegaro wrote: >>> >>> Hey Scott, >>> >>> Cheers for that. I used your new code and here is the result >>> of my investigation : >>> >>> If I run touchd in the terminal this is what I get : >>> ./touchd >>> ** (process:27596): DEBUG: Running touchd version alpha 2. >>> ** (process:27596): DEBUG: Connecting to the Session D-Bus. >>> ** (process:27596): DEBUG: Registering the well-known name >>> (org.tannewt.touchd). >>> ** (process:27596): DEBUG: RequestName returned 1. >>> ** (process:27596): DEBUG: Creating one Touchd object. >>> ** (process:27596): DEBUG: Initializing Touchd class. >>> ** (process:27596): DEBUG: Creating the signals. >>> ** (process:27596): DEBUG: Binding to GLib/D-Bus. >>> ** (process:27596): DEBUG: Initializing TouchdObject. >>> ** (process:27596): DEBUG: Registering it on the D-Bus. >>> ** (process:27596): DEBUG: Ready to serve requests. >>> ** (process:27596): DEBUG: Setting up uinput device. >>> ** (process:27596): DEBUG: Running the device. >>> ** (process:27596): DEBUG: Initializing the hardware. >>> Segmentation fault >>> >>> I next tried in gdb : >>> (gdb) run >>> Starting program: /home/letic/Desktop/touchd-svn/src/touchd >>> [Thread debugging using libthread_db enabled] >>> ** (process:8084): DEBUG: Running touchd version alpha 2. >>> ** (process:8084): DEBUG: Connecting to the Session D-Bus. >>> ** (process:8084): DEBUG: Registering the well-known name >>> (org.tannewt.touchd). >>> ** (process:8084): DEBUG: RequestName returned 1. >>> ** (process:8084): DEBUG: Creating one Touchd object. >>> ** (process:8084): DEBUG: Initializing Touchd class. >>> ** (process:8084): DEBUG: Creating the signals. >>> ** (process:8084): DEBUG: Binding to GLib/D-Bus. >>> ** (process:8084): DEBUG: Initializing TouchdObject. >>> ** (process:8084): DEBUG: Registering it on the D-Bus. >>> ** (process:8084): DEBUG: Ready to serve requests. >>> ** (process:8084): DEBUG: Setting up uinput device. >>> ** (process:8084): DEBUG: Running the device. >>> [New Thread 0xb7bd5720 (LWP 8084)] >>> [New Thread 0xb7bd4b90 (LWP 8093)] >>> ** (process:8084): DEBUG: Initializing the hardware. >>> [New Thread 0xb73d3b90 (LWP 8095)] >>> [New Thread 0xb6bacb90 (LWP 8101)] >>> >>> Program received signal SIGSEGV, Segmentation fault. >>> [Switching to Thread 0xb6bacb90 (LWP 8101)] >>> 0xb7ca6463 in memmove () from /lib/tls/i686/cmov/libc.so.6 >>> (gdb) bt >>> #0 0xb7ca6463 in memmove () from /lib/tls/i686/cmov/libc.so.6 >>> #1 0xb7ed13b2 in ?? () from /usr/lib/libdbus-1.so.3 >>> #2 0x080674a0 in ?? () >>> #3 0x0806947f in ?? () >>> #4 0xffffe021 in ?? () >>> #5 0xb7ecf479 in ?? () from /usr/lib/libdbus-1.so.3 >>> #6 0x08059be0 in ?? () >>> #7 0x0805a470 in ?? () >>> #8 0x00000000 in ?? () >>> >>> As I don't know gdb that well I then used nemiver (gnome >>> frontend for gdb) to get the source backtrace manually and >>> here is what I get : >>> So in touchd.c it hangs on line 274 : MultitouchData* md = >>> multitouch_init(touchdObj->device->queue); >>> multitouch.c line 67 : int32_t result = openusb_init(0 , >>> &handle ); >>> usb.c line 618 : usbi_rescan_devices(); >>> devices.c line 258 : ibus->ops->refresh_devices(ibus); >>> linux.c line 2214 : device_names = libhal_get_all_devices >>> (hal_ctx, &num_devices, &error); >>> >>> I can't get any further than this. I guess I would need to >>> download hal sources to follow... >>> >>> Let me know if I can give you more information, and what you >>> would need. >>> Cheers >>> LeTic >>> >>> On Fri, May 2, 2008 at 3:11 AM, Scott Shawcroft >>> <sco...@gm... <mailto:sco...@gm...> >>> <mailto:sco...@gm... >>> <mailto:sco...@gm...>>> wrote: >>> >>> LeTic, >>> I totally forgot! I also checked it into subversion. >>> Thanks, >>> Scott >>> >>> Anthony Callegaro wrote: >>> >>> Hey Scott, >>> >>> Thanks for the answer but you must have forgot the >>> attachment >>> :o) I thought it was in the SVN... Could you send me >>> your new >>> version of touchd.c so I could try to debug a bit further ? >>> >>> Cheers >>> LeTic >>> >>> On Thu, May 1, 2008 at 3:54 AM, Scott Shawcroft >>> <sco...@gm... >>> <mailto:sco...@gm...> >>> <mailto:sco...@gm... >>> <mailto:sco...@gm...>> >>> <mailto:sco...@gm... >>> <mailto:sco...@gm...> >>> <mailto:sco...@gm... >>> <mailto:sco...@gm...>>>> wrote: >>> >>> LeTic, >>> Neat! I've never had that problem before. Are you >>> running >>> Hardy >>> Heron? I agree with you that the main loop was in >>> device_new but >>> am uncertain thats where the problem was because the >>> backtrace had >>> dbus stuff in it. In fact you can see the segfault >>> comes from >>> process 6531 and the uinput stuff should be in 6512 >>> still. >>> >>> I've attached a new version of touchd.c with more debug >>> statements. They'll give us a better idea about how far >>> the main >>> loop is getting. However, I think its a dbus problem. >>> Thanks, >>> Scott >>> >>> P.S. I cced the touchd-devel mailing list to archive >>> the issue. >>> You can join it through the sourceforge project page at >>> sf.net/projects/touchd >>> <http://sf.net/projects/touchd> <http://sf.net/projects/touchd> >>> <http://sf.net/projects/touchd>. >>> >>> >>> >>> >>> Anthony Callegaro wrote: >>> >>> Hi Tannewt, >>> >>> My girlfriend bought a MacBook Pro 4.1 like >>> yours being >>> used >>> to have Debian on our home box I installed >>> Ubuntu for her. >>> When trying to get touchd working I hit some issues. >>> >>> ./touchd >>> ** (process:6418): DEBUG: Running touchd version >>> alpha 2. >>> ** (process:6418): DEBUG: Connecting to the >>> Session D-Bus. >>> ** (process:6418): DEBUG: Registering the >>> well-known name >>> (org.tannewt.touchd). >>> ** (process:6418): DEBUG: RequestName returned 1. >>> ** (process:6418): DEBUG: Creating one Touchd >>> object. >>> ** (process:6418): DEBUG: Initializing Touchd class. >>> ** (process:6418): DEBUG: Creating the signals. >>> ** (process:6418): DEBUG: Binding to GLib/D-Bus. >>> ** (process:6418): DEBUG: Initializing TouchdObject. >>> ** (process:6418): DEBUG: Registering it on the >>> D-Bus. >>> ** (process:6418): DEBUG: Ready to serve requests. >>> ** (process:6418): DEBUG: Setting up uinput device. >>> Segmentation fault >>> >>> The backtrace in gdb isn't very verbose >>> ** (process:6512): DEBUG: Setting up uinput device. >>> [New Thread 0xb7cab720 (LWP 6512)] >>> [New Thread 0xb7caab90 (LWP 6523)] >>> [New Thread 0xb74a9b90 (LWP 6528)] >>> [New Thread 0xb6c82b90 (LWP 6531)] >>> >>> Program received signal SIGSEGV, Segmentation fault. >>> [Switching to Thread 0xb6c82b90 (LWP 6531)] >>> 0xb7d7c463 in memmove () from >>> /lib/tls/i686/cmov/libc.so.6 >>> (gdb) bt >>> #0 0xb7d7c463 in memmove () from >>> /lib/tls/i686/cmov/libc.so.6 >>> #1 0xb7fa73b2 in ?? () from /usr/lib/libdbus-1.so.3 >>> #2 0x080672a0 in ?? () >>> #3 0x0806927f in ?? () >>> #4 0xffffe042 in ?? () >>> #5 0xb7fa5479 in ?? () from /usr/lib/libdbus-1.so.3 >>> #6 0x08059b60 in ?? () >>> #7 0x0805a3f0 in ?? () >>> #8 0x00000000 in ?? () >>> >>> It might be coming from : >>> touchdObj->device = device_new(); >>> >>> But my uinput device is correctly created in >>> /dev/input/uinput >>> >>> Any idea to get me started ? >>> >>> Anyway I would be very interested in helping you >>> in this >>> project. Let me know what I can do. >>> Cheers >>> LeTic >>> >>> >>> >>> >>> > |
From: Scott S. <sco...@gm...> - 2008-05-09 19:57:09
|
Anthony, I've attached two files I use to have it reload upon suspend and resume. I don't know how to get it going upon startup yet. touchd goes in /etc/event.d and 01upstart goes in /etc/pm/sleep.d . Please let me know what you think. ~Scott Anthony Callegaro wrote: > Hey Scott, > > I found the culprit ! It was indeed openusb I tried with revision 139 > and it's working ! > > Thanks for the help I will help somebody else as well > LeTic > > On Fri, May 9, 2008 at 1:45 AM, Anthony Callegaro <cal...@gm... > <mailto:cal...@gm...>> wrote: > > Hey Scott, > > I just tried the live 64bit Ubuntu recompile everything and I ran > into the same error, so the only difference I guess is openusb. I > will try rev 138 tomorrow, I'm running out of battery now ;o) > > FYI the lsusb you asked : > Bus 006 Device 001: ID 0000:0000 > Bus 007 Device 003: ID 05ac:0230 Apple Computer, Inc. > Bus 007 Device 002: ID 05ac:8242 Apple Computer, Inc. > Bus 007 Device 001: ID 0000:0000 > Bus 005 Device 001: ID 0000:0000 > Bus 002 Device 001: ID 0000:0000 > Bus 001 Device 003: ID 05ac:820f Apple Computer, Inc. > Bus 001 Device 002: ID 0a5c:4500 Broadcom Corp. > Bus 001 Device 001: ID 0000:0000 > Bus 004 Device 002: ID 05ac:8502 Apple Computer, Inc. > Bus 004 Device 001: ID 0000:0000 > Bus 003 Device 001: ID 0000:0000 > > Thanks for the answer > LeTic > > > On Wed, May 7, 2008 at 7:14 AM, Scott Shawcroft > <sco...@gm... <mailto:sco...@gm...>> wrote: > > Anthony, > Here are what mine are. I'm not to sure why this is not > working. However, I am using openusb from svn rev 138. The > architecture is also different. > ~Scott > > Anthony Callegaro wrote: > > Hey Scott, > > It's a clean Ubuntu 8.04 i386 install (not in use yet > except for testing) the lspci and lspci -n output : > > How bout a lsusb? > > > > ~$ uname -a > Linux christelle-laptop 2.6.24-16-generic #1 SMP Thu Apr > 10 13:23:42 UTC 2008 i686 GNU/Linux > > tannewt@wintergreen:~$ uname -a > Linux wintergreen 2.6.24-16-generic #1 SMP Thu Apr 10 12:47:45 > UTC 2008 x86_64 GNU/Linux > > > ~$ dbus-daemon --version > D-Bus Message Bus Daemon 1.1.20 > > tannewt@wintergreen:~$ dbus-daemon --version > > D-Bus Message Bus Daemon 1.1.20 > > > ~$ apt-cache show dbus > Package: dbus > Priority: optional > ... > Architecture: i386 > Version: 1.1.20-1ubuntu1 > > tannewt@wintergreen:~$ apt-cache show dbus > ... > Architecture: amd64 > > Version: 1.1.20-1ubuntu1 > > > ~$ openusb-config --version > 1.0.1 > (downloaded and compiled) > > tannewt@wintergreen:~$ openusb-config --version > 1.0.1 > > > And a bit more information provided by MacOS : MacBook Pro 4.1 > Intel Core 2 Duo 2.4 > Boot ROM Version : MBP41.00C1.B00 > > LeTic > > On Mon, May 5, 2008 at 4:53 PM, Scott Shawcroft > <sco...@gm... > <mailto:sco...@gm...> > <mailto:sco...@gm... > <mailto:sco...@gm...>>> wrote: > > LeTic, > What would help now is knowing more about your system. > What > distro? What architecture? An lspci. What version of > dbus do > you have? What version of OpenUSB? What kernel? I > don't think > its a problem with my code. However, theres always a > chance there > is. > > Thanks, > Scott > > Anthony Callegaro wrote: > > Hey Scott, > > Cheers for that. I used your new code and here is > the result > of my investigation : > > If I run touchd in the terminal this is what I get : > ./touchd > ** (process:27596): DEBUG: Running touchd version > alpha 2. > ** (process:27596): DEBUG: Connecting to the > Session D-Bus. > ** (process:27596): DEBUG: Registering the > well-known name > (org.tannewt.touchd). > ** (process:27596): DEBUG: RequestName returned 1. > ** (process:27596): DEBUG: Creating one Touchd object. > ** (process:27596): DEBUG: Initializing Touchd class. > ** (process:27596): DEBUG: Creating the signals. > ** (process:27596): DEBUG: Binding to GLib/D-Bus. > ** (process:27596): DEBUG: Initializing TouchdObject. > ** (process:27596): DEBUG: Registering it on the D-Bus. > ** (process:27596): DEBUG: Ready to serve requests. > ** (process:27596): DEBUG: Setting up uinput device. > ** (process:27596): DEBUG: Running the device. > ** (process:27596): DEBUG: Initializing the hardware. > Segmentation fault > > I next tried in gdb : > (gdb) run > Starting program: > /home/letic/Desktop/touchd-svn/src/touchd > [Thread debugging using libthread_db enabled] > ** (process:8084): DEBUG: Running touchd version > alpha 2. > ** (process:8084): DEBUG: Connecting to the Session > D-Bus. > ** (process:8084): DEBUG: Registering the > well-known name > (org.tannewt.touchd). > ** (process:8084): DEBUG: RequestName returned 1. > ** (process:8084): DEBUG: Creating one Touchd object. > ** (process:8084): DEBUG: Initializing Touchd class. > ** (process:8084): DEBUG: Creating the signals. > ** (process:8084): DEBUG: Binding to GLib/D-Bus. > ** (process:8084): DEBUG: Initializing TouchdObject. > ** (process:8084): DEBUG: Registering it on the D-Bus. > ** (process:8084): DEBUG: Ready to serve requests. > ** (process:8084): DEBUG: Setting up uinput device. > ** (process:8084): DEBUG: Running the device. > [New Thread 0xb7bd5720 (LWP 8084)] > [New Thread 0xb7bd4b90 (LWP 8093)] > ** (process:8084): DEBUG: Initializing the hardware. > [New Thread 0xb73d3b90 (LWP 8095)] > [New Thread 0xb6bacb90 (LWP 8101)] > > Program received signal SIGSEGV, Segmentation fault. > [Switching to Thread 0xb6bacb90 (LWP 8101)] > 0xb7ca6463 in memmove () from > /lib/tls/i686/cmov/libc.so.6 > (gdb) bt > #0 0xb7ca6463 in memmove () from > /lib/tls/i686/cmov/libc.so.6 > #1 0xb7ed13b2 in ?? () from /usr/lib/libdbus-1.so.3 > #2 0x080674a0 in ?? () > #3 0x0806947f in ?? () > #4 0xffffe021 in ?? () > #5 0xb7ecf479 in ?? () from /usr/lib/libdbus-1.so.3 > #6 0x08059be0 in ?? () > #7 0x0805a470 in ?? () > #8 0x00000000 in ?? () > > As I don't know gdb that well I then used nemiver > (gnome > frontend for gdb) to get the source backtrace > manually and > here is what I get : > So in touchd.c it hangs on line 274 : > MultitouchData* md = > multitouch_init(touchdObj->device->queue); > multitouch.c line 67 : int32_t result = > openusb_init(0 , > &handle ); > usb.c line 618 : usbi_rescan_devices(); > devices.c line 258 : ibus->ops->refresh_devices(ibus); > linux.c line 2214 : device_names = > libhal_get_all_devices > (hal_ctx, &num_devices, &error); > > I can't get any further than this. I guess I would > need to > download hal sources to follow... > > Let me know if I can give you more information, and > what you > would need. > Cheers > LeTic > > On Fri, May 2, 2008 at 3:11 AM, Scott Shawcroft > <sco...@gm... > <mailto:sco...@gm...> > <mailto:sco...@gm... > <mailto:sco...@gm...>> > <mailto:sco...@gm... > <mailto:sco...@gm...> > <mailto:sco...@gm... > <mailto:sco...@gm...>>>> wrote: > > LeTic, > I totally forgot! I also checked it into > subversion. > Thanks, > Scott > > Anthony Callegaro wrote: > > Hey Scott, > > Thanks for the answer but you must have > forgot the > attachment > :o) I thought it was in the SVN... Could > you send me > your new > version of touchd.c so I could try to debug > a bit further ? > > Cheers > LeTic > > On Thu, May 1, 2008 at 3:54 AM, Scott Shawcroft > <sco...@gm... > <mailto:sco...@gm...> > <mailto:sco...@gm... > <mailto:sco...@gm...>> > <mailto:sco...@gm... > <mailto:sco...@gm...> > <mailto:sco...@gm... > <mailto:sco...@gm...>>> > <mailto:sco...@gm... > <mailto:sco...@gm...> > <mailto:sco...@gm... > <mailto:sco...@gm...>> > <mailto:sco...@gm... > <mailto:sco...@gm...> > <mailto:sco...@gm... > <mailto:sco...@gm...>>>>> wrote: > > LeTic, > Neat! I've never had that problem > before. Are you > running > Hardy > Heron? I agree with you that the main > loop was in > device_new but > am uncertain thats where the problem was > because the > backtrace had > dbus stuff in it. In fact you can see > the segfault > comes from > process 6531 and the uinput stuff should > be in 6512 > still. > > I've attached a new version of touchd.c > with more debug > statements. They'll give us a better > idea about how far > the main > loop is getting. However, I think its a > dbus problem. > Thanks, > Scott > > P.S. I cced the touchd-devel mailing list > to archive > the issue. > You can join it through the sourceforge > project page at > sf.net/projects/touchd > <http://sf.net/projects/touchd> > <http://sf.net/projects/touchd> > <http://sf.net/projects/touchd> > <http://sf.net/projects/touchd>. > > > > > Anthony Callegaro wrote: > > Hi Tannewt, > > My girlfriend bought a MacBook Pro > 4.1 like > yours being > used > to have Debian on our home box I > installed > Ubuntu for her. > When trying to get touchd working I > hit some issues. > > ./touchd > ** (process:6418): DEBUG: Running > touchd version > alpha 2. > ** (process:6418): DEBUG: Connecting > to the > Session D-Bus. > ** (process:6418): DEBUG: Registering the > well-known name > (org.tannewt.touchd). > ** (process:6418): DEBUG: RequestName > returned 1. > ** (process:6418): DEBUG: Creating > one Touchd > object. > ** (process:6418): DEBUG: > Initializing Touchd class. > ** (process:6418): DEBUG: Creating > the signals. > ** (process:6418): DEBUG: Binding to > GLib/D-Bus. > ** (process:6418): DEBUG: > Initializing TouchdObject. > ** (process:6418): DEBUG: Registering > it on the > D-Bus. > ** (process:6418): DEBUG: Ready to > serve requests. > ** (process:6418): DEBUG: Setting up > uinput device. > Segmentation fault > > The backtrace in gdb isn't very verbose > ** (process:6512): DEBUG: Setting up > uinput device. > [New Thread 0xb7cab720 (LWP 6512)] > [New Thread 0xb7caab90 (LWP 6523)] > [New Thread 0xb74a9b90 (LWP 6528)] > [New Thread 0xb6c82b90 (LWP 6531)] > > Program received signal SIGSEGV, > Segmentation fault. > [Switching to Thread 0xb6c82b90 (LWP > 6531)] > 0xb7d7c463 in memmove () from > /lib/tls/i686/cmov/libc.so.6 > (gdb) bt > #0 0xb7d7c463 in memmove () from > /lib/tls/i686/cmov/libc.so.6 > #1 0xb7fa73b2 in ?? () from > /usr/lib/libdbus-1.so.3 > #2 0x080672a0 in ?? () > #3 0x0806927f in ?? () > #4 0xffffe042 in ?? () > #5 0xb7fa5479 in ?? () from > /usr/lib/libdbus-1.so.3 > #6 0x08059b60 in ?? () > #7 0x0805a3f0 in ?? () > #8 0x00000000 in ?? () > > It might be coming from : > touchdObj->device = device_new(); > > But my uinput device is correctly > created in > /dev/input/uinput > > Any idea to get me started ? > > Anyway I would be very interested in > helping you > in this > project. Let me know what I can do. > Cheers > LeTic > > > > > > |