Xorg (i810) freezes randomly when using hardware accel

Oliver Fromme olli at lurza.secnetix.de
Fri Sep 22 02:42:18 PDT 2006


Markus Hoenicka wrote:
 > Oliver Fromme wrote:
 > > I have pretty much the same setup with a Samsung notebook:
 > > Centrino, 915GM chipset, FreeBSD RELENG_6 (which is now
 > > 6.2-PRERELEASE), Xorg 6.9.0, i810 driver.  I have never
 > > experienced freezes.
 > 
 > Is there anything interesting in your Xorg setup? My relevant xorg.conf sections
 > look like this:
 > 
 > Section "Device"
 >     Identifier  "truei810"
 >     Driver      "i810"
 >     VideoRam    131072
 >     # Insert Clocks lines here if appropriate
 > EndSection

I think you should _not_ override the VideoRam.  Let it
autodetect the amount of video RAM. 

 > Section "Screen"
 >     Identifier  "Screen 1"
 >     Device      "truei810"
 >     Monitor     "glare"
 >     DefaultDepth 24
 > 
 >     Subsection "Display"
 >         Depth       24
 >         Modes       "1280x800"
 >         ViewPort    0 0
 >     EndSubsection
 > EndSection

Here's my config:

Section "Device"
        Identifier  "Card0"
        Driver      "i810"
        BusID       "PCI:0:2:0"
EndSection
# I don't think the "BusID" line is necessary;
# it's a left-over from previous experiments.

Section "Screen"
        Identifier "Screen0"
        Device     "Card0"
        Monitor    "Monitor0"
        SubSection "Display"
                Viewport   0 0
                Depth     1
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     4
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     8
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     15
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     16
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     24
        EndSubSection
EndSection

 > > If all X-related processes are gone, can you restart the X
 > > server?  What happens if you try?
 > > 
 > No. It doesn't show up in the process list, so I assume it exits with an error
 > right away.

You assume?  I'm pretty sure there _must_ be something in
the logs, or an error message on stdout/stderr when you try
to start the X server.  (BTW, how do you start it?)

 > There is no core file. However, Xorg.0.log shows the following:
 > 
 > Error in I830WaitLpRing(), now is 551900, start is 549899
 > pgetbl_ctl: 0x3ffc0001 pgetbl_err: 0x0
 > ipeir: 0 iphdr: 1810000
 > LP ring tail: fe08 head: fd64 len: 1f801 start 0
 > eir: 0 esr: 0 emr: ffff
 > instdone: ffc0 instpm: 0
 > memmode: 108 instps: f0000
 > hwstam: ffff ier: 0 imr: ffff iir: 0
 > space: 130900 wanted 131064
 > 
 > FatalError re-entered, aborting
 > lockup

That doesn't look good.  I've never seen such error messages
before.  I think the people on an Xorg mailing list will be
able to interpret those messages much better.

It looks like something is wrong with the detection or
alloaction of video RAM, but I'm not sure.

You mentioned that you run FreeBSD 6.1.  Does that mean
6.1-RELEASE?  If yes, you should consider updating to
RELENG_6 ("6-stable"), which is currently in code freeze
for the 6.2 release cycle.  I'm running it on my notebook,
too.

 > > You could try to log in on the text console (blindly) and
 > > type "vidcontrol 80x25" to reset the standard text mode.
 > > If you log in via ssh, you must redirect stdin so it uses
 > > the right text console (you need to be root for this):
 > > "vidcontrol 80x25 </dev/ttyv0".
 > 
 > I can indeed log in blindly. When running "who" from a remote login the
 > additional logins show up. Unfortunately vidcontrol doesn't help. All that ever
 > happened was that the screen went from all white to all black.

Did you try the VESA mode suggestion?  What happened?  It
should either reset the screen mode, or print an error
message (if VESA isn't supported).

Best regards
   Oliver

-- 
Oliver Fromme,  secnetix GmbH & Co. KG, Marktplatz 29, 85567 Grafing
Dienstleistungen mit Schwerpunkt FreeBSD: http://www.secnetix.de/bsd
Any opinions expressed in this message may be personal to the author
and may not necessarily reflect the opinions of secnetix in any way.

"Clear perl code is better than unclear awk code; but NOTHING
comes close to unclear perl code"  (taken from comp.lang.awk FAQ)


More information about the freebsd-mobile mailing list