当我在启动期间将两个显示器连接到我的 x1800xt 时,X、Unity 或图形驱动程序在最后阶段崩溃(当显示器设置从镜像更改为扩展时加载 UI,tty 仍在工作,终止 X 并不能解决问题,经过几次尝试后,两个显示器都进入睡眠状态)。
但是,当我在启动后插入第二台显示器时,它可以正常工作。(标准 ubuntu 12.04 内核)。在更新到最新的 linux 3.4rc2 内核后,此问题仍然存在,但是双头显示器的暂停和恢复可以正常工作(旧内核无法正常工作),并且恢复后显卡的风扇不再疯狂转动。其中一台显示器直接通过 DVI-D 连接,另一台显示器通过 DVI-I 到 VGA 适配器连接。它们两个都可以独立正常工作。在系统设置中,它们都以正确的分辨率正确识别,但是诸如旋转之类的功能有缺陷并且也容易崩溃。(我必须同时更改分辨率和旋转才能更改旋转,否则系统会崩溃)。
我可以发布一些日志文件来记录这些错误吗?
当我在启动后插入第二台显示器时,3d 加速在两个显示器上均有效。
lspci
输出:
01:00.0 VGA compatible controller: Advanced Micro Devices [AMD] nee ATI R520 [Radeon X1800]
01:00.1 Display controller: Advanced Micro Devices [AMD] nee ATI R520 [Radeon X1800] (Secondary)
01:00.0 VGA compatible controller: Advanced Micro Devices [AMD] nee ATI R520 [Radeon X1800]
Subsystem: Advanced Micro Devices [AMD] nee ATI Device 0b12
Kernel driver in use: radeon
Kernel modules: radeon
01:00.1 Display controller: Advanced Micro Devices [AMD] nee ATI R520 [Radeon X1800] (Secondary)
Subsystem: Advanced Micro Devices [AMD] nee ATI Device 0b13
lshw
输出:
*-display:0
description: VGA compatible controller
product: R520 [Radeon X1800]
vendor: Hynix Semiconductor (Hyundai Electronics)
physical id: 0
bus info: pci@0000:01:00.0
version: 00
width: 64 bits
clock: 33MHz
capabilities: pm pciexpress msi vga_controller bus_master cap_list rom
configuration: driver=radeon latency=0
resources: irq:18 memory:d0000000-dfffffff memory:ceee0000-ceeeffff ioport:d000(size=256) memory:ceec0000-ceedffff
*-display:1 UNCLAIMED
description: Display controller
product: R520 [Radeon X1800] (Secondary)
vendor: Hynix Semiconductor (Hyundai Electronics)
physical id: 0.1
bus info: pci@0000:01:00.1
version: 00
width: 64 bits
clock: 33MHz
capabilities: pm pciexpress bus_master cap_list
configuration: latency=0
resources: memory:ceef0000-ceefffff
编辑 1:现在我还比较了两个 Xorg.0.log 文件(冷插拔与热插拔),但我没有发现可疑行为。(只有一个加载 fglrx 的错误,该错误出现在两个日志中,并且因为我使用开源驱动程序所以很清楚)
编辑 2:检查 xrandr -d:0 一切似乎都很好, 我也检查了 dmesg,但我没有发现任何可疑的东西。
Screen 0: minimum 320 x 200, current 3200 x 1200, maximum 8192 x 8192
DVI-0 connected 1920x1200+0+0 (normal left inverted right x axis y axis) 518mm x 324mm
1920x1200 60.0*+
1920x1080 60.0
1600x1200 60.0
1680x1050 60.0
1280x1024 60.0
1280x960 60.0
1024x768 60.0
800x600 60.3
640x480 60.0
720x400 70.1
S-video disconnected (normal left inverted right x axis y axis)
DVI-1 connected 1280x1024+1920+176 (normal left inverted right x axis y axis) 376mm x 301mm
1280x1024 60.0*+ 75.0
1152x864 75.0
1024x768 75.1 70.1 60.0
832x624 74.6
800x600 72.2 75.0 60.3 56.2
640x480 72.8 75.0 66.7 60.0
720x400 70.1
有人能说出另一个日志文件来查看吗,或者我应该提交一个错误报告?
答案1
因此,我最终通过在启动过程中执行 xrandr 脚本来实现它,如下所述这里。脚本中的代码如下:
#!/bin/sh
xrandr --output DVI-0 --primary --mode 1920x1200
xrandr --output DVI-1 --mode 1280x1024 --pos 1920x37
如果有人能指出错误存在于哪个模块,我还是会很高兴,这样我就可以提交一份详细的错误报告。因为看起来 xrandr 应该在登录窗口弹出或窗口管理器启动之前运行。