/srv/irclogs.ubuntu.com/2011/02/20/#ubuntu-arm.txt

=== _bruce_ is now known as _bruce
=== asac_ is now known as asac
xerebzi just installed maverick from the preinstalled image and i'm getting anything on the dvi out03:21
xerebzi'm not*03:21
lilstevienoes natty have better touch drivers that maverick07:36
lilsteviedoes*07:36
persiaOught do, but depends on hardware.07:36
lilstevieok07:36
lilsteviewell Xorg doesnt want to recognise touch events in maverick07:37
persiaThere may be some noise due to specific issues, but for the most part you should see only the difference between 2.6.35 and 2.6.3807:37
persiaWith which hardware?07:37
lilsteviebut the mtdev tools and utouch register the touch events07:38
lilstevieGalaxy Tab07:38
lilstevieAT42QT602240 touch panel07:38
persiaAh, if you're seeing events with mtdev and utouch, you have kernel support.  I wouldn't expect any differences between maverick and natty in terms of driver support.07:38
lilsteviehm07:39
lilstevieI do not know what driver to use for it though07:39
lilstevieevdev/evtouch dont seem to register events07:40
lilstevieevdev segfaults07:40
persiaIt's probably worth tracing the events through the stack: while I'm convinced you're getting something useful from the kernel to userspace, there's some chance that you have a strange set of events that doesn't cause changes in X or Y.07:40
persiaExcellent!  segfaults make debugging easy.07:40
lilstevieutouch gives X/Y events07:40
persiaDig up a stack trace, and determine what is out of bounds, has an unexpected value, etc.  That ought show what isn't handling.07:40
persiaIf utouch gives X/Y events, what isn't working?07:41
lilsteviewell evdev segfaults07:41
lilsteviethe other drivers just dont register touches07:41
lilsteviehow would I go about getting that stacktrace07:42
persiaEither enable apport, and fiddle with apport-retrace, or attach gdb pre-segfault, and ask gdb for "bt full"07:42
persiaYou'll want the appropriate debugging symbols installed for whatever is segfaulting (and sometimes that ends up crossing layers)07:43
lilsteviepersia: how would i attach gdb to it07:57
lilsteviecause attaching to x and its pid doesnt give me anything07:57
persiahttps://wiki.ubuntu.com/X/Debugging is probably a good place to start.  I don't know that much about precisely how the layers interact: most of my input work has been at the /dev/input level08:08
lilstevieah ok08:09
lilsteviepersia: http://pastie.org/158497808:13
persiaNext: go dig in the source.  Find out what miDCRestoreUnderCursor does.  Find out what is does with those arguments.08:15
lilsteviekernel or the x driver08:16
persiaapt-file is your friend: you're looking for midispcur.c08:16
lilstevieah ok08:16
persiaIf that doesn't work, I'd try X first, but could be the kernel.08:16
persiaAnyway, the problem might not actually be at the place the segfault happens: sometimes the bug is a few levels up.  I'll recommend going up and down the stack a couple times, to make sure you understand what is going on.  At some point, I suspect you'll suddenly realise the nature of the bug.  Most patches tend to be obvious (check a return value, add bounds checking, catch an exception, initialise a variable before using it, etc.)08:18
lilsteviepersia: turns out that miDCRestoreUnderCursor is missing10:10
persiaHeh.  Either make sure it's not implied by the structural definition, OR implement it, and everything ought be fine.10:25
lilsteviehm10:26
lilstevieI am wondering what calls it though10:26
persiamiSpriteRemoveCursor()10:29
persiaEach frame in the stack represents a call: dig back until you find something that exists.10:30
persiaBe aware that X tends to have a pluggable model, so that functions tend to be defined as structures, with some implementaitons providing more than others.10:30
persiaThere's supposed to be matching declarations, so that nothing not implemented is declared, but it's easy to drop the ball between headers and implementation, especially if one is attempting to implement some other driver and copied the headers.10:31
lilsteviehm10:31
lilsteviething is this is just using xorg from apt10:31
persiaSure, but that doesn't imply anything particular about the folk who wrote it.10:33
lilstevieheh10:33
persiaPeople make mistakes.  Software has bugs.  If we can find them, it's best if we can track down the reason, and try to fix.  Most folk who maintain software tend to be very glad when someone catches something they dropped.10:34
persiaAnd lots of times, especially for X, it seems that folk implement only enough to meet their test cases, rather than attempting any sort of top-down approach for full function coverage: there's heaps left for other folk to implement if they need it.10:35
lilsteviehm10:36
lilstevieI don't know enough about how x works :/10:37
=== ogra is now known as Guest96219
=== Guest96219 is now known as ogra_
=== jkridner_ is now known as jkridner

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!