FS#34327 - [linux] 3.8.3 detects non-existing VGA output

Attached to Project: Arch Linux
Opened by Lukas Jirkovsky (6xx) - Friday, 15 March 2013, 18:43 GMT
Last edited by Tobias Powalowski (tpowa) - Sunday, 17 March 2013, 13:01 GMT
Task Type Bug Report
Category Packages: Testing
Status Closed
Assigned To Tobias Powalowski (tpowa)
Architecture All
Severity Medium
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 3
Private No

Details

Description:
After upgrade from linux-3.8.2 to linux-3.8.3, VGA output is detected even though there's nothing connected to the VGA output on my laptop. This causes KDE to change the laptop screen resolution to the resolution of the non-existant VGA output.

Additional info:
* linux-3.8.3
* Laptop Asus UL30A with Intel GMA 4500MHD graphics (Intel Gen 4)
* dmesg logs for both linux 3.8.2 and 3.8.3 are attached

Steps to reproduce:
Just boot a new kernel and check the detected outputs using xrandr.

Expected xrandr output (linux 3.8.2):
------------------------------------
Screen 0: minimum 320 x 200, current 1366 x 768, maximum 32767 x 32767
LVDS1 connected 1366x768+0+0 (normal left inverted right x axis y axis) 293mm x 164mm
1366x768 60.0*+
1024x768 60.0
800x600 60.3 56.2
640x480 59.9
VGA1 disconnected (normal left inverted right x axis y axis)
HDMI1 disconnected (normal left inverted right x axis y axis)
DP1 disconnected (normal left inverted right x axis y axis)
DP2 disconnected (normal left inverted right x axis y axis)

xrandr output when running linux 3.8.3:
---------------------------------------
Screen 0: minimum 320 x 200, current 1024 x 768, maximum 32767 x 32767
LVDS1 connected 1024x768+0+0 (normal left inverted right x axis y axis) 293mm x 164mm
1366x768 60.0 +
1024x768 60.0*
800x600 60.3 56.2
640x480 59.9
VGA1 connected 1024x768+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
1024x768 60.0*
800x600 60.3 56.2
848x480 60.0
640x480 59.9
HDMI1 disconnected (normal left inverted right x axis y axis)
DP1 disconnected (normal left inverted right x axis y axis)
DP2 disconnected (normal left inverted right x axis y axis)
This task depends upon

Closed by  Tobias Powalowski (tpowa)
Sunday, 17 March 2013, 13:01 GMT
Reason for closing:  Fixed
Additional comments about closing:  3.8.3-2
Comment by Frederic Bezies (fredbezies) - Friday, 15 March 2013, 21:56 GMT
Seeing this too with my laptop.

Also using an intel graphic chipset :

00:02.0 VGA compatible controller: Intel Corporation Mobile 4 Series Chipset Integrated Graphics Controller (rev 07)
Comment by Frederic Bezies (fredbezies) - Friday, 15 March 2013, 22:01 GMT
Could it be related to this commit ?

commit aaf4a8519e2582203e6de1f2e2b21954c68dca7a
Author: Patrik Jakobsson <patrik.r.jakobsson@gmail.com>
Date: Tue Mar 5 14:24:48 2013 +0100

drm/i915: Turn off hsync and vsync on ADPA when disabling crt

commit f40ebd6bcbbd0d30591f42dc16be52b5086a366b upstream.

According to PRM we need to disable hsync and vsync even though ADPA is
disabled. The previous code did infact do the opposite so we fix it.

Signed-off-by: Patrik Jakobsson <patrik.r.jakobsson@gmail.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=56359
Tested-by: max <manikulin@gmail.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Comment by Philip Müller (philm) - Saturday, 16 March 2013, 09:55 GMT
I think it is more like this one here: http://www.spinics.net/lists/kernel/msg1499223.html

2a9810441fcc26cf3f006f015f8a62094fe57a90 is the first bad commit
commit 2a9810441fcc26cf3f006f015f8a62094fe57a90
Author: Daniel Vetter <daniel.vetter@xxxxxxxx>
Date: Sat Dec 1 21:03:22 2012 +0100

drm/i915: reorder setup sequence to have irqs for output setup

commit 52d7ecedac3f96fb562cb482c139015372728638 upstream.

Otherwise the new&shiny irq-driven gmbus and dp aux code won't work that
well. Noticed since the dp aux code doesn't have an automatic fallback
with a timeout (since the hw provides for that already).

To quote Michael Leun:

"I also have an 3.8.2->3.8.3 regression which goes away with reverting
the same patch - X comes up with 1024x768 instead of 1366x768.

Acer Aspire 1825PTZ

00:02.0 VGA compatible controller: Intel Corporation Mobile 4 Series Chipset Integrated Graphics Controller (rev 07) (prog-if 00 [VGA controller])
Subsystem: Acer Incorporated [ALI] Device 0300"
Comment by Frederic Bezies (fredbezies) - Saturday, 16 March 2013, 09:58 GMT
Well, I was just guessing. Anyway, if reverting this patch could fix the bug, it will be great :D
Comment by Philip Müller (philm) - Saturday, 16 March 2013, 10:41 GMT
Frederic, I can confirm that you have the same bug as Michael Leun and Arkadiusz Miskiewicz has, since with 3.8.3 your console is switching to colour frame buffer device 128x48 instead of the working colour frame buffer device 170x48.

Arkadiusz' colour frame buffer device changes from device 180x56 to device 128x48.

I recommend to get the linux PKGBUILD and revert that patch on your end to confirm that it fixes your problem:

mkdir -p ~/abs
cd ~/abs
svn checkout --depth=empty svn://svn.archlinux.org/packages
cd packages
svn update linux
sudo pacman -Sy base-devel
cd linux
wget http://git.kernel.org/cgit/linux/kernel/git/stable/stable-queue.git/plain/releases/3.8.3/drm-i915-reorder-setup-sequence-to-have-irqs-for-output-setup.patch
sed -i 's:patch-${pkgver}":patch -p1 -i patch-${pkgver}"\npatch -Rp1 "${srcdir}/../drm-i915-reorder-setup-sequence-to-have-irqs-for-output-setup.patch":g' PKGBUILD
makepkg -si


Again your relevant snippes from your dmesg messages:

Linux 3.8.2

[ 7.056713] [drm] GMBUS [i915 gmbus ssc] timed out, falling back to bit banging on pin 1
[ 7.057495] input: Wacom Bamboo Connect Pen as /devices/pci0000:00/0000:00:1d.0/usb5/5-1/5-1:1.0/input/input10
[ 7.060521] input: Wacom Bamboo Connect Finger as /devices/pci0000:00/0000:00:1d.0/usb5/5-1/5-1:1.1/input/input11
[ 7.061056] usbcore: registered new interface driver wacom
[ 7.097497] fbcon: inteldrmfb (fb0) is primary device
[ 7.129486] Linux video capture interface: v2.00
...
[ 7.788436] Console: switching to colour frame buffer device 170x48
[ 7.793497] i915 0000:00:02.0: fb0: inteldrmfb frame buffer device
[ 7.793500] i915 0000:00:02.0: registered panic notifier
[ 7.794092] ACPI: Video Device [VGA] (multi-head: yes rom: no post: no)
[ 7.795067] input: Video Bus as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/LNXVIDEO:00/input/input13

Linux 3.8.3

[ 7.770024] [drm] GMBUS [i915 gmbus ssc] timed out, falling back to bit banging on pin 1
[ 7.784279] sd 4:0:0:0: [sdb] Attached SCSI removable disk
[ 7.797807] fbcon: inteldrmfb (fb0) is primary device
[ 8.565815] Console: switching to colour frame buffer device 128x48
[ 8.569692] i915 0000:00:02.0: fb0: inteldrmfb frame buffer device
[ 8.569695] i915 0000:00:02.0: registered panic notifier
[ 8.569908] ACPI: Video Device [VGA] (multi-head: yes rom: no post: no)
[ 8.613167] input: Video Bus as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/LNXVIDEO:00/input/input13
Comment by Frederic Bezies (fredbezies) - Saturday, 16 March 2013, 10:44 GMT
Will try this now and report asap.

Linux 3.8.2 dmesg :

[ 9.974064] [drm] Initialized drm 1.1.0 20060810
[...]
[ 10.641398] fb: conflicting fb hw usage inteldrmfb vs VESA VGA - removing gen
eric driver
[ 10.641457] Console: switching to colour dummy device 80x25
[ 10.641587] i915 0000:00:02.0: setting latency timer to 64
[ 10.686287] i915 0000:00:02.0: irq 46 for MSI/MSI-X
[ 10.686301] [drm] Supports vblank timestamp caching Rev 1 (10.10.2010).
[ 10.686302] [drm] Driver supports precise vblank timestamp query.
[ 10.686350] vgaarb: device changed decodes: PCI:0000:00:02.0,olddecodes=io+me
m,decodes=io+mem:owns=io+mem
[ 11.002395] fbcon: inteldrmfb (fb0) is primary device
[ 11.002456] i915: fixme: max PWM is zero
[ 11.700107] Console: switching to colour frame buffer device 160x50
[ 11.705585] i915 0000:00:02.0: fb0: inteldrmfb frame buffer device
[ 11.705588] i915 0000:00:02.0: registered panic notifier
[ 11.714909] acpi device:02: registered as cooling_device3
[ 11.715011] ACPI: Video Device [OVGA] (multi-head: yes rom: no post: no)
[ 11.715297] input: Video Bus as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/L
NXVIDEO:00/input/input11
[ 11.715619] [drm] Initialized i915 1.6.0 20080730 for 0000:00:02.0 on minor 0
Comment by Frederic Bezies (fredbezies) - Saturday, 16 March 2013, 12:26 GMT
Kernel cannot be built while reverting the patch. Here is the error log :

LD drivers/gpu/drm/i915/built-in.o
CC [M] drivers/gpu/drm/i915/i915_drv.o
drivers/gpu/drm/i915/i915_drv.c: In function ‘i915_drm_freeze’:
drivers/gpu/drm/i915/i915_drv.c:489:11: erreur: ‘struct drm_i915_private’ has no member named ‘enable_hotplug_processing’
drivers/gpu/drm/i915/i915_drv.c: In function ‘__i915_drm_thaw’:
drivers/gpu/drm/i915/i915_drv.c:578:11: erreur: ‘struct drm_i915_private’ has no member named ‘enable_hotplug_processing’
make[4]: *** [drivers/gpu/drm/i915/i915_drv.o] Error 1
make[3]: *** [drivers/gpu/drm/i915] Error 2
make[2]: *** [drivers/gpu/drm] Error 2
make[1]: *** [drivers/gpu] Error 2
make: *** [drivers] Error 2

Maybe all i915 related patches for 3.8.3 need to be reverted. Until this, there is two options : blocking the upgrade or waiting for kernel 3.8.4 after reporting the problem upstream.
Comment by Tobias Powalowski (tpowa) - Saturday, 16 March 2013, 15:41 GMT Comment by Frederic Bezies (fredbezies) - Saturday, 16 March 2013, 15:51 GMT
I will try this in something like 2 or 3 hours. Real life problems power :(

edit : rebuild kernel and indeed, with both patches, display is correct again.

[fred@fredo-arch ~]$ uname -a
Linux fredo-arch 3.8.3-1-ARCH #1 SMP PREEMPT Sat Mar 16 20:24:36 CET 2013 x86_64 GNU/Linux

Let's hope this will get fixed in a cleaner way for linux 3.8.4 :D

Loading...