✓ CI.checkpatch: success for drm/i915/dmc_wl: Do not check for DMC payload

Patchwork patchwork at emeril.freedesktop.org
Fri Jan 24 21:36:33 UTC 2025


== Series Details ==

Series: drm/i915/dmc_wl: Do not check for DMC payload
URL   : https://patchwork.freedesktop.org/series/143950/
State : success

== Summary ==

+ KERNEL=/kernel
+ git clone https://gitlab.freedesktop.org/drm/maintainer-tools mt
Cloning into 'mt'...
warning: redirecting to https://gitlab.freedesktop.org/drm/maintainer-tools.git/
+ git -C mt rev-list -n1 origin/master
30ab6715fc09baee6cc14cb3c89ad8858688d474
+ cd /kernel
+ git config --global --add safe.directory /kernel
+ git log -n1
commit 579d71a086e9f1000cea5d761252c6cdc9a18e28
Author: Gustavo Sousa <gustavo.sousa at intel.com>
Date:   Fri Jan 24 16:12:34 2025 -0300

    drm/i915/dmc_wl: Do not check for DMC payload
    
    Enabling and disabling of DMC wakelock is already coupled with enabling
    and disabling of dynamic DC states, which already depend on the DMC
    being properly loaded. As such, we do not need to check if we already
    have a DMC payload parsed in __intel_dmc_wl_supported().
    
    Furthermore, the presence of such a check causes inconsistencies in the
    refcount if the following sequence of events happen:
    
      1. A call to one of the register accessors from intel_de.h is done
         before the DMC payload is parsed. That causes intel_dmc_wl_get() to
         be called. Suppose the register offset qualifies as needing the
         wakelock.
    
         In normal circumstances, the refcount would be incremented, but,
         because __intel_dmc_wl_supported() returns false, the refcount is
         untouched.
    
      2. In a separate worker thread, the DMC firmware is parsed. Parsing of
         the DMC payload is finished before the corresponding
         intel_dmc_wl_put() from (1) is called.
    
      3. When in the context of (1), intel_dmc_wl_put() gets called, now we
         have __intel_dmc_wl_supported() returning true and we hit the
         warning, because the code doesn't expect a zero refcount.
    
    Let's remove that check, since it is unnecessary and causes the
    inconsistency illustrated above.
    
    Signed-off-by: Gustavo Sousa <gustavo.sousa at intel.com>
+ /mt/dim checkpatch df181b47c540b5c4604c91929f4f346030955d53 drm-intel
579d71a086e9 drm/i915/dmc_wl: Do not check for DMC payload




More information about the Intel-xe mailing list