Re: [PATCH 1/4] mm: cma: add currently allocated CMA buffers list to debugfs

From: Joonsoo Kim
Date: Thu Feb 12 2015 - 22:14:01 EST


On Fri, Feb 13, 2015 at 01:15:41AM +0300, Stefan Strogin wrote:
> static int cma_debugfs_get(void *data, u64 *val)
> {
> unsigned long *p = data;
> @@ -125,6 +221,52 @@ static int cma_alloc_write(void *data, u64 val)
>
> DEFINE_SIMPLE_ATTRIBUTE(cma_alloc_fops, NULL, cma_alloc_write, "%llu\n");
>
> +static int cma_buffers_read(struct file *file, char __user *userbuf,
> + size_t count, loff_t *ppos)
> +{
> + struct cma *cma = file->private_data;
> + struct cma_buffer *cmabuf;
> + struct stack_trace trace;
> + char *buf;
> + int ret, n = 0;
> +
> + if (*ppos < 0 || !count)
> + return -EINVAL;
> +
> + buf = kmalloc(count, GFP_KERNEL);
> + if (!buf)
> + return -ENOMEM;

Is count limited within proper size boundary for kmalloc()?
If it can exceed page size, using vmalloc() is better than this.

Thanks.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/