LINUX.ORG.RU

Неправильное разрешение экрана при перезагрузке X-сервера на широкоформатном мониторе


0

0

Когда я выхожу из своей KDE сессии в KDM, или просто перезагружаю X-сервер по ctrl-alt-backspace, устанавливается неправильное разрешение экрана. Чаще всего картинка сжимается до двух третьих от горизонтального размера экрана, так что правая треть экрана оказывается пустой. Реже картинка растягивается таким образом, что только ее часть оказывается доступной в пределах рабочей области экрана. При первоначальной загрузке системы и при полной перезагрузке (reboot) разрешение всегда оказывается правильным.

Если при перезагрузке X-сервера по ctrl-alt-backspace либо при разлогинивании разрешение оказывалось неправильным, я пытался заново перезагрузить X-сервер, но правильного разрешения удавалось добиться порой лишь после десятка перезагрузок сервера. Система openSuse 10.3 x86_64, lcd monitor samsung 215tw 1680x1050, nvidia geforce 7600gt. Я сталкивался с этой проблемой и на suse 10.2. Проблема, по моим наблюдениям, специфична для широкоформатного монитора, и никогда не возникает при подключении crt монитора с разрешением 4:3. Как решить эту проблему?

Вот содержание xorg.conf:

Section "ServerLayout"
Identifier "Layout[all]"
Screen "Screen[0]" 0 0
InputDevice "Keyboard[0]" "CoreKeyboard"
InputDevice "Mouse[1]" "CorePointer"
Option "Clone" "off"
Option "Xinerama" "off"
Option "aiglx" "true"
EndSection

Section "Files"
InputDevices "/dev/gpmdata"
InputDevices "/dev/input/mice"
FontPath "/usr/share/fonts/misc:unscaled"
FontPath "/usr/share/fonts/75dpi:unscaled"
FontPath "/usr/share/fonts/100dpi:unscaled"
FontPath "/usr/share/fonts/Type1"
FontPath "/usr/share/fonts/URW"
FontPath "/usr/share/fonts/Speedo"
FontPath "/usr/share/fonts/cyrillic"
FontPath "/usr/share/fonts/truetype"
FontPath "/usr/share/fonts/uni:unscaled"
FontPath "/opt/kde3/share/fonts"
FontPath "/usr/local/share/fonts"
EndSection

Section "Module"
Load "glx"
Load "type1"
Load "extmod"
Load "dbe"
Load "freetype"
EndSection

Section "ServerFlags"
Option "AllowMouseOpenFail" "on"
EndSection

Section "InputDevice"
Identifier "Keyboard[0]"
Driver "kbd"
Option "Protocol" "Standard"
Option "XkbLayout" "us,ru"
Option "XkbModel" "logicink"
Option "XkbOptions" "grp:alt_shift_toggle,grp_led:scroll"
Option "XkbRules" "xfree86"
Option "XkbVariant" ",winkeys"
EndSection

Section "InputDevice"
Identifier "Mouse[1]"
Driver "mouse"
Option "Buttons" "10"
Option "Device" "/dev/input/mice"
Option "Name" "Logitech Internet Keyboard"
Option "Protocol" "explorerps/2"
Option "Vendor" "Sysp"
Option "ZAxisMapping" "4 5"
EndSection

Section "Modes"
Identifier "Modes[0]"
ModeLine "1680x1050" 146.0 1680 1784 1960 2240 1050 1053 1059 1089 +hsync -vsync
EndSection

Section "Monitor"
Identifier "Monitor[0]"
VendorName "SAM"
ModelName "SAMSUNG SYNCMASTER"
UseModes "Modes[0]"
DisplaySize 452 283
HorizSync 30.0 - 81.0
VertRefresh 43.0 - 75.0
Option "CalcAlgorithm" "XServerPool"
Option "DPMS"
EndSection

Section "Device"
Identifier "Device[0]"
Driver "nvidia"
VendorName "NVidia"
BoardName "GeForce 7600 GT"
Screen 0
Option "UseEdidDpi" "FALSE"
Option "DPI" "96 x 96"
EndSection

Section "Screen"
Identifier "Screen[0]"
Device "Device[0]"
Monitor "Monitor[0]"
DefaultDepth 24
Option "NoLogo" "True"
Option "AddARGBGLXVisuals" "True"
SubSection "Display"
Depth 15
Modes "1680x1050" "1280x1024" "1280x960" "1152x864" "1024x768" "800x600"
EndSubSection
SubSection "Display"
Depth 16
Modes "1680x1050" "1280x1024" "1280x960" "1152x864" "1024x768" "800x600"
EndSubSection
SubSection "Display"
Depth 24
Modes "1680x1050" "1280x1024" "1280x960" "1152x864" "1024x768" "800x600"
EndSubSection
SubSection "Display"
Depth 8
Modes "1680x1050" "1280x1024" "1280x960" "1152x864" "1024x768" "800x600"
EndSubSection
EndSection

Section "Extensions"
Option "Composite" "Enable"
EndSection

SlonoInquisitor
() автор топика
Ответ на: комментарий от SlonoInquisitor

Проверить параметры по документации:

HorizSync 30.0 - 81.0
VertRefresh 43.0 - 75.0

Попробовать выкинуть эти опции по одной:

Option "UseEdidDpi" "FALSE"
Option "DPI" "96 x 96"

jackill ★★★★★
()
Ответ на: комментарий от jackill

Без этих опций
Option "UseEdidDpi" "FALSE"
Option "DPI" "96 x 96"
проблема все равно дает о себе знать. Только шрифты становятся кривыми, поскольку разрешение согласно
xdpyinfo | grep 'resolution'
становится 94x95. Это я уже давно проверил. Но для чистоты эксперимента соответствующие опции закомментировал.

А вот частоты и размер дисплея я сейчас вбил, исходя из документации. Также я изменил modeline на данные от gtf 1680 1050 60. Удивительно, но они отличаются от тех, которые в xorg.conf записал Sax2. Соответствующая часть xorg.conf выглядит сейчас так:

Section "Modes"
Identifier "Modes[0]"
ModeLine "1680x1050" 147.14 1680 1784 1968 2256 1050 1051 1054 1087 -HSync +Vsync
EndSection

Section "Monitor"
Identifier "Monitor[0]"
VendorName "SAM"
ModelName "SAMSUNG SYNCMASTER"
UseModes "Modes[0]"
DisplaySize 518.4 324
HorizSync 30.0 - 81.0
VertRefresh 56.0 - 75.0
Option "DPMS"
EndSection

Section "Device"
Identifier "Device[0]"
Driver "nvidia"
VendorName "NVidia"
BoardName "GeForce 7600 GT"
Screen 0
# Option "UseEdidDpi" "FALSE"
# Option "DPI" "96 x 96"
EndSection

И в общем, все это оказалось без толку. Проблема осталась.

SlonoInquisitor
() автор топика
Ответ на: комментарий от no-dashi

Да нет, это тоже не помогает. Я уже пробовал оставлять только одно разрешение, и без толку. Но мне уже подсказали решение, видимо, работающее. В связи с ним у меня есть отдельный вопрос, и наверное, я задам его в отдельной теме. Все спасибо!

SlonoInquisitor
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.