Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 15 May 2009 16:21:01 +0300
From:      Andriy Gapon <avg@icyb.net.ua>
To:        freebsd-x11@freebsd.org, Robert Noland <rnoland@freebsd.org>
Subject:   stable/7, intel: troubles after vt swicth
Message-ID:  <4A0D6C3D.8020400@icyb.net.ua>

next in thread | raw e-mail | index | archive | help

This is amd64 stable/7 system from latest sources as of yesterday.
Hardware is integrated G33 on DG33TL motherboard.
Ports:
xorg-server-1.6.1,1
xf86-video-intel-2.7.0
Mesa/DRI ports are at 7.4.1_1

I have DRI, AIGLX, EXA enabled in xorg.conf.

Symptoms:
X works fine initially.
After vt-switching to console and back I see the following:
X becomes subjectively less responsive.
The most visible regression is rendering of text in konsole.
There seems to be zero interrupts generated for drm/vgapci driver, interrupt count
stays the same in vmstat -i output.
Moving mouse seems to speed up text rendering in konsole - strange but true.

I see the following in X log after the switch:
(II) AIGLX: Suspending AIGLX clients for VT switch
(II) intel(0): xf86UnbindGARTMemory: unbind key 1
(II) intel(0): xf86UnbindGARTMemory: unbind key 2
(II) intel(0): xf86UnbindGARTMemory: unbind key 5
(II) intel(0): xf86UnbindGARTMemory: unbind key 3
(II) intel(0): xf86UnbindGARTMemory: unbind key 4
(II) intel(0): xf86UnbindGARTMemory: unbind key 6
(II) intel(0): xf86UnbindGARTMemory: unbind key 7
(II) intel(0): xf86UnbindGARTMemory: unbind key 8
(WW) intel(0): drmDropMaster failed: Unknown error: -1
(II) AIGLX: Resuming AIGLX clients after VT switch
(WW) intel(0): drmDropMaster failed: Unknown error: -1
(II) intel(0): xf86BindGARTMemory: bind key 1 at 0x006ff000 (pgoffset 1791)
(II) intel(0): xf86BindGARTMemory: bind key 2 at 0x0082a000 (pgoffset 2090)
(II) intel(0): xf86BindGARTMemory: bind key 5 at 0x0082b000 (pgoffset 2091)
(II) intel(0): xf86BindGARTMemory: bind key 3 at 0x01000000 (pgoffset 4096)
(II) intel(0): xf86BindGARTMemory: bind key 4 at 0x02000000 (pgoffset 8192)
(II) intel(0): xf86BindGARTMemory: bind key 6 at 0x05000000 (pgoffset 20480)
(II) intel(0): xf86BindGARTMemory: bind key 7 at 0x06000000 (pgoffset 24576)
(II) intel(0): xf86BindGARTMemory: bind key 8 at 0x07000000 (pgoffset 28672)
(II) intel(0): Fixed memory allocation layout:
(II) intel(0): 0x00000000-0x0001ffff: ring buffer (128 kB)
(II) intel(0): 0x00020000-0x00029fff: HW cursors (40 kB)
(II) intel(0): 0x0002a000-0x00829fff: fake bufmgr (8192 kB)
(II) intel(0): 0x006ff000:            end of stolen memory
(II) intel(0): 0x0082a000-0x0082afff: overlay registers (4 kB)
(II) intel(0): 0x0082b000-0x0082bfff: HW status (4 kB)
(II) intel(0): 0x01000000-0x01ffffff: front buffer (16384 kB) X tiled
(II) intel(0): 0x02000000-0x0475ffff: exa offscreen (40320 kB)
(II) intel(0): 0x05000000-0x05ffffff: back buffer (16384 kB) X tiled
(II) intel(0): 0x06000000-0x06ffffff: depth buffer (16384 kB) X tiled
(II) intel(0): 0x07000000-0x08ffffff: classic textures (32768 kB)
(II) intel(0): 0x10000000:            end of aperture
(WW) intel(0): ESR is 0x00000011, page table error, instruction error
(WW) intel(0): PGTBL_ER is 0x00000003, host gtt pte, host pte data
(WW) intel(0): Existing errors found in hardware state.
(II) intel(0): [drm] mapped front buffer at 0xd1000000, handle = 0xd1000000
(II) intel(0): Output configuration:
(II) intel(0):   Pipe A is on
(II) intel(0):   Display plane A is now enabled and connected to pipe A.
(II) intel(0):   Pipe B is off
(II) intel(0):   Display plane B is now disabled and connected to pipe B.
(II) intel(0):   Output VGA is connected to pipe none
(II) intel(0):   Output TMDS-1 is connected to pipe A
(II) intel(0): [drm] dma control initialized, using IRQ 256

Here's some output that I got from setting hw.dri.0.debug=1 for 0.3 seconds:
[drm:pid1932:drm_ioctl] pid=1932, cmd=0xc0086444, nr=0x44, dev 0xffffff0001507800,
auth=1
[drm:pid1932:i915_emit_irq]
[drm:pid1932:drm_ioctl] pid=1932, cmd=0x80046445, nr=0x45, dev 0xffffff0001507800,
auth=1
[drm:pid1932:i915_wait_irq] irq_nr=29161896 breadcrumb=29161896
[drm:pid1932:drm_ioctl] pid=1932, cmd=0x80206443, nr=0x43, dev 0xffffff0001507800,
auth=1
[drm:pid1932:i915_batchbuffer] i915 batchbuffer, start 2e000 used 16280 cliprects 0
[drm:pid1932:drm_ioctl] pid=1932, cmd=0xc0086444, nr=0x44, dev 0xffffff0001507800,
auth=1
[drm:pid1932:i915_emit_irq]
[drm:pid1932:drm_ioctl] pid=1932, cmd=0xc0086444, nr=0x44, dev 0xffffff0001507800,
auth=1
[drm:pid1932:i915_emit_irq]
[drm:pid1932:drm_ioctl] pid=1932, cmd=0x80046445, nr=0x45, dev 0xffffff0001507800,
auth=1
[drm:pid1932:i915_wait_irq] irq_nr=29161899 breadcrumb=29161899
[drm:pid1932:drm_ioctl] pid=1932, cmd=0x80206443, nr=0x43, dev 0xffffff0001507800,
auth=1
[drm:pid1932:i915_batchbuffer] i915 batchbuffer, start 2a000 used 16256 cliprects 0
[drm:pid1932:drm_ioctl] pid=1932, cmd=0xc0086444, nr=0x44, dev 0xffffff0001507800,
auth=1
[drm:pid1932:i915_emit_irq]
[drm:pid1932:drm_ioctl] pid=1932, cmd=0xc0086444, nr=0x44, dev 0xffffff0001507800,
auth=1
[drm:pid1932:i915_emit_irq]
[drm:pid1932:drm_ioctl] pid=1932, cmd=0x80046445, nr=0x45, dev 0xffffff0001507800,
auth=1
[drm:pid1932:i915_wait_irq] irq_nr=29161902 breadcrumb=29161902
[drm:pid1932:drm_ioctl] pid=1932, cmd=0x80206443, nr=0x43, dev 0xffffff0001507800,
auth=1
[drm:pid1932:i915_batchbuffer] i915 batchbuffer, start 2e000 used 16232 cliprects 0
[drm:pid1932:drm_ioctl] pid=1932, cmd=0xc0086444, nr=0x44, dev 0xffffff0001507800,
auth=1
[drm:pid1932:i915_emit_irq]
[drm:pid1932:drm_ioctl] pid=1932, cmd=0xc0086444, nr=0x44, dev 0xffffff0001507800,
auth=1
[drm:pid1932:i915_emit_irq]
[drm:pid1932:drm_ioctl] pid=1932, cmd=0x80046445, nr=0x45, dev 0xffffff0001507800,
auth=1
[drm:pid1932:i915_wait_irq] irq_nr=29161905 breadcrumb=29161905
[drm:pid1932:drm_ioctl] pid=1932, cmd=0x80206443, nr=0x43, dev 0xffffff0001507800,
auth=1
[drm:pid1932:i915_batchbuffer] i915 batchbuffer, start 2a000 used 16280 cliprects 0
[drm:pid1932:drm_ioctl] pid=1932, cmd=0xc0086444, nr=0x44, dev 0xffffff0001507800,
auth=1
[drm:pid1932:i915_emit_irq]
[drm:pid1932:drm_ioctl] pid=1932, cmd=0xc0086444, nr=0x44, dev 0xffffff0001507800,
auth=1
[drm:pid1932:i915_emit_irq]
[drm:pid1932:drm_ioctl] pid=1932, cmd=0x80046445, nr=0x45, dev 0xffffff0001507800,
auth=1
[drm:pid1932:i915_wait_irq] irq_nr=29161908 breadcrumb=29161908
[drm:pid1932:drm_ioctl] pid=1932, cmd=0x80206443, nr=0x43, dev 0xffffff0001507800,
auth=1
[drm:pid1932:i915_batchbuffer] i915 batchbuffer, start 2e000 used 16304 cliprects 0
[drm:pid1932:drm_ioctl] pid=1932, cmd=0xc0086444, nr=0x44, dev 0xffffff0001507800,
auth=1
[drm:pid1932:i915_emit_irq]
[drm:pid1932:drm_ioctl] pid=1932, cmd=0xc0086444, nr=0x44, dev 0xffffff0001507800,
auth=1
[drm:pid1932:i915_emit_irq]
[drm:pid1932:drm_ioctl] pid=1932, cmd=0x80046445, nr=0x45, dev 0xffffff0001507800,
auth=1
[drm:pid1932:i915_wait_irq] irq_nr=29161911 breadcrumb=29161911
[drm:pid1932:drm_ioctl] pid=1932, cmd=0x80206443, nr=0x43, dev 0xffffff0001507800,
auth=1
[drm:pid1932:i915_batchbuffer] i915 batchbuffer, start 2a000 used 16304 cliprects 0
[drm:pid1932:drm_ioctl] pid=1932, cmd=0xc0086444, nr=0x44, dev 0xffffff0001507800,
auth=1
[drm:pid1932:i915_emit_irq]
[drm:pid1932:drm_ioctl] pid=1932, cmd=0xc0086444, nr=0x44, dev 0xffffff0001507800,
auth=1
[drm:pid1932:i915_emit_irq]
[drm:pid1932:drm_ioctl] pid=1932, cmd=0x80046445, nr=0x45, dev 0xffffff0001507800,
auth=1
[drm:pid1932:i915_wait_irq] irq_nr=29161914 breadcrumb=29161911
[drm:pid1932:i915_user_irq_get]
[drm:pid1932:i915_enable_irq] irq_enable_reg = 0xffffffaf, mask = 0x00000002


-- 
Andriy Gapon



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4A0D6C3D.8020400>