From 5ed1c328ea077d70e1ebcd5188dc77cdc754df3a Mon Sep 17 00:00:00 2001 From: KyongHo Cho Date: Thu, 5 Feb 2015 02:52:42 -0300 Subject: [PATCH] [media] v4l: vb2-memops: use vma slab when vma allocation The slab for vm_area_struct which is vm_area_cachep is already prepared for the general use. Instead of kmalloc() for the vma copy for userptr, allocation from vm_area_cachep is more beneficial. CC: Hans Verkuil CC: Laurent Pinchart Signed-off-by: Cho KyongHo Signed-off-by: Mauro Carvalho Chehab --- drivers/media/v4l2-core/videobuf2-memops.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/media/v4l2-core/videobuf2-memops.c b/drivers/media/v4l2-core/videobuf2-memops.c index 81c1ad8..dd06efa 100644 --- a/drivers/media/v4l2-core/videobuf2-memops.c +++ b/drivers/media/v4l2-core/videobuf2-memops.c @@ -37,7 +37,7 @@ struct vm_area_struct *vb2_get_vma(struct vm_area_struct *vma) { struct vm_area_struct *vma_copy; - vma_copy = kmalloc(sizeof(*vma_copy), GFP_KERNEL); + vma_copy = kmem_cache_alloc(vm_area_cachep, GFP_KERNEL); if (vma_copy == NULL) return NULL; @@ -75,7 +75,7 @@ void vb2_put_vma(struct vm_area_struct *vma) if (vma->vm_file) fput(vma->vm_file); - kfree(vma); + kmem_cache_free(vm_area_cachep, vma); } EXPORT_SYMBOL_GPL(vb2_put_vma); -- 2.7.4