From: Tejun Heo <tj@kernel.org>
To: Miklos Szeredi <miklos@szeredi.hu>
Cc: linux-kernel@vger.kernel.org, fuse-devel@lists.sourceforge.net
Subject: Re: [PATCHSET] FUSE: extend FUSE to support more operations, take #2
Date: Fri, 21 Nov 2008 23:37:24 +0900 [thread overview]
Message-ID: <4926C7A4.7020605@kernel.org> (raw)
In-Reply-To: <E1L3W52-0007t3-PZ@pomaz-ex.szeredi.hu>
Miklos Szeredi wrote:
> On Fri, 21 Nov 2008, Tejun Heo wrote:
>> Miklos Szeredi wrote:
>>> On Fri, 21 Nov 2008, Tejun Heo wrote:
>>>>> I removed ->unrestricted_ioctl() and associated code because it really
>>>>> doesn't make any sense: the high level lib won't be used for CUSE
>>>>> stuff, otherwise unrestrited ioctls are not allowed (and the interface
>>>>> is rather horrible anyway).
>>>> Well, CUSE highlevel interface piggy backs on FUSE so it requires
>>>> unrestricted_ioctl() there for it and ossp does use it.
>>> I thought it uses the lowlevel interface. Why doesn't it do that?
>> Well, because it's simpler that way and people would be more used to it?
>> It's just easier when you implement a method which returns something
>> and looks similar to the respective file operation.
>
> Ah, that. Yeah, it's more intuitive, but that comes at a price. I'm
> not sure that for CUSE it's worth it. As I said the biggest feature
> is having paths, the others are not that important (like allocating a
> buffer for read, that's really not too complex to do in each CUSE
> driver).
>
>>> For CUSE there's really no point in going through high level
>>> interface, since there's just one file involved, so the path name
>>> generation (the main feature of the highlevel lib) doesn't make any
>>> sense.
>> Well, the choice was mostly for convenience as there also are a few
>> places where high level interface wraps things better a bit. Converting
>> wouldn't be difficult. Do you think it's important? I think keeping
>> things as parallel to FUSE as possible is more important.
>
> I wouldn't care very much, if it weren't for that horrid
> unrestricted_ioctl(). Not your fault, the interface is just not well
> suited to that.
If you want drop highlevel CUSE interface, that's fine with me. After
all, the complexity difference isn't that big for CUSE anyway.
Thanks.
--
tejun
next prev parent reply other threads:[~2008-11-21 14:37 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-11-20 14:11 [PATCHSET] FUSE: extend FUSE to support more operations, take #2 Tejun Heo
2008-11-20 14:11 ` [PATCH 1/5] fuse: move FUSE_MINOR to miscdevice.h Tejun Heo
2008-11-20 14:11 ` [PATCH 2/5] FUSE: implement ioctl support Tejun Heo
2008-11-20 14:11 ` [PATCH 3/5] FUSE: add file kernel handle Tejun Heo
2008-11-20 14:11 ` [PATCH 4/5] FUSE: implement unsolicited notification Tejun Heo
2008-11-20 14:11 ` [PATCH 5/5] FUSE: implement poll support Tejun Heo
2008-11-20 20:23 ` [PATCHSET] FUSE: extend FUSE to support more operations, take #2 Miklos Szeredi
2008-11-21 10:07 ` Tejun Heo
2008-11-21 11:05 ` Miklos Szeredi
2008-11-21 13:06 ` Tejun Heo
2008-11-21 13:29 ` Miklos Szeredi
2008-11-21 14:37 ` Tejun Heo [this message]
2008-11-22 7:42 ` Tejun Heo
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4926C7A4.7020605@kernel.org \
--to=tj@kernel.org \
--cc=fuse-devel@lists.sourceforge.net \
--cc=linux-kernel@vger.kernel.org \
--cc=miklos@szeredi.hu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.