• David Mansfield's avatar
    drm/qxl: use surface_id 0 for primary surface on all monitors · 52571ad5
    David Mansfield authored
    spice-server and downstream code expect that the primary surface
    will always have surface_id = 0, while in reality, once allocated, the
    surface_id in qxl.ko is NEVER 0.  In a dual head environment, all
    monitors render portions of the primary surface.
    
    However, when the monitor config events are generated and sent,
    the primary surface is only mapped to the correct identifier
    (i.e. 0) for the primary head (where crtc index is 0).
    
    The fix is to look at the "primary" flag in the bo and always
    use id 0, irrespective of which head is being configured.
    
    [airlied: qxl hw really needs to be fixed to scanout surfaces]
    Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
    52571ad5
qxl_display.c 27.1 KB