Re: [PATCH mmotm 1/5] nilfs2: fix problems of memory allocation inioctl

From: Ryusuke Konishi
Date: Fri Dec 12 2008 - 13:48:36 EST


Hi,
On Fri, 12 Dec 2008 14:47:58 +0100, Andi Kleen <andi@xxxxxxxxxxxxxx> wrote:
> Ryusuke Konishi <konishi.ryusuke@xxxxxxxxxxxxx> writes:
>
> > The current memory copy function of nilfs2 ioctl has following
> > problems:
>
> Wouldn't it be easier/faster/more reliable to just use vmalloc for
> those allocations? The only reason to use kmalloc for such large
> allocations would be if you want to do direct DMA (but even there are
> ways to do this using virtual allocations and scatter-gather)
>
> -Andi

Thanks. Using vmalloc seems worthy of consideration.
I'll try to rewrite and test it to confirm whether it can make the
code simpler and robust enough.

By the way, is there any recommended way to exchange such a large
amount of data items between user space and kernel space?

In the current interface, each data item is copied twice: one is to
the allocated memory from user space (via copy_from_user), and another
is to on-memory structures or to buffers/pages from the allocated
memory.

This looks somehow inefficient.

Regards,
Ryusuke
--
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/