[PATCH xserver] randr: Do not check the screen size bound for gpu screens

Timo Aaltonen tjaalton at ubuntu.com
Thu May 26 08:01:32 UTC 2016


On 20.05.2016 08:00, Nikhil Mahale wrote:
> For gpu screen, CrtcSet set/adjust the master screen size along
> mode in following callstack -
> 
>   ProcRRSetCrtcConfig()
>     |
>     -> RRCrtcSet()
>         |
>         -> rrCheckPixmapBounding()
>             |
>             -> pScrPriv->rrScreenSetSize()
> 
> Checking screen size bound for gpus screen cause some configurations
> to fails, e.g
> 
>   $ xrandr --output eDP --mode 1920x1080 --pos 0x0 --output HDMI \
>   --mode 2560x1440 --pos 0x0
> 
>   Here xrandr utility first sets screen size to 2560x1440 which
>   gets resized to 1920x1080 on RRSetCrtcConfig request for eDP,
>   and then RRSetCrtcConfig request for HDMI fails because
>   of failure of screen bound check.
> 
> Signed-off-by: Nikhil Mahale <nmahale at nvidia.com>

I've tried to come up with a test that would hang/crash the xserver
reliably, but failed. It usually takes a number of cycles through
mirrored/extended/external-only modes, or switching between
external-only and mirrored. Anyway, the impact is that on intel+nvidia
hybrid the server can crash or hang or just fail to set the mode without
these two patches.


-- 
t


More information about the xorg-devel mailing list