[i815] [drm:drm_release] *ERROR* reclaim_buffers_locked() deadlock
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
linux (Ubuntu) |
Won't Fix
|
Low
|
Unassigned |
Bug Description
Binary package hint: xserver-
This affects 8.10 Intrepid desktop live-CD boot - currently not able to install to the hard disk.
Sony Vaio PCG-SRX51P/B notebook with Intel i815M video and 384MB RAM.
When X starts the screen becomes totally black with no cursor.
/var/log/kern.log:
[ 108.233394] Linux agpgart interface v0.103
[ 108.677023] agpgart-intel 0000:00:00.0: Intel i815 Chipset
[ 108.956406] agpgart-intel 0000:00:00.0: AGP aperture is 64M @ 0xf8000000
[ 148.203385] [drm] Initialized i810 1.4.0 20030605 on minor 0
[ 148.205947] mtrr: base(0xf8000000) is not aligned on a size(0x280000) boundary
[ 149.280963] [drm] Using v1.4 init.
[ 149.284460] mtrr: base(0xf8000000) is not aligned on a size(0x3000000) boundary
[ 152.520038] [drm:drm_release] *ERROR* reclaim_
[ 152.520048] ^Idriver to use reclaim_
[ 152.520052] ^II will go on reclaiming the buffers anyway.
----------
/var/log/
X.Org X Server 1.5.2
Release Date: 10 October 2008
X Protocol Version 11, Revision 0
Build Operating System: Linux 2.6.24-19-server i686 Ubuntu
Current Operating System: Linux ubuntu 2.6.27-7-generic #1 SMP Fri Oct 24 06:42:44 UTC 2008 i686
Build Date: 24 October 2008 08:00:16AM
xorg-server 2:1.5.2-2ubuntu3 (<email address hidden>)
error setting MTRR (base = 0xf8000000, size = 0x03000000, type = 1) Invalid argument (22)
error setting MTRR (base = 0xf8000000, size = 0x03000000, type = 1) Invalid argument (22)
----------
/var/log/
(II) [drm] loaded kernel module for "i810" driver.
(II) [drm] DRM interface version 1.3
(II) [drm] DRM open master succeeded.
(II) intel(0): [drm] Using the DRM lock SAREA also for drawables.
(II) intel(0): [drm] framebuffer handle = 0xf8000000
(II) intel(0): [drm] added 1 reserved context for kernel
(II) intel(0): X context handle = 0x1
(II) intel(0): [drm] installed DRM signal handler
(II) intel(0): [drm] Registers = 0xf4000000
(II) intel(0): [agp] dcacheHandle : 0x0
(II) intel(0): [agp] GART: no dcache memory found
(II) intel(0): [agp] Bound backbuffer memory
(II) intel(0): [agp] Bound depthbuffer memory
(II) intel(0): [agp] Bound System Texture Memory
(II) intel(0): [agp] GART: Allocated 4K for mouse cursor image
(II) intel(0): [agp] GART: Allocated 16K for ARGB mouse cursor image
(II) intel(0): Adding 384 scanlines for pixmap caching
(II) intel(0): Allocated Scratch Memory
(II) intel(0): [dri] Buffer map : efb000
(II) intel(0): [drm] added 256 4096 byte DMA buffers
(II) intel(0): [drm] Init v1.4 interface.
(II) intel(0): [drm] dma control initialized, using IRQ -22
(II) intel(0): [dri] visual configs initialized.
(II) intel(0): [DRI] installation complete
(II) intel(0): Direct rendering enabled
----------
It is possible to switch to a console terminal although the usable area is a small section in the centre of the 1024x768 display.
If gdm is stopped /var/log/kern.log shows:
[ 2420.316038] [drm:drm_release] *ERROR* reclaim_
[ 2420.316044] ^Idriver to use reclaim_
[ 2420.316048] ^II will go on reclaiming the buffers anyway.
[ 2423.320029] [drm:i810_
[ 2423.320098] [drm:i810_
[ 2423.324281] [drm] DMA Cleanup
[ 2423.346050] mtrr: no MTRR for f8000000,3000000 found
----------
cat /proc/mtrr
reg00: base=0x00000000 ( 0MB), size= 256MB: write-back, count=1
reg01: base=0x10000000 ( 256MB), size= 128MB: write-back, count=1
reg02: base=0x17e80000 ( 382MB), size= 512KB: uncachable, count=1
reg03: base=0x17f00000 ( 383MB), size= 1MB: uncachable, count=1
reg04: base=0xf8000000 (3968MB), size= 64MB: write-combining, count=1
----------
Disabling DRI in /etc/X11/xorg.conf helps only slightly in that X tries to reconfigure the display and gets stuck in a loop of dialog choices (very small - 6px - text too) which results in it using the 'generic' profile again which tries to use DRI and therefore the screen is blank once more.
Section "Device"
Option "DRI" off
EndSection
[lspci]
00:00.0 Host bridge [0600]: Intel Corporation 82815 815 Chipset Host Bridge and Memory Controller Hub [8086:1130] (rev 11)
Subsystem: Sony Corporation Device [104d:80f2]
00:02.0 VGA compatible controller [0300]: Intel Corporation 82815 Chipset Graphics Controller (CGC) [8086:1132] (rev 11)
Subsystem: Sony Corporation Device [104d:80f2]
description: | updated |
summary: |
- [drm:drm_release] *ERROR* reclaim_buffers_locked() deadlock + [i815] [drm:drm_release] *ERROR* reclaim_buffers_locked() deadlock |
tags: | added: intrepid |
summary: |
- [i815] [drm:drm_release] *ERROR* reclaim_buffers_locked() deadlock + [i815] [i815] [drm:drm_release] *ERROR* reclaim_buffers_locked() + deadlock |
tags: | added: hardy |
summary: |
- [i815] [i815] [drm:drm_release] *ERROR* reclaim_buffers_locked() - deadlock + [i815] [drm:drm_release] *ERROR* reclaim_buffers_locked() deadlock |
The "blank screen" issue has been resolved. It was caused by having an external 1280x1024 monitor connected which provides EDID information (obvious when I analysed the Xorg.0.log and remembered the integral display is 1024x768).
That EDID info was then being used to try and configure the integral display. What is strange is why the external display didn't manage to show something since the text console is cloned on both displays.
Without the external monitor connected xserver starts in 800x600 non-scaled centred mode - this due to bug #288807.
I've played about with moving the video MTRR around via /proc/mtrr to try and resolve the primary issue in this report. So far I've not made much headway, aside from aligning the region on a size-boundary:
echo "disable=4" > /proc/mtrr combining" > /proc/mtrr
echo "base=0xf0000000 size=0x04000000 type=write-