1. 03 5月, 2022 1 次提交
  2. 22 4月, 2022 3 次提交
  3. 05 3月, 2022 1 次提交
    • R
      drm/msm: Add SYSPROF param (v2) · 90f45c42
      Rob Clark 提交于
      Add a SYSPROF param for system profiling tools like Mesa's pps-producer
      (perfetto) to control behavior related to system-wide performance
      counter collection.  In particular, for profiling, one wants to ensure
      that GPU context switches do not effect perfcounter state, and might
      want to suppress suspend (which would cause counters to lose state).
      
      v2: Swap the order in msm_file_private_set_sysprof() [sboyd] and
          initialize the sysprof_active refcount to one (because the under/
          overflow checking in refcount_t doesn't expect a 0->1 transition)
          meaning that values greater than 1 means sysprof is active.
      Signed-off-by: NRob Clark <robdclark@chromium.org>
      Link: https://lore.kernel.org/r/20220304005317.776110-4-robdclark@gmail.com
      90f45c42
  4. 26 2月, 2022 1 次提交
  5. 21 2月, 2022 1 次提交
  6. 18 2月, 2022 1 次提交
  7. 26 1月, 2022 1 次提交
  8. 29 11月, 2021 3 次提交
  9. 16 10月, 2021 1 次提交
  10. 29 7月, 2021 1 次提交
  11. 28 7月, 2021 5 次提交
  12. 23 6月, 2021 2 次提交
  13. 08 4月, 2021 1 次提交
  14. 22 11月, 2020 1 次提交
    • R
      drm/msm: Protect obj->active_count under obj lock · ab5c54cb
      Rob Clark 提交于
      Previously we only held obj lock in the _active_get() path, and relied
      on atomic_dec_return() to not be racy in the _active_put() path where
      obj lock was not held.
      
      But this is a false sense of security.  Unlike obj lifetime refcnt,
      where you do not expect to *increase* the refcnt after the last put
      (which would mean that something has gone horribly wrong with the
      object liveness reference counting), the active_count can increase
      again from zero.  Racing _active_put()s and _active_get()s could leave
      the obj on the wrong mm list.
      
      But in the retire path, immediately after the _active_put(), the
      _unpin_iova() would acquire obj lock.  So just move the locking earlier
      and rely on that to protect obj->active_count.
      
      Fixes: c5c1643c ("drm/msm: Drop struct_mutex from the retire path")
      Signed-off-by: NRob Clark <robdclark@chromium.org>
      ab5c54cb
  15. 06 11月, 2020 1 次提交
  16. 05 11月, 2020 8 次提交
  17. 02 11月, 2020 1 次提交
  18. 22 9月, 2020 1 次提交
    • A
      drm/msm: Fix premature purging of BO · 9d8baa2b
      Akhil P Oommen 提交于
      In the case where we have a back-to-back submission that shares the same
      BO, this BO will be prematurely moved to inactive_list while retiring the
      first submit. But it will be still part of the second submit which is
      being processed by the GPU. Now, if the shrinker happens to be triggered at
      this point, it will result in a premature purging of this BO.
      
      To fix this, we need to refcount BO while doing submit and retire. Then,
      it should be moved to inactive list when this refcount becomes 0.
      Signed-off-by: NAkhil P Oommen <akhilpo@codeaurora.org>
      Signed-off-by: NRob Clark <robdclark@chromium.org>
      9d8baa2b
  19. 13 9月, 2020 6 次提交