tech-kern archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: [PATCH] PUFFS with cache TTL from filesystem
hi,
> Hi
>
> I am ready to commit the following changes, which enable our FUSE
> emulation to take advantage of name and attribute caching, with
> TTL given by the filesystem. It makes performances much better
> while prseerving the ability to run a distributed filesystem:
> http://ftp.espci.fr/shadow/manu/kernel2.patch
> http://ftp.espci.fr/shadow/manu/libpuffs2.patch
> http://ftp.espci.fr/shadow/manu/libperfuse2.patch
>
> The code seems to work fine according to my test cases, I just
> have one concern about isdot case puffs_vnop_lookup(). I wonder
> if the vput call is right, or if I should drop a reference.
> cvp and ap->a_dvp should always be the same in that case, right?
it could be simpler to use cache_lookup_raw. see nfs for an example.
some random comments:
- i feel that the api is too specific to the use of libperfuse.
- it should not require puffs_node.
- i think you mixed up at least two separate features.
they ought to have separate flags.
- DIROP's ability to return file attribute
- attribute TTLs
- it would be better to allow file server choose if it returns attributes
on DIROPs per-request basis rather than per-mount. like nfsv3.
- as new functions returns a pointer, it's better to follow
the existing naming convention. ie. "p" of puffs_pn_getvap
- please handle ticks wraparounds.
YAMAMOTO Takashi
>
> --
> Emmanuel Dreyfus
> http://hcpnet.free.fr/pubz
> manu%netbsd.org@localhost
Home |
Main Index |
Thread Index |
Old Index