[M7 LW 7500] Virtual screen size too small when using dual head

Bug #277948 reported by Andy Clayton
16
This bug affects 3 people
Affects Status Importance Assigned to Milestone
xserver-xorg-driver-ati
Invalid
Medium
nautilus (Ubuntu)
Invalid
Undecided
Unassigned
Declined for Intrepid by Bryce Harrington
xserver-xorg-video-ati (Ubuntu)
Fix Released
Medium
Unassigned
Declined for Intrepid by Bryce Harrington

Bug Description

Upon disabling mirroring and logging back in, the virtual screen size is that of one screen, not both.

xrandr output:
Screen 0: minimum 320 x 200, current 1680 x 1050, maximum 3360 x 1050
LVDS connected 1680x1050+1680+0 (normal left inverted right x axis y axis) 331mm x 207mm
DVI-0 connected 1680x1050+0+0 (normal left inverted right x axis y axis) 434mm x 270mm

For things to behave properly, Screen 0 needs to be 3360x1050, which can be manually set using xrandr --output S -s 3360x1050. Having this wrong breaks the nautilus desktop, for example.

-----------------
Original problem report:

Binary package hint: nautilus

Using Intrepid with the open source ati driver, two screens, and compiz enabled results in nautilus only running on one screen.

I configured dual head using the Monitor Resolution Settings program. After restarting X for a virtual screen size config write, I come back in to find that one desktop is not getting redrawn. So dragging a window across the broken desktop results in the window contents getting drawn across the desktop, for example. Otherwise the screen itself works fine: Panels can be moved on and they function fine. I can use all the programs I want on the screen, and move other ones on to it.

Using "xprop | grep WM_CLASS" on the working desktop returns
  WM_CLASS(STRING) = "desktop_window", "Nautilus"
while using it on the broken desktop returns nothing.

It seems that nautilus is simply not running on the one screen.

ProblemType: Bug
Architecture: i386
DistroRelease: Ubuntu 8.10
Package: nautilus 1:2.24.0-0ubuntu1
ProcEnviron:
 PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/username/.bin
 LANG=en_US.UTF-8
 SHELL=/bin/bash
SourcePackage: nautilus
Uname: Linux 2.6.27-4-generic i686

Revision history for this message
Andy Clayton (q3aiml) wrote :
Andy Clayton (q3aiml)
description: updated
Revision history for this message
Andy Clayton (q3aiml) wrote : Re: Virtual screen size too small when using dual head

Not a nautilus bug

Changed in nautilus:
status: New → Invalid
Revision history for this message
Bryce Harrington (bryce) wrote :

Thanks for including the attached files. Could you also include your /var/log/Xorg.0.log?

Changed in xserver-xorg-video-ati:
status: New → Incomplete
Revision history for this message
Andy Clayton (q3aiml) wrote :

Thanks for looking in to this. Attached...

Revision history for this message
Thomas Hood (jdthood) wrote :

I also have this problem.

Whatever underlying problem there has various misbehaviors as results. Here is just one example.

I just tried to set the desktop image to a 3080x1050 image which exactly fits my dual-monitor screen area (LVDS 1400x1050 and DVI-0 1680x1050). The image would not display correctly using any of the "Style" settings on "Appearance Preferences | Background | Wallpaper". Then I used "System | Screen Resolution" to move the DVI to the left of LVDS; then back to the right, restoring the original situation. Then with "Style" set to "Fill screen" the desktop background displayed correctly.

This suggests to me that nautilus's understanding of the screen dimensions is not correctly synced with X's understanding of the screen dimensions.

Another example: Sometimes after logging in the desktop comes up on both monitors but I cannot move the mouse outside the LVDS. Grabbing the title bar I can move about 90% of a window onto the DVI-0 monitor.

Another bug which may or may not be related: The window list applet in the LVDS doesn't show windows on the DVI-0 unless "Window List Content" is set to "Show windows from all workspaces".

$ xrandr
Screen 0: minimum 320 x 200, current 1400 x 1050, maximum 3080 x 1050
VGA-0 disconnected (normal left inverted right x axis y axis)
DVI-0 connected 1680x1050+1400+0 (normal left inverted right x axis y axis) 474mm x 296mm
   1680x1050 59.9*+
   1600x1024 60.2
   1400x1050 60.0
[...]
LVDS connected 1400x1050+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
   1400x1050 50.0*+
S-video disconnected (normal left inverted right x axis y axis)

$ cat /etc/X11/xorg.conf
# xorg.conf (X.Org X Window System server configuration file)
[...]
Section "Monitor"
 Identifier "Configured Monitor"
EndSection
Section "Screen"
 Identifier "Default Screen"
 Monitor "Configured Monitor"
 Device "Configured Video Device"
 Defaultdepth 16
 SubSection "Display"
  Depth 16
  Virtual 3080 1050
 EndSubSection
EndSection
Section "Device"
 Identifier "Configured Video Device"
EndSection

$ lspci -v -s 01:00.0
01:00.0 VGA compatible controller: ATI Technologies Inc Radeon Mobility M7 LW [Radeon Mobility 7500]
 Subsystem: IBM Device 0517
 Flags: bus master, stepping, fast Back2Back, 66MHz, medium devsel, latency 66, IRQ 11
 Memory at e8000000 (32-bit, prefetchable) [size=128M]
 I/O ports at 3000 [size=256]
 Memory at d0100000 (32-bit, non-prefetchable) [size=64K]
 [virtual] Expansion ROM at d0120000 [disabled] [size=128K]
 Capabilities: <access denied>
 Kernel modules: radeonfb

Revision history for this message
Alberto Milone (albertomilone) wrote : Re: [Bug 277948] Re: Virtual screen size too small when using dual head

On Sunday 26 October 2008 09:42:36 Thomas Hood wrote:
> Another example: Sometimes after logging in the desktop comes up on both
> monitors but I cannot move the mouse outside the LVDS.  Grabbing the
> title bar I can move about 90% of a window onto the DVI-0 monitor.

In this case the gnome-settings-daemon might segfault. Try typing the
following command when this happens:
gnome-settings-daemon

and you should be able to move the mouse cursor to the other screen.

Bryce Harrington (bryce)
Changed in xserver-xorg-video-ati:
status: Incomplete → Confirmed
Revision history for this message
Bryce Harrington (bryce) wrote : Re: [Mobility M7 LW 7500] Virtual screen size too small when using dual head

I've just now uploaded the 6.11.0 driver to Jaunty, and it claims to have a lot of improvements for output handling so my guess is that it may fix this issue. Would you mind re-testing against current Jaunty and let me know whether the issue is fixed now? Thanks ahead of time.

Changed in xserver-xorg-video-ati:
status: Confirmed → Incomplete
Revision history for this message
Andy Clayton (q3aiml) wrote :

Thank you for the notification.

I've confirmed I have 6.11.0 in my Xorg.log, and while the update unfortunately did not fix the issue, I did find something in testing: attempting to turn off the LCD in Display Settings takes an inordinate amount of time to fail, but afterwards the screen size is set correctly.

Revision history for this message
Andy Clayton (q3aiml) wrote :

I should clarify: it is set correctly only for the session like when fixing it manually with xrandr.

Revision history for this message
In , Bryce Harrington (bryce) wrote :

Created an attachment (id=23120)
Xorg.0.log

Forwarding this report from a Ubuntu reporter:
https://bugs.edge.launchpad.net/ubuntu/+source/xserver-xorg-video-ati/+bug/277948

[Problem]
Upon disabling mirroring and logging back in, the virtual screen size is that of one screen, not both.

This was confirmed as still happening on 6.11.0, but was first reported on Ubuntu Intrepid on 2008-10-03

[xrandr output]
Screen 0: minimum 320 x 200, current 1680 x 1050, maximum 3360 x 1050
LVDS connected 1680x1050+1680+0 (normal left inverted right x axis y axis) 331mm x 207mm
DVI-0 connected 1680x1050+0+0 (normal left inverted right x axis y axis) 434mm x 270mm

For things to behave properly, Screen 0 needs to be 3360x1050, which can be manually set using xrandr --output S -s 3360x1050. Having this wrong breaks the nautilus desktop, for example.

[Original Report]
Binary package hint: nautilus

Using Intrepid with the open source ati driver, two screens, and compiz enabled results in nautilus only running on one screen.

I configured dual head using the Monitor Resolution Settings program. After restarting X for a virtual screen size config write, I come back in to find that one desktop is not getting redrawn. So dragging a window across the broken desktop results in the window contents getting drawn across the desktop, for example. Otherwise the screen itself works fine: Panels can be moved on and they function fine. I can use all the programs I want on the screen, and move other ones on to it.

Using "xprop | grep WM_CLASS" on the working desktop returns
  WM_CLASS(STRING) = "desktop_window", "Nautilus"
while using it on the broken desktop returns nothing.

It seems that nautilus is simply not running on the one screen.

I've confirmed I have 6.11.0 in my Xorg.log, and while the update unfortunately did not fix the issue, I did find something in testing: attempting to turn off the LCD in Display Settings takes an inordinate amount of time to fail, but afterwards the screen size is set correctly.

ProblemType: Bug
Architecture: i386
DistroRelease: Ubuntu 8.10
Uname: Linux 2.6.27-4-generic i686

Revision history for this message
In , agd5f (agd5f) wrote :

Is this when running compiz? the desktop size exceeds the 3D engine limits.

Revision history for this message
In , Andy Clayton (q3aiml) wrote :

Hi Alex,

I'm the original reporter -- no, it's not. I disabled compiz due to that and various other issues. It seems simply a mistake that the virtual screen size is not set correctly. The virtual screen size does not appear to be restricted to what the 3d engine can handle as it can manually be set to 3360x1050 for the duration of the current session using xrandr. Toggling the LCD via gnome-display-properties also causes the virtual screen size to be correct for the session. It simply should also be set correctly when gnome-settings-daemon's xrandr plugin configures the screens. At the advice of Bryce Harrington I'm going to be trying to reproduce this shortly without g-s-d so I can give the xrandr command(s) which setup dual head and cause it to have the wrong virtual screen size.

Revision history for this message
Bryce Harrington (bryce) wrote : Re: [Mobility M7 LW 7500] Virtual screen size too small when using dual head

Hi Andy,

I've gone ahead and forwarded this bug upstream to https://bugs.freedesktop.org/show_bug.cgi?id=20224 - please subscribe to this bug report in case upstream needs further info from you or wishes you to test something.

Also, it would be helpful if you could try reproducing the problem without using Screen Resolution, by doing the following:

  1. Move aside your ~/.config/monitors.xml
  2. Reboot
  3. It should come up single screen. Now reproduce the steps using only the xrandr command line tool.
  4. Post your /var/log/Xorg.0.log here and on the upstream bug report after doing this, along with your findings on whether you could recreate the same bug.

Changed in xserver-xorg-video-ati:
importance: Undecided → Medium
status: Incomplete → Triaged
Changed in xserver-xorg-driver-ati:
status: Unknown → Confirmed
Revision history for this message
In , Michel Dänzer (michel-daenzer) wrote :

(In reply to comment #2)
> Toggling the LCD via gnome-display-properties also causes the virtual screen
> size to be correct for the session. It simply should also be set correctly when
> gnome-settings-daemon's xrandr plugin configures the screens.

So it sounds like there's an issue in gnome-settings-daemon, not the driver?

Revision history for this message
In , Andy Clayton (q3aiml) wrote :

(In reply to comment #3)
> (In reply to comment #2)
> > Toggling the LCD via gnome-display-properties also causes the virtual screen
> > size to be correct for the session. It simply should also be set correctly when
> > gnome-settings-daemon's xrandr plugin configures the screens.
>
> So it sounds like there's an issue in gnome-settings-daemon, not the driver?
>

Well gnome-settings-daemon simply calls RandR apis to toggle and position the screens. It is possible that g-s-d merely abuses RandR and breaks it, which is why I will hopefully have time this week to do as Bryce suggested and reproduce the problem using only xrandr. I'm guessing this was assumed to be the driver as others do not experience the same problem.

It does seem clear, though, that something is bugged in either RandR or the driver when the usable desktop/screen size is clearly 3360x1050, yet it continues to report 1680x1050, right?

Bryce Harrington (bryce)
summary: - [Mobility M7 LW 7500] Virtual screen size too small when using dual head
+ [M7 LW 7500] Virtual screen size too small when using dual head
Bryce Harrington (bryce)
tags: added: dual-head
Bryce Harrington (bryce)
tags: added: intrepid
Revision history for this message
In , agd5f (agd5f) wrote :

Is this still an issue with xf86-video-ati from git master or a newer xserver?

Revision history for this message
In , Andy Clayton (q3aiml) wrote :

I am no longer using this hardware, actually, so I'll close it unless someone else can reproduce.

Changed in xserver-xorg-driver-ati:
status: Confirmed → Invalid
Revision history for this message
Bryce Harrington (bryce) wrote :

[Comment from reporter on upstream bug report indicates it is no longer occurring.]

Changed in xserver-xorg-video-ati (Ubuntu):
status: Triaged → Fix Released
Changed in xserver-xorg-driver-ati:
importance: Unknown → Medium
Changed in xserver-xorg-driver-ati:
importance: Medium → Unknown
Changed in xserver-xorg-driver-ati:
importance: Unknown → Medium
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.