dri-devel.lists.freedesktop.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/49] ttm mem manager refactoring.
@ 2020-07-31  4:04 Dave Airlie
  2020-07-31  4:04 ` [PATCH 01/49] drm/qxl/ttm: call ttm manager debug Dave Airlie
                   ` (49 more replies)
  0 siblings, 50 replies; 99+ messages in thread
From: Dave Airlie @ 2020-07-31  4:04 UTC (permalink / raw)
  To: dri-devel; +Cc: christian.koenig, sroland, bskeggs, kraxel

I started pulling on a thread, and it led me down a hole.

This series refactors the ttm ttm_mem_type_manager object into
a driver owned, allocated, subclassaed object.

It starts with two minor fixes for some bad assumptions in two drivers.

Enables a new init path, ports all the drivers to the new init
path, and cleans up the old init path.
Enables a new takedown path, ports all the drivers to the new takedown
path, and cleans up the old takedown path
Wraps all access to the memory managers in the bo_device in a wrapper
across all drivers.
Make debug callback optional
Enables driver to provide their own mem manager objects
Subclasses the objects in all drivers and makes them into driver owned object
Drops the bo_device arrays of pointers, and some unneeded links and
struct members
Cleans up one api.

I think I'd probably want to merge all this via drm-misc, so if I can collect
acks/r-b from driver maintainers that would be good.

This is also based on Chrisitan's work to remove init_mem_type, so it won't
apply until he's finished getting all of that into drm-misc.

https://cgit.freedesktop.org/~airlied/linux/log/?h=ttm-refactor-mem-manager
is the tree I've built this on top off, so it's probably going to get rebased
but the code should stay mostly the same.

I've done some boot testing on nouveau, and I hope to test it on vmwgfx and
amdgpu soon.

Dave.


_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 99+ messages in thread

end of thread, other threads:[~2020-08-06 12:00 UTC | newest]

Thread overview: 99+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-07-31  4:04 [PATCH 00/49] ttm mem manager refactoring Dave Airlie
2020-07-31  4:04 ` [PATCH 01/49] drm/qxl/ttm: call ttm manager debug Dave Airlie
2020-07-31  4:04 ` [PATCH 02/49] drm/vram-helper: call the ttm manager debug function Dave Airlie
2020-07-31  6:43   ` Thomas Zimmermann
2020-07-31  4:04 ` [PATCH 03/49] drm/ttm: split the mm manager init code Dave Airlie
2020-07-31  5:44   ` Sam Ravnborg
2020-07-31  5:51     ` Dave Airlie
2020-07-31  6:26       ` Dave Airlie
2020-07-31  6:43         ` Sam Ravnborg
2020-07-31  9:12   ` Christian König
2020-07-31  4:04 ` [PATCH 04/49] drm/ttm: provide a driver-led init path for generic mm manager Dave Airlie
2020-07-31  6:57   ` Thomas Zimmermann
2020-07-31  7:03     ` Thomas Zimmermann
2020-07-31  7:20     ` Dave Airlie
2020-07-31 13:00   ` Christian König
2020-07-31  4:04 ` [PATCH 05/49] drm/amdgpu/ttm: init managers from the driver side Dave Airlie
2020-07-31  4:04 ` [PATCH 06/49] drm/radeon: use new ttm man init path Dave Airlie
2020-07-31  4:04 ` [PATCH 07/49] drm/qxl/ttm: use new init path for manager Dave Airlie
2020-07-31  4:04 ` [PATCH 08/49] drm/vram_helper: use new ttm manager init function Dave Airlie
2020-07-31  4:04 ` [PATCH 09/49] drm/nouveau: use new memory manager init paths Dave Airlie
2020-07-31  4:04 ` [PATCH 10/49] drm/vmwgfx/ttm: convert vram mm init to new code paths Dave Airlie
2020-07-31  4:04 ` [PATCH 11/49] drm/vmwgfx/ttm: switch gmrid allocator to new init paths Dave Airlie
2020-07-31  4:04 ` [PATCH 12/49] drm/ttm: convert system manager init to new code Dave Airlie
2020-07-31 12:57   ` Christian König
2020-07-31  4:04 ` [PATCH 13/49] drm/ttm: purge old manager init path Dave Airlie
2020-07-31 12:58   ` Christian König
2020-07-31  4:04 ` [PATCH 14/49] drm/ttm: pass man around instead of mem_type in some places Dave Airlie
2020-07-31 13:04   ` Christian König
2020-07-31  4:04 ` [PATCH 15/49] drm/ttm: make some inline helper functions for cleanup paths Dave Airlie
2020-07-31 13:07   ` Christian König
2020-08-04  2:28     ` Dave Airlie
2020-07-31  4:04 ` [PATCH 16/49] drm/ttm: start allowing drivers to use new takedown path Dave Airlie
2020-07-31 13:09   ` Christian König
2020-07-31  4:04 ` [PATCH 17/49] drm/amdgpu/ttm: " Dave Airlie
2020-07-31 13:08   ` Christian König
2020-07-31  4:04 ` [PATCH 18/49] drm/vmwgfx: takedown vram manager Dave Airlie
2020-07-31  4:04 ` [PATCH 19/49] drm/vram_helper: call explicit mm takedown Dave Airlie
2020-07-31  4:04 ` [PATCH 20/49] drm/nouveau: use new cleanup paths Dave Airlie
2020-07-31  4:04 ` [PATCH 21/49] drm/radeon/ttm: use new takedown paths Dave Airlie
2020-07-31 13:10   ` Christian König
2020-07-31  4:04 ` [PATCH 22/49] drm/qxl/ttm: use new takedown path Dave Airlie
2020-07-31  4:04 ` [PATCH 23/49] drm/vmwgfx: fix gmrid takedown paths to new interface Dave Airlie
2020-07-31  4:04 ` [PATCH 24/49] drm/ttm: remove range manager legacy takedown path Dave Airlie
2020-07-31 13:11   ` Christian König
2020-07-31  4:04 ` [PATCH 25/49] drm/ttm: make TTM responsible for cleaning system only Dave Airlie
2020-07-31 13:19   ` Christian König
2020-07-31  4:04 ` [PATCH 26/49] drm/ttm: add wrapper to get manager from bdev Dave Airlie
2020-07-31  7:14   ` Thomas Zimmermann
2020-07-31  7:21     ` Dave Airlie
2020-07-31 13:18       ` daniel
2020-07-31 13:23   ` Christian König
2020-07-31 21:06     ` Dave Airlie
2020-07-31  4:04 ` [PATCH 27/49] drm/amdgfx/ttm: use wrapper to get ttm memory managers Dave Airlie
2020-07-31  4:04 ` [PATCH 28/49] drm/vram-helper: use wrapper to access " Dave Airlie
2020-07-31  4:05 ` [PATCH 29/49] drm/nouveau/ttm: " Dave Airlie
2020-07-31  4:05 ` [PATCH 30/49] drm/qxl/ttm: use wrapper to access memory manager Dave Airlie
2020-07-31  4:05 ` [PATCH 31/49] drm/radeon/ttm: " Dave Airlie
2020-07-31  4:05 ` [PATCH 32/49] drm/vmwgfx/ttm: " Dave Airlie
2020-07-31  4:05 ` [PATCH 33/49] drm/ttm: rename manager variable to make sure wrapper is used Dave Airlie
2020-07-31  4:05 ` [PATCH 34/49] drm/ttm: make manager debug function optional Dave Airlie
2020-07-31  9:46   ` daniel
2020-07-31 13:03     ` Christian König
2020-07-31 13:24   ` Christian König
2020-07-31  4:05 ` [PATCH 35/49] drm/nouveau/ttm: don't fill in blank ttm debug callback Dave Airlie
2020-07-31 13:25   ` Christian König
2020-07-31  4:05 ` [PATCH 36/49] drm/vmwgfx/gmrid: don't provide pointless " Dave Airlie
2020-07-31 13:26   ` Christian König
2020-07-31  4:05 ` [PATCH 37/49] drm/ttm: allow drivers to provide their own manager subclasses Dave Airlie
2020-07-31  4:05 ` [PATCH 38/49] drm/amdgpu/ttm: use bo manager subclassing for vram/gtt mgrs Dave Airlie
2020-07-31 13:29   ` Christian König
2020-07-31  4:05 ` [PATCH 39/49] drm/ttm: make ttm_bo_man_init/takedown take type + args Dave Airlie
2020-07-31 13:32   ` Christian König
2020-08-04  1:42     ` Dave Airlie
2020-08-04 10:26       ` Christian König
2020-08-06  3:46         ` Dave Airlie
2020-08-06  8:24           ` Christian König
2020-07-31  4:05 ` [PATCH 40/49] drm/ttm: move range manager to subclassed driver allocation Dave Airlie
2020-07-31 13:33   ` Christian König
2020-07-31  4:05 ` [PATCH 41/49] drm/vmwgfx/ttm: move thp to driver managed Dave Airlie
2020-07-31  4:05 ` [PATCH 42/49] drm/vmwgfx/gmrid: convert to driver controlled allocation Dave Airlie
2020-07-31  4:05 ` [PATCH 43/49] drm/nouveau/ttm: move to driver allocated manager Dave Airlie
2020-07-31  4:05 ` [PATCH 44/49] drm/ttm: drop priv pointer in memory manager Dave Airlie
2020-07-31 13:33   ` Christian König
2020-07-31  4:05 ` [PATCH 45/49] drm/amdgpu/ttm: remove man->bdev references Dave Airlie
2020-07-31 14:55   ` Christian König
2020-07-31  4:05 ` [PATCH 46/49] drm/ttm: drop man->bdev link Dave Airlie
2020-07-31 14:54   ` Christian König
2020-07-31  4:05 ` [PATCH 47/49] drm/ttm: drop list of memory managers from device Dave Airlie
2020-07-31  9:55   ` daniel
2020-07-31 14:57   ` Christian König
2020-07-31  4:05 ` [PATCH 48/49] drm/ttm: drop type manager has_type Dave Airlie
2020-07-31  4:05 ` [PATCH 49/49] drm/ttm: consolidate manager used apis into a set and get Dave Airlie
2020-07-31  9:51   ` daniel
2020-07-31 14:59   ` Christian König
2020-07-31  9:17 ` [PATCH 00/49] ttm mem manager refactoring Christian König
2020-07-31  9:29   ` daniel
2020-07-31 13:01     ` Christian König
2020-08-03  7:12   ` Dave Airlie
2020-08-03 11:13     ` Christian König

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).