Due to an influx of spam, we have had to impose restrictions on new accounts. Please see this wiki page for instructions on how to get full permissions. Sorry for the inconvenience.
Since commit 9b899941 ("glamor: Enable modifier support for xfree86 too") dri3_get_supported_modifiers will report the modifiers available on buffer-objects on the primary GPU.
When using an output on a secondary GPU in combination with present flipping this leads to Xorg.log filling up with these errors:
[ 28843.414] (WW) modeset(0): Page flip failed: Invalid argument [ 28843.414] (EE) modeset(0): present flip failed [ 28843.595] (WW) modeset(0): Page flip failed: Invalid argument [ 28843.595] (EE) modeset(0): present flip failed
This is caused by drmmode_bo_import() failing on the secondary GPU because the bo has modifiers which the secondary GPU does not support.
This commit fixes this by making dri3_get_supported_modifiers report modifiers not being supported (as was done before commit 9b899941) when a secondary GPU with outputs is attached through e.g. xrandr --setprovideroutputsource
Related: #828 (closed)
Signed-off-by: Hans de Goede hdegoede@redhat.com