I'm trying to scale my external monitor to allow my 4k/1080p setup to be run with things being actually visible, but xrandr is refusing to allow me to do anything:

My command, xrandr --output HDMI-1-1 --auto --scale 2x2, outputs the following:

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:  26 (RRSetCrtcTransform)
  Value in failed request:  0x40
  Serial number of failed request:  38
  Current serial number in output stream:  39

Upon execution, my screens flash black for a moment but come back exactly the same, suggesting that settings aren't being applied at all.

My system is equipped with NVIDIA Optimus, which is currently using Prime to run everything, as seen by prime-select query returning nvidia.

If I run this command on my laptop's builtin monitor, the scaling works, but the error still is thrown. It's only ignored entirely on my external monitor for some reason.

As for why I'm not just scaling my other monitor, it causes annoyances that I don't have a workable solution for yet.

What's going on, and more importantly, how can I fix it?

Output of xrandr --listmonitors:

Monitors: 2
0: +*eDP-1-1 3840/346x2160/194+0+0  eDP-1-1
1: +HDMI-1-1 1920/518x1200/324+3840+0  HDMI-1-1

Output of xrandr -q:

Screen 0: minimum 8 x 8, current 7680 x 2400, maximum 16384 x 16384
eDP-1-1 connected primary 3840x2160+0+0 346mm x 194mm
   3840x2160     60.00*+
   2048x1536     60.00  
   1920x1440     60.00  
   1856x1392     60.01  
   1792x1344     60.01  
   1920x1200     59.95  
   1920x1080     59.93  
   1600x1200     60.00  
   1680x1050     59.95    59.88  
   1600x1024     60.17  
   1400x1050     59.98  
   1280x1024     60.02  
   1440x900      59.89  
   1280x960      60.00  
   1360x768      59.80    59.96  
   1152x864      60.00  
   1024x768      60.04    60.00  
   960x720       60.00  
   928x696       60.05  
   896x672       60.01  
   960x600       60.00  
   960x540       59.99  
   800x600       60.00    60.32    56.25  
   840x525       60.01    59.88  
   800x512       60.17  
   700x525       59.98  
   640x512       60.02  
   720x450       59.89  
   640x480       60.00    59.94  
   680x384       59.80    59.96  
   576x432       60.06  
   512x384       60.00  
   400x300       60.32    56.34  
   320x240       60.05  
DP-1-1 disconnected
HDMI-1-1 connected 1920x1200+3840+0 518mm x 324mm
   1920x1200     59.95*+
   1600x1200     60.00  
   1280x1024     75.02    60.02  
   1152x864      75.00  
   1024x768      75.08    60.00  
   800x600       75.00    60.32  
   640x480       75.00    60.00  
   720x400       70.08  
DP-1-2 disconnected
HDMI-1-2 disconnected

Output of lspci | grep -E "VGA|3D":

00:02.0 VGA compatible controller: Intel Corporation Skylake Integrated Graphics (rev 06)
01:00.0 3D controller: NVIDIA Corporation GM107M [GeForce GTX 960M] (rev a2)
  • somebody had a similar problem as you check here: 2x scaling not working
    – WooJoo
    Jan 31, 2017 at 18:09
  • @WooJoo I saw that, but I don't think it really applies -- their monitor settings take effect, while mine are just silently dropped for some reason
    – Kaz Wolfe
    Jan 31, 2017 at 18:11
  • well if all fails you can still half the scaling on your Displayport monitor
    – WooJoo
    Jan 31, 2017 at 18:13
  • @WooJoo Already doing that, see here for a related question by me as to why that doesn't make me happy.
    – Kaz Wolfe
    Jan 31, 2017 at 18:14
  • my guess is 2x2 is an invalid integer and it wants something like 2, 4, etc. Jan 31, 2017 at 18:15


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy