1. 03 6月, 2021 1 次提交
  2. 23 4月, 2021 2 次提交
  3. 21 4月, 2021 2 次提交
  4. 14 4月, 2021 1 次提交
  5. 12 4月, 2021 2 次提交
  6. 29 3月, 2021 1 次提交
  7. 25 3月, 2021 1 次提交
  8. 10 2月, 2021 1 次提交
    • C
      drm/ttm: rework ttm_tt page limit v4 · d4bd7776
      Christian König 提交于
      TTM implements a rather extensive accounting of allocated memory.
      
      There are two reasons for this:
      1. It tries to block userspace allocating a huge number of very small
         BOs without accounting for the kmalloced memory.
      
      2. Make sure we don't over allocate and run into an OOM situation
         during swapout while trying to handle the memory shortage.
      
      This is only partially a good idea. First of all it is perfectly
      valid for an application to use all of system memory, limiting it to
      50% is not really acceptable.
      
      What we need to take care of is that the application is held
      accountable for the memory it allocated. This is what control
      mechanisms like memcg and the normal Linux page accounting already do.
      
      Making sure that we don't run into an OOM situation while trying to
      cope with a memory shortage is still a good idea, but this is also
      not very well implemented since it means another opportunity of
      recursion from the driver back into TTM.
      
      So start to rework all of this by implementing a shrinker callback which
      allows for TT object to be swapped out if necessary.
      
      v2: Switch from limit to shrinker callback.
      v3: fix gfp mask handling, use atomic for swapable_pages, add debugfs
      v4: drop the extra gfp_mask checks
      Signed-off-by: NChristian König <christian.koenig@amd.com>
      Reviewed-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      Link: https://patchwork.freedesktop.org/patch/msgid/20210208133226.36955-1-christian.koenig@amd.com
      d4bd7776
  9. 21 1月, 2021 1 次提交
  10. 14 12月, 2020 1 次提交
  11. 30 11月, 2020 1 次提交
  12. 18 11月, 2020 1 次提交
  13. 04 11月, 2020 1 次提交
  14. 29 10月, 2020 2 次提交
  15. 26 10月, 2020 3 次提交
  16. 15 10月, 2020 2 次提交
  17. 24 9月, 2020 1 次提交
  18. 23 9月, 2020 1 次提交
    • C
      drm/ttm: stop dangerous caching attribute change · db9c1734
      Christian König 提交于
      When we swapout/in a BO we try to change the caching
      attributes of the pages before/after doing the copy.
      
      On x86 this is done by calling set_pages_uc(),
      set_memory_wc() or set_pages_wb() for not highmem pages
      to update the linear mapping of the page.
      
      On all other platforms we do exactly nothing.
      
      Now on x86 this is unnecessary because copy_highpage() will
      either create a temporary mapping of the page which is wb
      anyway and destroyed immediately again or use the linear
      mapping with the correct caching attributes.
      
      So stop this nonsense and just keep the caching as it is and
      return an error when a driver tries to change the caching of
      an already populated TT object.
      
      This is much more defensive since changing caching
      attributes is platform and driver specific and usually
      doesn't work after the page was initially allocated.
      Signed-off-by: NChristian König <christian.koenig@amd.com>
      Reviewed-by: NAlex Deucher <alexander.deucher@amd.com>
      Link: https://patchwork.freedesktop.org/patch/391293/
      db9c1734
  19. 18 9月, 2020 1 次提交
  20. 16 9月, 2020 4 次提交
  21. 09 9月, 2020 2 次提交
  22. 08 9月, 2020 1 次提交
  23. 20 8月, 2020 1 次提交
  24. 12 8月, 2020 1 次提交
  25. 06 8月, 2020 1 次提交
  26. 29 7月, 2020 2 次提交
  27. 29 6月, 2020 1 次提交
  28. 04 11月, 2019 1 次提交