[fuse-discuss] fusefs changes for new libfuse
Sarah Jelinek
Sarah.Jelinek at Sun.COM
Thu Oct 4 07:54:29 PDT 2007
Hi Mark,
My responses inline...
> On Fri, 2007-09-28 at 10:55 -0600, Sarah Jelinek wrote:
>
>> Hi Mark,
>>
>> My comments/questions on your changes:
>>
>> -The changes to fuse_send_mounted_notice don't allow for freeing of the
>> msg_p structure. Where does this get freed now?
>>
>>
>
> It gets freed when fuse_process_init_msg() is called.
> fuse_process_init_msg() is registered as a callback function in
> fuse_send_mounted_notice(). fuse_process_init_msg() will be called from
> fuse_dev_write().
>
>
>
Ah ok. thanks.
>> -Why can't FUSE_INIT fail?
>>
>
> Well that should probably be "should never fail" but basically what its
> saying is that the fuse library will always respond with data to
> FUSE_INIT - its different from some of the other message types (like
> read a file etc) which can fail to return data.
>
>
Ok.
>> -Why do we need the static atoi function in fuse_vfsops.c?
>>
>>
>
> Is there another version I can use? I need to convert a string to an
> integer?
> atoi() is being used to convert the file-descriptor passed in as a
> string as a mount option back into an integer which can be used with
> getf().
>
>
I don't know if there is another version you can use. It seems as if we
lifted this from NFS code, so maybe there isn't. For now it is ok.
>> -in fuse_unmount() why do we return success even if the session isn't found?
>>
>>
>
> If the session can't be found then the filesystem is already essentially
> unmounted. This has to do with the case where the filesystem daemon has
> died (for whatever reason) but the VFS layer still thinks the filesystem
> is mounted. A call to umount(2) will cleanup the VFS layer stuff and
> return success.
>
>
Ok.
>> -I didn't see the new library stuff in this webrev? Did you already
>> commit that? Or is that committed at all? What is the version of the
>> library that this works with?
>>
>
> That has already been committed. The webrev are pretty hard to read (as
> its mostly new files) but you can see it here:
> http://cr.opensolaris.org/~m.phalan/libfuse/webrev/
>
> I've already committed it to the repository so probably the easiest way
> to look at it is to just check it out.
>
> The version in the repository (and that works with the fusefs changes)
> is based on libfuse 2.7.0.
>
>
>> -For fuse_unmount() shouldn't we be cleaning up the vfs and vnode data?
>>
>
> Probably. I didn't add any extra logic to do this cleanup - the changes
> I made were all related to session handling.
>
> Sunil: What needs to be cleaned up here as regards the vnode data?
>
>
We do need to do this but it isn't required for this putback.
> Thanks for the review,
>
>
thanks,
sarah
****
> -Mark
>
>
More information about the fuse-discuss
mailing list