Ilia Mirkin
2016-Mar-06 21:06 UTC
[Nouveau] [PATCH] core: use vzalloc for allocating ramht
Most calls to nvkm_ramht_new use 0x8000 as the size. This results in a fairly sizeable chunk of memory to be allocated, which may not be available with kzalloc. Since this is done fairly rarely (once per channel), use vzalloc instead. Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu> --- drm/nouveau/nvkm/core/ramht.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drm/nouveau/nvkm/core/ramht.c b/drm/nouveau/nvkm/core/ramht.c index 3216e15..89da472 100644 --- a/drm/nouveau/nvkm/core/ramht.c +++ b/drm/nouveau/nvkm/core/ramht.c @@ -131,7 +131,7 @@ nvkm_ramht_del(struct nvkm_ramht **pramht) struct nvkm_ramht *ramht = *pramht; if (ramht) { nvkm_gpuobj_del(&ramht->gpuobj); - kfree(*pramht); + vfree(*pramht); *pramht = NULL; } } @@ -143,8 +143,8 @@ nvkm_ramht_new(struct nvkm_device *device, u32 size, u32 align, struct nvkm_ramht *ramht; int ret, i; - if (!(ramht = *pramht = kzalloc(sizeof(*ramht) + (size >> 3) * - sizeof(*ramht->data), GFP_KERNEL))) + if (!(ramht = *pramht = vzalloc(sizeof(*ramht) + + (size >> 3) * sizeof(*ramht->data)))) return -ENOMEM; ramht->device = device; -- 2.4.10
Apparently Analagous Threads
- [PATCH] drm/nouveau: fix ramht wraparound
- [Bug 93458] New: page allocation failure: order:5, mode:0x240c0c0
- [PATCH] fifo/nv04: avoid ramht race against cookie insertion
- [TRIVIAL PATCH next 00/15] treewide: Convert vmalloc/memset to vzalloc
- [TRIVIAL PATCH next 00/15] treewide: Convert vmalloc/memset to vzalloc