Mauro, Please revert this patch: vm_area_cachep is not exported, so you cannot use this in a module. Cho KyongHo, if you believe that vm_area_cachep should be exported so it can be used here, then please make a patch for that. For the time being though, this patch should be reverted. This patch slipped through the cracks and I clearly never reviewed it, and I only noticed the problem after I compiled the media_tree git repo after this patch was merged. Regards, Hans On 02/05/2015 06:52 AM, Cho KyongHo wrote: > 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: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx> > CC: Hans Verkuil <hans.verkuil@xxxxxxxxx> > CC: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx> > Signed-off-by: Cho KyongHo <pullip.cho@xxxxxxxxxxx> > --- > 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); > > -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html