2009-03-06 20:33:31

by Alan Stern

[permalink] [raw]
Subject: Problems with AGPGART/drm and X11 2D-acceleration

I've been experiencing problems running X with recent kernels.
Without 2D-acceleration everything seems to work okay, but scrolling is
uncomfortably slow. With acceleration enabled...

Under 2.6.27.19, X runs okay. But the dmesg log gets these error
messages when X start:

[ 54.375769] [drm] Initialized drm 1.1.0 20060810
[ 54.441049] pci 0000:00:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
[ 54.441521] pci 0000:00:02.0: setting latency timer to 64
[ 54.442380] [drm] Initialized i915 1.6.0 20060119 on minor 0
[ 54.543516] [drm:i915_getparam] *ERROR* Unknown parameter 5
[ 55.292058] [drm:i915_getparam] *ERROR* Unknown parameter 5

Under 2.6.28.7, X fails during startup and exits with an error message.
Dmesg says:

[ 63.129319] [drm] Initialized drm 1.1.0 20060810
[ 63.196690] pci 0000:00:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
[ 63.196704] pci 0000:00:02.0: setting latency timer to 64
[ 63.197679] [drm] Initialized i915 1.6.0 20080730 on minor 0
[ 63.457664] [drm:i915_gem_object_bind_to_gtt] *ERROR* GTT full, but LRU list empty
[ 63.457673] [drm:i915_gem_object_pin] *ERROR* Failure to bind: -12

Under 2.6.29-rc6, X hangs during startup. I have to reboot the machine
to recover. Dmesg says only:

[ 57.001997] [drm] Initialized drm 1.1.0 20060810
[ 57.121966] pci 0000:00:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
[ 57.121980] pci 0000:00:02.0: setting latency timer to 64
[ 57.127739] [drm] Initialized i915 1.6.0 20080730 on minor 0

Relevant device info:

# lspci -v -s 0:2.0
00:02.0 VGA compatible controller: Intel Corporation 82845G/GL[Brookdale-G]/GE Chipset Integrated Graphics Device (rev 03) (prog-if 00 [VGA controller])
Subsystem: Intel Corporation Device 5247
Flags: bus master, fast devsel, latency 0, IRQ 16
Memory at f0000000 (32-bit, prefetchable) [size=128M]
Memory at ffa80000 (32-bit, non-prefetchable) [size=512K]
Capabilities: [d0] Power Management version 1
Kernel modules: intelfb

>From /etc/X11/xorg.conf:

Section "Device"
Identifier "Card0"
Driver "intel"
VendorName "Intel Corporation"
BoardName "82845G/GL[Brookdale-G]/GE Chipset Integrated Graphics Device"
BusID "PCI:0:2:0"
Option "AccelMethod" "XAA"
# Option "NoAccel" "yes"
Option "BackingStore" "on"
EndSection

I use XAA because the default EXA method causes X to hang during
startup even under 2.6.27.

Any advice or suggestions for things to try?

Alan Stern


2009-03-06 23:20:07

by Sitsofe Wheeler

[permalink] [raw]
Subject: Re: Problems with AGPGART/drm and X11 2D-acceleration (i8xx)

On Fri, Mar 06, 2009 at 03:33:16PM -0500, Alan Stern wrote:
> I've been experiencing problems running X with recent kernels.
> Without 2D-acceleration everything seems to work okay, but scrolling is
> uncomfortably slow. With acceleration enabled...
>
> Under 2.6.28.7, X fails during startup and exits with an error message.
> Dmesg says:
>
> [ 63.129319] [drm] Initialized drm 1.1.0 20060810
> [ 63.196690] pci 0000:00:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
> [ 63.196704] pci 0000:00:02.0: setting latency timer to 64
> [ 63.197679] [drm] Initialized i915 1.6.0 20080730 on minor 0
> [ 63.457664] [drm:i915_gem_object_bind_to_gtt] *ERROR* GTT full, but LRU list empty
> [ 63.457673] [drm:i915_gem_object_pin] *ERROR* Failure to bind: -12
>
> Under 2.6.29-rc6, X hangs during startup. I have to reboot the machine
> to recover. Dmesg says only:
>
> [ 57.001997] [drm] Initialized drm 1.1.0 20060810
> [ 57.121966] pci 0000:00:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
> [ 57.121980] pci 0000:00:02.0: setting latency timer to 64
> [ 57.127739] [drm] Initialized i915 1.6.0 20080730 on minor 0
>
> Relevant device info:
>
> # lspci -v -s 0:2.0
> 00:02.0 VGA compatible controller: Intel Corporation 82845G/GL[Brookdale-G]/GE Chipset Integrated Graphics Device (rev 03) (prog-if 00 [VGA controller])
> Subsystem: Intel Corporation Device 5247
> Flags: bus master, fast devsel, latency 0, IRQ 16
> Memory at f0000000 (32-bit, prefetchable) [size=128M]
> Memory at ffa80000 (32-bit, non-prefetchable) [size=512K]
> Capabilities: [d0] Power Management version 1
> Kernel modules: intelfb
>
> I use XAA because the default EXA method causes X to hang during
> startup even under 2.6.27.

There is a warning about XAA on other chipsets here:
http://marc.info/?l=linux-kernel&m=123536263005071&w=1 but I don't know
if that would apply in your case.

I notice gem messages in your logs... are you using a new enough Intel
Xorg driver? What version are you currently using (see
http://marc.info/?l=dri-devel&m=123578388323843&w=1 for details)? If
it's not new enough you will have to disable kernel mode setting (e.g.
via nomodesetting on the kernel command line).

Finally there is a warning about 8xx being notoriously problematic here:
http://marc.info/?l=linux-kernel&m=123585107823835&w=1 .

HTH.

--
Sitsofe | http://sucs.org/~sits/

2009-03-07 01:38:17

by Eric Anholt

[permalink] [raw]
Subject: Re: Problems with AGPGART/drm and X11 2D-acceleration

On Fri, 2009-03-06 at 15:33 -0500, Alan Stern wrote:
> I've been experiencing problems running X with recent kernels.
> Without 2D-acceleration everything seems to work okay, but scrolling is
> uncomfortably slow. With acceleration enabled...
>
> Under 2.6.27.19, X runs okay. But the dmesg log gets these error
> messages when X start:
>
> [ 54.375769] [drm] Initialized drm 1.1.0 20060810
> [ 54.441049] pci 0000:00:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
> [ 54.441521] pci 0000:00:02.0: setting latency timer to 64
> [ 54.442380] [drm] Initialized i915 1.6.0 20060119 on minor 0
> [ 54.543516] [drm:i915_getparam] *ERROR* Unknown parameter 5
> [ 55.292058] [drm:i915_getparam] *ERROR* Unknown parameter 5

This says userland is asking about things (GEM) that the kernel doesn't
know about.

> Under 2.6.28.7, X fails during startup and exits with an error message.
> Dmesg says:
>
> [ 63.129319] [drm] Initialized drm 1.1.0 20060810
> [ 63.196690] pci 0000:00:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
> [ 63.196704] pci 0000:00:02.0: setting latency timer to 64
> [ 63.197679] [drm] Initialized i915 1.6.0 20080730 on minor 0
> [ 63.457664] [drm:i915_gem_object_bind_to_gtt] *ERROR* GTT full, but LRU list empty
> [ 63.457673] [drm:i915_gem_object_pin] *ERROR* Failure to bind: -12

Your xorg log probably says that you ran out of aperture space while
trying to initialize the server. This message says "I ran out of
aperture space".

If userland's defaults (as long as you don't have any options in
xorg.conf) fail, then they need to be fixed.

> Under 2.6.29-rc6, X hangs during startup. I have to reboot the machine
> to recover. Dmesg says only:
>
> [ 57.001997] [drm] Initialized drm 1.1.0 20060810
> [ 57.121966] pci 0000:00:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
> [ 57.121980] pci 0000:00:02.0: setting latency timer to 64
> [ 57.127739] [drm] Initialized i915 1.6.0 20080730 on minor 0

Can't really say anything here without Xorg.0.log. Maybe a backtrace of
the server, too?

> Relevant device info:
>
> # lspci -v -s 0:2.0
> 00:02.0 VGA compatible controller: Intel Corporation 82845G/GL[Brookdale-G]/GE Chipset Integrated Graphics Device (rev 03) (prog-if 00 [VGA controller])
> Subsystem: Intel Corporation Device 5247
> Flags: bus master, fast devsel, latency 0, IRQ 16
> Memory at f0000000 (32-bit, prefetchable) [size=128M]
> Memory at ffa80000 (32-bit, non-prefetchable) [size=512K]
> Capabilities: [d0] Power Management version 1
> Kernel modules: intelfb

intelfb could interact badly with the DRM, I'd recommend removing it.

> From /etc/X11/xorg.conf:
>
> Section "Device"
> Identifier "Card0"
> Driver "intel"
> VendorName "Intel Corporation"
> BoardName "82845G/GL[Brookdale-G]/GE Chipset Integrated Graphics Device"
> BusID "PCI:0:2:0"
> Option "AccelMethod" "XAA"
> # Option "NoAccel" "yes"
> Option "BackingStore" "on"
> EndSection
>
> I use XAA because the default EXA method causes X to hang during
> startup even under 2.6.27.
>
> Any advice or suggestions for things to try?

Userland needs to get fixed so that the defaults work for pre-9xx. But
we don't support XAA.

--
Eric Anholt
[email protected] [email protected]



Attachments:
signature.asc (197.00 B)
This is a digitally signed message part

2009-03-09 14:49:59

by Alan Stern

[permalink] [raw]
Subject: Re: Problems with AGPGART/drm and X11 2D-acceleration (i8xx)

On Fri, 6 Mar 2009, Sitsofe Wheeler wrote:

> On Fri, Mar 06, 2009 at 03:33:16PM -0500, Alan Stern wrote:
> > I've been experiencing problems running X with recent kernels.
> > Without 2D-acceleration everything seems to work okay, but scrolling is
> > uncomfortably slow. With acceleration enabled...

> > Under 2.6.29-rc6, X hangs during startup. I have to reboot the machine
> > to recover. Dmesg says only:
> >
> > [ 57.001997] [drm] Initialized drm 1.1.0 20060810
> > [ 57.121966] pci 0000:00:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
> > [ 57.121980] pci 0000:00:02.0: setting latency timer to 64
> > [ 57.127739] [drm] Initialized i915 1.6.0 20080730 on minor 0
> >
> > Relevant device info:
> >
> > # lspci -v -s 0:2.0
> > 00:02.0 VGA compatible controller: Intel Corporation 82845G/GL[Brookdale-G]/GE Chipset Integrated Graphics Device (rev 03) (prog-if 00 [VGA controller])
> > Subsystem: Intel Corporation Device 5247
> > Flags: bus master, fast devsel, latency 0, IRQ 16
> > Memory at f0000000 (32-bit, prefetchable) [size=128M]
> > Memory at ffa80000 (32-bit, non-prefetchable) [size=512K]
> > Capabilities: [d0] Power Management version 1
> > Kernel modules: intelfb
> >
> > I use XAA because the default EXA method causes X to hang during
> > startup even under 2.6.27.
>
> There is a warning about XAA on other chipsets here:
> http://marc.info/?l=linux-kernel&m=123536263005071&w=1 but I don't know
> if that would apply in your case.

Doesn't look like it...

> I notice gem messages in your logs... are you using a new enough Intel
> Xorg driver? What version are you currently using (see
> http://marc.info/?l=dri-devel&m=123578388323843&w=1 for details)? If
> it's not new enough you will have to disable kernel mode setting (e.g.
> via nomodesetting on the kernel command line).

Those messages appeared under an older kernel. With 2.6.29-rc they
aren't present.

> Finally there is a warning about 8xx being notoriously problematic here:
> http://marc.info/?l=linux-kernel&m=123585107823835&w=1 .

Indeed, I have had problems with this chipset in the past. Still, that
doesn't explain the way the behavior has been getting worse and worse
for the last few kernel releases.


On Fri, 6 Mar 2009, Eric Anholt wrote:

> Your xorg log probably says that you ran out of aperture space while
> trying to initialize the server. This message says "I ran out of
> aperture space".
>
> If userland's defaults (as long as you don't have any options in
> xorg.conf) fail, then they need to be fixed.

Which defaults need to be fixed, and how should they be changed?

> > Under 2.6.29-rc6, X hangs during startup. I have to reboot the machine
> > to recover. Dmesg says only:
> >
> > [ 57.001997] [drm] Initialized drm 1.1.0 20060810
> > [ 57.121966] pci 0000:00:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
> > [ 57.121980] pci 0000:00:02.0: setting latency timer to 64
> > [ 57.127739] [drm] Initialized i915 1.6.0 20080730 on minor 0

> Can't really say anything here without Xorg.0.log. Maybe a backtrace of
> the server, too?

> intelfb could interact badly with the DRM, I'd recommend removing it.

> Userland needs to get fixed so that the defaults work for pre-9xx. But
> we don't support XAA.

Xorg.0.log is attached. This was done using a slightly newer kernel,
2.6.29-rc7, with EXA acceleration rather than XAA, and with intelfb not
loaded. The Xorg i810 driver version was 2.5.0 (from Fedora 10).

Server backtrace:

[ 368.832023] X S 00000000 0 2119 2118
[ 368.832023] ee95beb0 00003046 00000003 00000000 efa20000 c0721504 c0724700 c0724700
[ 368.832023] efa20000 efa20000 efa20154 c19d0700 00000000 ef7320e4 00003246 ee95be88
[ 368.832023] efa20154 ee95be98 c05b1e06 ee95bec4 ef7320e4 ee95beb0 c042f3cc 00000001
[ 368.832023] Call Trace:
[ 368.832023] [<c05b1e06>] ? _spin_unlock_irqrestore+0x53/0x60
[ 368.832023] [<c042f3cc>] ? prepare_to_wait+0x43/0x49
[ 368.832023] [<f09513b6>] i915_wait_request+0xe5/0x163 [i915]
[ 368.832023] [<c042f1e3>] ? autoremove_wake_function+0x0/0x33
[ 368.832023] [<f0951460>] i915_gem_throttle_ioctl+0x2c/0x3c [i915]
[ 368.832023] [<f07995c3>] drm_ioctl+0x1b7/0x22f [drm]
[ 368.832023] [<f0951434>] ? i915_gem_throttle_ioctl+0x0/0x3c [i915]
[ 368.832023] [<c04759d1>] vfs_ioctl+0x50/0x69
[ 368.832023] [<c0475f01>] do_vfs_ioctl+0x453/0x48c
[ 368.832023] [<c0459c7e>] ? might_fault+0x86/0x88
[ 368.832023] [<c04e0eb1>] ? copy_from_user+0x2a/0x111
[ 368.832023] [<c0421e96>] ? sys_setitimer+0x46/0x71
[ 368.832023] [<c04030cc>] ? restore_nocheck_notrace+0x0/0xe
[ 368.832023] [<c0475f66>] sys_ioctl+0x2c/0x45
[ 368.832023] [<c0403005>] sysenter_do_call+0x12/0x35

Without 2D acceleration everything works, but of course then neither
the drm nor the i915 module gets loaded.

Anything else I can try? Newer drivers? More debugging?

Alan Stern


Attachments:
Xorg.0.log (27.67 kB)