• Jesse Barnes's avatar
    drm/i915: sanity check IER at wait_request time · 802c7eb6
    Jesse Barnes authored
    We might sleep here anyway so I hope an extra uncached read is ok to
    add.
    
    In #20896 we found that vbetool clobbers the IER.  In KMS mode this is
    particularly bad since we don't set the interrupt regs late (in
    EnterVT), so we'd fail to get *any* interrupts at all after X started
    (since some distros have scripts that call vbetool at X startup
    apparently).
    
    So this patch checks IER at wait_request time, and re-enables
    interrupts if it's been clobbered.  In a proper config this check
    should never be triggered.
    
    This is really a distro issue, but having a sanity check is nice, as
    long as it doesn't have a real performance hit.
    Tested-by: default avatarMateusz Kaduk <mateusz.kaduk@gmail.com>
    Signed-off-by: default avatarJesse Barnes <jbarnes@virtuousgeek.org>
    [anholt: Moved the check inside of the sleeping case to avoid perf cost]
    Signed-off-by: default avatarEric Anholt <eric@anholt.net>
    802c7eb6
i915_gem.c 115 KB