diff options
author | Ben Skeggs <bskeggs@redhat.com> | 2011-06-09 23:36:08 -0400 |
---|---|---|
committer | Ben Skeggs <bskeggs@redhat.com> | 2011-06-23 02:03:46 -0400 |
commit | 24f246ac10ae6a6ae873045387d4501498869f74 (patch) | |
tree | eb0c2dde2080898958e317c37ed87bb883653678 /drivers/gpu/drm/nouveau/nouveau_mm.h | |
parent | 15ba79ad44fed84a9dabf6996144789424abae5b (diff) |
drm/nouveau: rework vram init/fini ordering a little
Commit "drm/nouveau: add some debug output if nouveau_mm busy at destroy time"
revealed an issue where vram mm takedown would actually fail due to there
still being nodes present, causing nouveau to leak a small amount of memory
on module unload.
This splits TTM/nouveau_mm a bit more cleanly and ensures nouveau_mm fini
isn't done until all gpuobjs are also destroyed.
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/nouveau/nouveau_mm.h')
-rw-r--r-- | drivers/gpu/drm/nouveau/nouveau_mm.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/gpu/drm/nouveau/nouveau_mm.h b/drivers/gpu/drm/nouveau/nouveau_mm.h index 1f7483aae9a4..b9c016d21553 100644 --- a/drivers/gpu/drm/nouveau/nouveau_mm.h +++ b/drivers/gpu/drm/nouveau/nouveau_mm.h | |||
@@ -52,6 +52,7 @@ int nouveau_mm_get(struct nouveau_mm *, int type, u32 size, u32 size_nc, | |||
52 | void nouveau_mm_put(struct nouveau_mm *, struct nouveau_mm_node *); | 52 | void nouveau_mm_put(struct nouveau_mm *, struct nouveau_mm_node *); |
53 | 53 | ||
54 | int nv50_vram_init(struct drm_device *); | 54 | int nv50_vram_init(struct drm_device *); |
55 | void nv50_vram_fini(struct drm_device *); | ||
55 | int nv50_vram_new(struct drm_device *, u64 size, u32 align, u32 size_nc, | 56 | int nv50_vram_new(struct drm_device *, u64 size, u32 align, u32 size_nc, |
56 | u32 memtype, struct nouveau_mem **); | 57 | u32 memtype, struct nouveau_mem **); |
57 | void nv50_vram_del(struct drm_device *, struct nouveau_mem **); | 58 | void nv50_vram_del(struct drm_device *, struct nouveau_mem **); |