* Floating point exception in Xorg
@ 2011-03-04 19:57 Neil MacMunn
2011-03-04 20:26 ` Phil Blundell
0 siblings, 1 reply; 3+ messages in thread
From: Neil MacMunn @ 2011-03-04 19:57 UTC (permalink / raw)
To: openembedded-devel
I've started getting a floating point exception when gpe-dm starts Xorg
or I start it manually. It only happens when I'm using a small display
i.e. 4.3"LCD, works fine with DVI monitor. Here is the end of my Xorg.0.log
> (II) Loading /usr/lib/xorg/modules/drivers/omapfb_drv.so
> (II) Module omapfb: vendor="X.Org Foundation"
> compiled for 1.7.4, module version = 0.1.1
> ABI class: X.Org Video Driver, version 6.0
> (II) omapfb: Driver for OMAP framebuffer (omapfb) and external LCD controllers:
> omap1/2/3, S1D13745, HWA742
> (WW) Falling back to old probe method for OMAPFB
> (WW) VGA arbiter: cannot open kernel arbiter, no multi-card support
> (II) Running in FRAMEBUFFER Mode
> (WW) Error opening /sys/devices/platform/omapfb/ctrl/name: No such file or directory
> (WW) Can't autodetect LCD controller, assuming internal
> (II) LCD controller: internal
> (II) omapfb(0): Base plane capabilities:
> (II) omapfb(0): Base plane supports the following image formats:
> (II) omapfb(0): VideoRAM: 512KiB (SDRAM)
> (II) omapfb(0): Creating default Display subsection in Screen section
> "Screen0" for depth/fbbpp 24/32
> (--) omapfb(0): Depth 24, (==) framebuffer bpp 32
> (==) omapfb(0): RGB weight 888
> (==) omapfb(0): Default visual is TrueColor
> (II) omapfb(0): Output LCD using monitor section Monitor0
>
> Backtrace:
> 0: Xorg (xorg_backtrace+0x2c) [0x57ca0]
> Floating point exception at address 0x734
>
> Fatal server error:
> Caught signal 8 (Floating point exception). Server aborting
I ran a backtrace with GDB and got the following.
> #0 0x401820ac in raise () from /lib/libpthread.so.0
> #1 0x40661fbc in __div0 ()
> at /home/neil/overo-oe/tmp-unstable/work/armv7a-angstrom-linux-gnueabi/gcc-cross-4.3.3-r23.2/gcc-4.3.3/libgcc/../gcc/config/arm/lib1funcs.asm:1079
> #2 0x40661f90 in __udivsi3 ()
> at /home/neil/overo-oe/tmp-unstable/work/armv7a-angstrom-linux-gnueabi/gcc-cross-4.3.3-r23.2/gcc-4.3.3/libgcc/../gcc/config/arm/lib1funcs.asm:834
> #3 0x4065edc4 in OMAPFBOutputGetModes (output=<value optimized out>)
> at omapfb-output.c:128
> #4 0x000f8c60 in xf86ProbeOutputModes (scrn=0x90a990, maxX=2048, maxY=2048)
> at xf86Crtc.c:1575
> #5 0x000f95dc in xf86InitialConfiguration (scrn=0x2, canGrow=1)
> at xf86Crtc.c:2345
> #6 0x4065e47c in OMAPFBPreInit (pScrn=0x90a990, flags=<value optimized out>)
> at omapfb-driver.c:422
> #7 0x0006f6c0 in InitOutput (pScreenInfo=0x1, argc=7, argv=0x0)
> at xf86Init.c:817
> #8 0x00021fbc in main (argc=7, argv=0x0, envp=<value optimized out>)
> at main.c:204
I suspected that there was a change in Xorg or omapfb_drv.so so I
replaced them with their counterparts from a working system to no
effect. xorg.conf hasn't changed. I'm using a Gumstix Overo with desktop
and palmtop images. Has anyone seen a floating point exception from Xorg
or have any ideas where it might originate?
Thanks.
--
Neil
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Floating point exception in Xorg
2011-03-04 19:57 Floating point exception in Xorg Neil MacMunn
@ 2011-03-04 20:26 ` Phil Blundell
2011-03-08 18:27 ` Neil MacMunn
0 siblings, 1 reply; 3+ messages in thread
From: Phil Blundell @ 2011-03-04 20:26 UTC (permalink / raw)
To: openembedded-devel
On Fri, 2011-03-04 at 11:57 -0800, Neil MacMunn wrote:
> > #1 0x40661fbc in __div0 ()
> > at /home/neil/overo-oe/tmp-unstable/work/armv7a-angstrom-linux-gnueabi/gcc-cross-4.3.3-r23.2/gcc-4.3.3/libgcc/../gcc/config/arm/lib1funcs.asm:1079
> > #2 0x40661f90 in __udivsi3 ()
> > at /home/neil/overo-oe/tmp-unstable/work/armv7a-angstrom-linux-gnueabi/gcc-cross-4.3.3-r23.2/gcc-4.3.3/libgcc/../gcc/config/arm/lib1funcs.asm:834
> > #3 0x4065edc4 in OMAPFBOutputGetModes (output=<value optimized out>)
> > at omapfb-output.c:128
> > #4 0x000f8c60 in xf86ProbeOutputModes (scrn=0x90a990, maxX=2048, maxY=2048)
> > at xf86Crtc.c:1575
That's a division by zero in what looks like the mode selection code.
At a guess, some parameter which the server is relying on to calculate
the video timings is not being set correctly by the kernel. You'd need
to inspect the source for OMAPFBOutputGetModes() to figure out what's
up, though.
p.
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Floating point exception in Xorg
2011-03-04 20:26 ` Phil Blundell
@ 2011-03-08 18:27 ` Neil MacMunn
0 siblings, 0 replies; 3+ messages in thread
From: Neil MacMunn @ 2011-03-08 18:27 UTC (permalink / raw)
To: openembedded-devel
On 11-03-04 12:26 PM, Phil Blundell wrote:
> On Fri, 2011-03-04 at 11:57 -0800, Neil MacMunn wrote:
>>> #1 0x40661fbc in __div0 ()
>>> at /home/neil/overo-oe/tmp-unstable/work/armv7a-angstrom-linux-gnueabi/gcc-cross-4.3.3-r23.2/gcc-4.3.3/libgcc/../gcc/config/arm/lib1funcs.asm:1079
>>> #2 0x40661f90 in __udivsi3 ()
>>> at /home/neil/overo-oe/tmp-unstable/work/armv7a-angstrom-linux-gnueabi/gcc-cross-4.3.3-r23.2/gcc-4.3.3/libgcc/../gcc/config/arm/lib1funcs.asm:834
>>> #3 0x4065edc4 in OMAPFBOutputGetModes (output=<value optimized out>)
>>> at omapfb-output.c:128
>>> #4 0x000f8c60 in xf86ProbeOutputModes (scrn=0x90a990, maxX=2048, maxY=2048)
>>> at xf86Crtc.c:1575
>
> That's a division by zero in what looks like the mode selection code.
> At a guess, some parameter which the server is relying on to calculate
> the video timings is not being set correctly by the kernel. You'd need
> to inspect the source for OMAPFBOutputGetModes() to figure out what's
> up, though.
>
> p.
>
Right. This line is the problem.
> mode->Clock = PICOS2KHZ(ofb->state_info.pixclock);
because
> #define PICOS2KHZ(a) (1000000000UL/(a))
I didn't have any luck figuring out where pixclock was supposed to be
set so I just reverted xf86-video-omapfb_git.bb and my LCDs work again.
> git checkout 3b039e5c54265c5e1e254736687ad1cefed8f534 -- xf86-video-omapfb_git.bb
Thanks for the help.
--
Neil
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2011-03-08 18:29 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-03-04 19:57 Floating point exception in Xorg Neil MacMunn
2011-03-04 20:26 ` Phil Blundell
2011-03-08 18:27 ` Neil MacMunn
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.