xrandr / arandr RRSetScreenSize和RRSetCrtcConfig错误

时间:2017-01-27 21:56:39

标签: xorg xrandr

我试图让X从笔记本电脑上使用3个外接显示器。

TLDR;它有10%的工作时间。 arandr显示一个包含显示器的浅灰色框(参见图片)。当显示器不适合时,我会收到错误。

在X的配置中调用的浅灰色背景框是什么(见图)? 如何设置浅灰色框的大小?

这在10%的时间内有效:

  • 1x笔记本电脑屏幕eDP1(1920x1080),
  • 2x外部DVI-I-1和DVI-I-2(1920x1080)通过this USB3 device
  • 1x外置HDMI1(1680x900)

这里是arandr构建的脚本(为可读性添加了换行符)。

#!/bin/sh
xrandr --output VIRTUAL1 --off 
--output eDP1 --primary --mode 1920x1080 --pos 0x1080 --rotate normal 
--output HDMI1 --mode 1600x900 --pos 1920x1080 --rotate normal 
--output VGA1 --off --output DVI-I-1 --mode 1920x1080 --pos 1920x0 --rotate normal 
--output DVI-I-2 --mode 1920x1080 --pos 0x0 --rotate normal

问题似乎是HDMI显示器和它的奇数分辨率1600x900。当x尝试自动配置时,它会使宽度为1920 + 1600而不是1920 + 1920。见下图。

脚本会出错

  • 如果HDMI没有插入:

    xrandr:找不到模式1600x900

  • 如果已插入HDMI,但DVI-I-1位于浅灰色背景框之外

    XRandR失败: XRandR返回错误代码1:X请求失败错误:BadValue(整数参数超出操作范围)   失败请求的主要操作码:140(RANDR)   失败请求的次要操作码:21(RRSetCrtcConfig)   失败请求中的值:0x780   失败请求的序列号:53   输出流中的当前序列号:53

  • 或下图中的错误(最常见)

这种情况偶尔发生一次,当笔记本电脑插入所有内容时,笔记本电脑会神奇地配置,或

  1. USB或HDMI显示器无法正常工作或
  2. 屏幕缓冲区损坏,我必须ctrl-alt-backspace或
  3. 随机效果滚动d20(镜像等)。
  4. arandr如下所示(注意DVI-I-1如何在浅灰色背景之外)。用螺丝钉拧了很多:

    1. 当浅灰色背景不适合显示器时,它永远不会工作
    2. 当浅灰色背景适合监视时,它总是有效
    3. 当我最后插入HDMI显示器时,有时会工作,但不可靠。
    4. 如果我运行此xrandr(无HDMI),我会收到错误:

      ☀  ./3up.sh 
      X Error of failed request:  BadValue (integer parameter out of range for operation)
        Major opcode of failed request:  140 (RANDR)
        Minor opcode of failed request:  21 (RRSetCrtcConfig)
        Value in failed request:  0x780
        Serial number of failed request:  53
        Current serial number in output stream:  53
      
      michael@mc-desktop ~
      ☔  cat 3up.sh 
      #!/bin/sh
      xrandr --output VIRTUAL1 --off \
        --output eDP1 --primary --mode 1920x1080 --pos 0x1080 --rotate normal \
        --output VGA1 --off \
        --output DVI-I-1 --mode 1920x1080 --pos 1920x0 --rotate normal \
        --output DVI-I-2 --mode 1920x1080 --pos 0x0 --rotate normal \
        --output HDMI1 --off
      

      我在System76笔记本电脑上使用Linux Mint 18。

      谢谢!

      enter image description here

1 个答案:

答案 0 :(得分:1)

我跟踪了这​​个问题,因为英特尔芯片不正确地调整了显示器的大小。

我升级到ubuntu GNOME 16.04(来自Mint 14.04)并且它有效。我认为它升级了英特尔驱动程序。无论如何,它不完美,但更稳定。