Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 355205 - [regression] xf86-video-nouveau-0.0.16_pre20101130 breaks multi-monitor setup
Summary: [regression] xf86-video-nouveau-0.0.16_pre20101130 breaks multi-monitor setup
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: AMD64 Linux
: High normal (vote)
Assignee: Gentoo X packagers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-02-16 16:45 UTC by Dragos Delcea
Modified: 2011-05-10 13:32 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
dmesg output (dmesg.txt,61.38 KB, text/plain)
2011-02-16 17:02 UTC, Dragos Delcea
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Dragos Delcea 2011-02-16 16:45:44 UTC
after updating to xf86-video-nouveau-0.0.16_pre20101130 (up from xf86-video-nouveau-0.0.16_pre20101010) my dual monitor setup (laptop display + external LCD monitor) quit working. The previous version was working without issues.

Reproducible: Always

Steps to Reproduce:
1. boot laptop with external LCD monitor attached; at this point both displays are working in mirror mode and using a resolution that is supported by both (but is not native to either of them)
2. run the usual xrandr commands to switch each display to it's native resolution and to "move" the external monitor rightof the laptop's one
3.

Actual Results:  
- changing resolution to the laptop display (primary) succedes, but corrupts the secondary display
- changing the resolution or moving the external monitor right of the primary one makes X "freeze" - nothing is updated, the image is simply still, no more cursor or interaction with X is possible; switching to the console works, and changing back to X gives severely corrupted display on both monitors, some sort of stair-case effect. Restarting X also works (from the console), but that doesn't make xrandr issues go away.
Let me mention that doing it using gnome-display-manager ends up the same way.

Expected Results:  
changing the resolutions and moving the displays to their usual positions works, and then once can start using the laptop as is normally does.

Portage 2.1.9.25 (default/linux/amd64/10.0/desktop/gnome, gcc-4.4.4, glibc-2.11.2-r3, 2.6.36-gentoo-r7.e6510 x86_64)
=================================================================
System uname: Linux-2.6.36-gentoo-r7.e6510-x86_64-Intel-R-_Core-TM-_i5_CPU_M_540_@_2.53GHz-with-gentoo-2.0.1
Timestamp of tree: Wed, 16 Feb 2011 01:45:01 +0000
app-shells/bash:     4.1_p9
dev-java/java-config: 2.1.11-r3
dev-lang/python:     2.6.6-r1, 3.1.2-r4
dev-util/cmake:      2.8.1-r2
sys-apps/baselayout: 2.0.1-r1
sys-apps/openrc:     0.7.0
sys-apps/sandbox:    2.4
sys-devel/autoconf:  2.13, 2.65-r1
sys-devel/automake:  1.8.5-r4, 1.9.6-r3, 1.10.3, 1.11.1
sys-devel/binutils:  2.20.1-r1
sys-devel/gcc:       4.4.4-r2
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.2.10
sys-devel/make:      3.81-r2
virtual/os-headers:  2.6.30-r1 (sys-kernel/linux-headers)
ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -march=native -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-O2 -march=native -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="assume-digests binpkg-logs distlocks fixlafiles fixpackages news noinfo parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
GENTOO_MIRRORS="http://mirror.usu.edu/mirrors/gentoo/ http://gd.tuwien.ac.at/opsys/linux/gentoo/"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="en"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="acl acpi alsa amd64 bluetooth cdr consolekit cups dbus dri hal iconv mime mmap mmx mmx2 multilib ncurses networkmanager nls nptl opengl pam pcmcia policykit pulseaudio sse sse2 sse3 ssl ssse3 threads unicode usb v4l v4l2 xattr xcb xinerama xml zlib" ALSA_CARDS="hda_intel" ALSA_PCM_PLUGINS="plug ioplug dmix adpcm alaw asym copy dshare dsnoop empty extplug file hooks iec958 ladspa lfloat linear meter mulaw multi null rate route share shm softvol mmap_emul" ELIBC="glibc" INPUT_DEVICES="evdev" KERNEL="linux" LINGUAS="en" QEMU_SOFTMMU_TARGETS="x86_64 i386" USERLAND="GNU" VIDEO_CARDS="vesa nouveau" 
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY
Comment 1 Chí-Thanh Christopher Nguyễn gentoo-dev 2011-02-16 16:54:58 UTC
Do you have the same problem if you configure a static monitor layout in xorg.conf, as described in http://www.gentoo.org/doc/en/xorg-config.xml#doc_chap4_sect2 ?
Comment 2 Dragos Delcea 2011-02-16 16:58:38 UTC
starting X gave me this:
[   27.737470] [drm] nouveau 0000:01:00.0: unknown parameter 15
[   27.737847] [drm] nouveau 0000:01:00.0: unknown parameter 15
[   27.737913] [drm] nouveau 0000:01:00.0: unknown parameter 16

just connecting the external LCD monitor froze X and the following was found in the dmesg (full dmesg will be attached later):


[ 2088.423361] [drm] nouveau 0000:01:00.0: plugged DP-1
[ 2089.140943] [drm] nouveau 0000:01:00.0: EvoCh 0 Mthd 0x086c Data 0x00103340 (0x0084 0x04)
[ 2089.140980] [drm] nouveau 0000:01:00.0: EvoCh 0 Mthd 0x0080 Data 0x00000000 (0x100d 0x05)
[ 2089.159362] [drm] nouveau 0000:01:00.0: EvoCh 0 Mthd 0x0080 Data 0x00000000 (0x100d 0x05)
[ 2089.159513] [drm] nouveau 0000:01:00.0: EvoCh 0 Mthd 0x0c6c Data 0x00103340 (0x1084 0x04)
[ 2089.160226] [drm] nouveau 0000:01:00.0: EvoCh 0 Mthd 0x0080 Data 0x00000000 (0x100d 0x05)
[ 2093.721640] [drm] nouveau 0000:01:00.0: EvoCh 0 Mthd 0x0080 Data 0x00000000 (0x100d 0x05)
[ 2093.783022] [drm] nouveau 0000:01:00.0: EvoCh 0 Mthd 0x0080 Data 0x00000000 (0x100d 0x05)
[ 2093.790822] [drm] nouveau 0000:01:00.0: EvoCh 0 Mthd 0x0080 Data 0x00000000 (0x100d 0x05)
[ 2093.793541] [drm] nouveau 0000:01:00.0: EvoCh 0 Mthd 0x0080 Data 0x00000000 (0x100d 0x05)
[ 2093.998922] [drm] nouveau 0000:01:00.0: EvoCh 0 Mthd 0x0080 Data 0x00000000 (0x100d 0x05)
[ 2093.998983] [drm] nouveau 0000:01:00.0: EvoCh 0 Mthd 0x0080 Data 0x00000000 (0x100d 0x05)
[ 2094.713110] [drm] nouveau 0000:01:00.0: EvoCh 0 Mthd 0x0080 Data 0x00000000 (0x100d 0x05)
[ 2094.750479] [drm] nouveau 0000:01:00.0: EvoCh 0 Mthd 0x0080 Data 0x00000000 (0x100d 0x05)
[ 2095.174211] [drm] nouveau 0000:01:00.0: EvoCh 0 Mthd 0x0080 Data 0x00000000 (0x100d 0x05)
[ 2095.174241] [drm] nouveau 0000:01:00.0: EvoCh 0 Mthd 0x0080 Data 0x00000000 (0x100d 0x05)
[ 2095.648567] [drm] nouveau 0000:01:00.0: EvoCh 0 Mthd 0x0080 Data 0x00000000 (0x100d 0x05)
[ 2095.781914] [drm] nouveau 0000:01:00.0: EvoCh 0 Mthd 0x0080 Data 0x00000000 (0x100d 0x05)
[ 2096.781289] [drm] nouveau 0000:01:00.0: EvoCh 0 Mthd 0x0080 Data 0x00000000 (0x100d 0x05)
[ 2096.781318] [drm] nouveau 0000:01:00.0: EvoCh 0 Mthd 0x0080 Data 0x00000000 (0x100d 0x05)
[ 2101.515081] [drm] nouveau 0000:01:00.0: EvoCh 0 Mthd 0x0080 Data 0x00000000 (0x100d 0x05)
[ 2101.595730] [drm] nouveau 0000:01:00.0: EvoCh 0 Mthd 0x0080 Data 0x00000000 (0x1006 0x05)
[ 2103.279054] [drm] nouveau 0000:01:00.0: EvoCh 0 Mthd 0x086c Data 0x00103340 (0x1084 0x04)
[ 2103.279089] [drm] nouveau 0000:01:00.0: EvoCh 0 Mthd 0x0080 Data 0x00000000 (0x100d 0x05)
[ 2103.279112] [drm] nouveau 0000:01:00.0: EvoCh 0 Mthd 0x0c6c Data 0x00103340 (0x1084 0x04)
[ 2103.279745] [drm] nouveau 0000:01:00.0: EvoCh 0 Mthd 0x0080 Data 0x00000000 (0x100d 0x05)
[ 2103.633688] [drm] nouveau 0000:01:00.0: EvoCh 0 Mthd 0x0080 Data 0x00000000 (0x100d 0x05)
[ 2142.043186] [drm] nouveau 0000:01:00.0: EvoCh 0 Mthd 0x0080 Data 0x00000000 (0x100d 0x05)
[ 2142.123504] [drm] nouveau 0000:01:00.0: EvoCh 0 Mthd 0x0080 Data 0x00000000 (0x100d 0x05)


going to the console and restarting X, now xrandr reports:
Screen 0: minimum 320 x 200, current 1600 x 900, maximum 8192 x 8192
eDP-1 connected 1600x900+0+0 (normal left inverted right x axis y axis) 344mm x 194mm
   1600x900       40.0* 
   1152x864       39.9  
   1024x768       39.9  
   800x600        39.6  
   640x480        39.9  
   720x400        39.6  
   640x400        39.3  
   640x350        39.3  
VGA-1 disconnected (normal left inverted right x axis y axis)
DP-1 connected 1152x864+0+0 (normal left inverted right x axis y axis) 473mm x 296mm
   1680x1050      59.9 +
   1280x1024      75.0     60.0  
   1152x864       75.0* 
   1024x768       75.1     60.0  
   800x600        75.0     60.3  
   640x480        75.0     60.0  
   720x400        70.1  
DP-2 disconnected (normal left inverted right x axis y axis)
---
external LCD is working at this point, but trying to change the resolution or move it around will freeze X again;

the script I use below:
xrandr --output eDP-1 --mode 1600x900
#xrandr --output VGA-1 --mode 1680x1050
xrandr --output DP-1 --mode 1680x1050
xrandr --output eDP-1 --left-of DP-1

external monitor is connected using DVI (despite what xrandr says) and I had it connected using VGA with the same result


Comment 3 Dragos Delcea 2011-02-16 17:00:03 UTC
(In reply to comment #1)
> Do you have the same problem if you configure a static monitor layout in
> xorg.conf, as described in
> http://www.gentoo.org/doc/en/xorg-config.xml#doc_chap4_sect2 ?
> 
I will try that sometime tomorrow, but I grew used to not having a xorg.conf anymore; and it was working nice with the previous incarnation of the driver.
Comment 4 Dragos Delcea 2011-02-16 17:02:05 UTC
Created attachment 262767 [details]
dmesg output

I was using the same kernel with the previous incarnation of the driver (0.0.16_20101010/the working one)
Comment 5 Dragos Delcea 2011-02-16 17:04:43 UTC
laptop is a Dell Latitude E6510, with a nvidia card (see below) and an external 22' Dell LCD.


01:00.0 VGA compatible controller: nVidia Corporation GT218 [NVS 3100M] (rev a2) (prog-if 00 [VGA controller])
	Subsystem: Dell Latitude E6510
	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0, Cache Line Size: 64 bytes
	Interrupt: pin A routed to IRQ 16
	Region 0: Memory at e2000000 (32-bit, non-prefetchable) [size=16M]
	Region 1: Memory at d0000000 (64-bit, prefetchable) [size=256M]
	Region 3: Memory at e0000000 (64-bit, prefetchable) [size=32M]
	Region 5: I/O ports at 7000 [size=128]
	Expansion ROM at e3000000 [disabled] [size=512K]
	Capabilities: [60] Power Management version 3
		Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
		Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-
	Capabilities: [68] MSI: Enable- Count=1/1 Maskable- 64bit+
		Address: 0000000000000000  Data: 0000
	Capabilities: [78] Express (v2) Endpoint, MSI 00
		DevCap:	MaxPayload 128 bytes, PhantFunc 0, Latency L0s unlimited, L1 <64us
			ExtTag+ AttnBtn- AttnInd- PwrInd- RBE+ FLReset-
		DevCtl:	Report errors: Correctable- Non-Fatal- Fatal- Unsupported-
			RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop+
			MaxPayload 128 bytes, MaxReadReq 512 bytes
		DevSta:	CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr- TransPend-
		LnkCap:	Port #0, Speed 5GT/s, Width x16, ASPM L0s L1, Latency L0 <256ns, L1 <4us
			ClockPM+ Surprise- LLActRep- BwNot-
		LnkCtl:	ASPM L1 Enabled; RCB 128 bytes Disabled- Retrain- CommClk+
			ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
		LnkSta:	Speed 2.5GT/s, Width x16, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
		DevCap2: Completion Timeout: Not Supported, TimeoutDis+
		DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-
		LnkCtl2: Target Link Speed: 5GT/s, EnterCompliance- SpeedDis-, Selectable De-emphasis: -6dB
			 Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-
			 Compliance De-emphasis: -6dB
		LnkSta2: Current De-emphasis Level: -6dB
	Capabilities: [b4] Vendor Specific Information <?>
	Capabilities: [100] Virtual Channel <?>
	Capabilities: [128] Power Budgeting <?>
	Capabilities: [600] Vendor Specific Information <?>
	Kernel driver in use: nouveau
	Kernel modules: nouveau
Comment 6 Dragos Delcea 2011-02-24 16:14:32 UTC
(In reply to comment #1)
> Do you have the same problem if you configure a static monitor layout in
> xorg.conf, as described in
> http://www.gentoo.org/doc/en/xorg-config.xml#doc_chap4_sect2 ?
> 

it doesn't work with a static setup either; when gdm starts both displays turn black with only a cursor in the upper left of each one - switching to console works, I see some dmesg:
2011-02-24T18:00:04.015045+02:00 localhost kernel: [   26.566354] [drm] nouveau 0000:01:00.0: EvoCh 0 Mthd 0x086c Data 0x00103340 (0x0084 0x04)
2011-02-24T18:00:04.015070+02:00 localhost kernel: [   26.566389] [drm] nouveau 0000:01:00.0: EvoCh 0 Mthd 0x0080 Data 0x00000000 (0x100d 0x05)
2011-02-24T18:00:04.015081+02:00 localhost kernel: [   26.566419] [drm] nouveau 0000:01:00.0: EvoCh 0 Mthd 0x0080 Data 0x00000000 (0x100d 0x05)
2011-02-24T18:00:04.015084+02:00 localhost kernel: [   26.566434] [drm] nouveau 0000:01:00.0: EvoCh 0 Mthd 0x0c6c Data 0x00103340 (0x1084 0x04)
2011-02-24T18:00:04.015087+02:00 localhost kernel: [   26.566463] [drm] nouveau 0000:01:00.0: EvoCh 0 Mthd 0x0080 Data 0x00000000 (0x100d 0x05)

here's what I've done for reference:

pscdelcead03 xorg.conf.d # pwd
/etc/X11/xorg.conf.d
pscdelcead03 xorg.conf.d # ls -l
total 12
-rw-r--r-- 1 root root 183 Feb 24 17:58 15-device.conf
-rw-r--r-- 1 root root 381 Feb 24 17:51 16-monitor.conf
-rw-r--r-- 1 root root 515 Feb 24 17:51 17-screen.conf
pscdelcead03 xorg.conf.d # cat 15-device.conf 
Section "Device"
        Identifier  "VideoCard"
        Driver      "nouveau"
        Option      "monitor-eDP-1" "Monitor1"
        Option      "monitor-DP-1" "Monitor2"
EndSection
pscdelcead03 xorg.conf.d # cat 16-monitor.conf 
Section "Monitor"
        Identifier   "Monitor1"
        VendorName   "InternalPanel"
        ModelName    "Dell 1600x900"
        Option      "DPMS" "true"
EndSection
Section "Monitor"
        Identifier   "Monitor2"
        VendorName   "ExternalPanel"
        ModelName    "Dell 1680x1050"
        Option       "RightOf" "Monitor1"
        Option      "DPMS" "true"
EndSection
pscdelcead03 xorg.conf.d # cat 17-screen.conf 
Section "Screen"
        Identifier "Screen1"
        Device     "VideoCard"
        Monitor    "Monitor1"
        SubSection "Display"
#                Viewport   0 0
		Modes "1600x900"
#                Depth     24
        EndSubSection
EndSection
Section "Screen"
        Identifier "Screen2"
        Device     "VideoCard"
        Monitor    "Monitor2"
        SubSection "Display"
#                Viewport   0 0
                Modes "1680x1050"
#                Depth     24
        EndSubSection
EndSection
pscdelcead03 xorg.conf.d # 
Comment 7 Dragos Delcea 2011-05-10 13:28:38 UTC
current nouveau driver(0.0.16_pre20110323) works again in the dual monitor setup.
As far as I'm concerned, the bug can be closed.
Comment 8 Tomáš Chvátal (RETIRED) gentoo-dev 2011-05-10 13:32:09 UTC
Closing as per comment #7.