summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/nouveau/core/include
diff options
context:
space:
mode:
authorBen Skeggs <bskeggs@redhat.com>2014-08-12 13:54:37 +1000
committerBen Skeggs <bskeggs@redhat.com>2014-09-15 22:22:13 +1000
commit13dfe1286d1ea1af4c9330b039c2316d0d92c484 (patch)
treeab5ef2e11438b384b9f1b6c394563ac53e1fcc93 /drivers/gpu/drm/nouveau/core/include
parentd7bda18c9102b65078c132fd7d7ffd835058f021 (diff)
drm/nouveau/core/mm: fill in holes with "allocated" nodes
The allocation algorithm doesn't expect there to be holes in the mm, which causes its alignment/cutoff calculations to choke (and go negative) when encountering the last chunk of a block before a hole. The least expensive solution is to simply fill in any holes with nodes that are pre-marked as being allocated. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/nouveau/core/include')
-rw-r--r--drivers/gpu/drm/nouveau/core/include/core/mm.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/gpu/drm/nouveau/core/include/core/mm.h b/drivers/gpu/drm/nouveau/core/include/core/mm.h
index 7848c0402497..d4ef40460e42 100644
--- a/drivers/gpu/drm/nouveau/core/include/core/mm.h
+++ b/drivers/gpu/drm/nouveau/core/include/core/mm.h
@@ -7,6 +7,7 @@ struct nouveau_mm_node {
struct list_head rl_entry;
#define NVKM_MM_TYPE_NONE 0x00
+#define NVKM_MM_TYPE_HOLE 0xff
u8 type;
u32 offset;
u32 length;