Re: [PATCH 5/7] FUSE: implement ioctl support

From: Tejun Heo
Date: Thu Aug 28 2008 - 14:29:38 EST


H. Peter Anvin wrote:
> Tejun Heo wrote:
>> ioctl support is tricky to implement because only the ioctl
>> implementation itself knows which memory regions need to be read
>> and/or written. To support this, fuse client can request retry of
>> ioctl specifying memory regions to read and write. Deep copying
>> (nested pointers) can be implemented by retrying multiple times
>> resolving one depth of dereference at a time.
>
> Okay, I'm going to say it... wouldn't it be better to have some kind of
> data structure description language which the userspace can register
> with the kernel to linearize the data on a per-ioctl basis (kind of like
> rpcgen)?

Ah.... funky. If this retry thing is too repulsive, I guess the best
alternative would be directly accessing caller's memory as Miklos suggested.

Thanks.

--
tejun
--
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/