Comment 24 for bug 268434

Revision history for this message
unvendable (unvendable-deactivatedaccount) wrote :

I was having the same problem described here, exactly. The krandrtray workaround worked; running xrandr -s 1680x1050 (in my case) worked; but I didn't like the way the login started out wrong, and then flickered a bit after logging in before the resolution was right.

However, I managed to solve the problem. In my case I didn't have my native resolution listed in xorg.conf; the first problem was that I didn't have the right modeline defined. I did some searching and found a discussion where it was pointed out that since X was getting the right settings eventually, the correct modeline ended up in my X logs (/var/logs/Xorg.0.log in my case). There were multiple log lines that looked like the following:

(II) intel(0): Modeline "1680x1050"x0.0 119.23 1680 1728 1760 1840 1050 1052 1058 1080 -hsync -vsync

...which is very close to the format needed for xorg.conf. Here's what I ended up with in xorg.conf, showing only the relevant lines; I only added the ModeLine line and the "1680x1050" mode (the rest was already there from a configuration utility I used):

Section "Monitor"
  Identifier "Monitor0"
    Option "DPMS" "true"
  HorizSync 28.0 - 96.0 # Warning: This may fry old Monitors
  VertRefresh 50.0 - 75.0 # Very conservative. May flicker.
  ModeLine "1680x1050" 119.23 1680 1728 1760 1840 1050 1052 1058 1080 -HSync -Vsync # added this
EndSection

Section "Screen"
  Identifier "Screen0"
  Device "Card0"
  Monitor "Monitor0"
  DefaultColorDepth 16
  SubSection "Display"
    Depth 1
    Modes "1680x1050" "1024x768" "800x600" "640x480" # added "1680x1050" - the rest were here
  EndSubSection
  # more subsections like the above, but repeated for color depths of 4, 8, 15, 16, 24, and 32
EndSection

(I fully realize that no one else will need these exact settings--but hopefully the general idea proves useful to someone.)

Anyway, once I (a) had the correct modeline in xorg.conf, and (b) added the new mode to the "Screen" section, my resolution was correct from the login screen, with no workarounds necessary and no resetting of the resolution. The problem was gone.

I'm running Arch (just installed); I don't know how other distributions handle xorg.conf stuff. (I tried looking at an xorg.conf from Ubuntu, but it was practically empy...they must do it somewhere else.) But regardless of how you do it, I think that if you can get your xorg setup to recognize the resolution from the get-go, it won't keep switching back to something else until you open the Display panel in System Settings.