Comments (6)
Is there any chance to prioritize this? As a FSAL author it is nearly impossible to figure out what to do.
Thanks!
from nfs-ganesha.
Most or all of those functions are doxygen documented in fsal/commonlib.c. Basically all of our API-level documentation is done via doxygen comments on the function's implementation.
from nfs-ganesha.
I am mostly concerned about these:
- fsal_start_io
- fsal_start_global_io
- fsal_complete_io
- fsal_start_fd_work
- fsal_complete_fd_work
- insert_fd_lru
- Also the fsal_obj_handle::obj_lock
All fsals that ship with ganesha call most of these, so it appears to me this is definitely part of the FSAL api. It would greatly help to have a doc or comments on the header file or whatever that describes global file descriptors, and FD lru. How is this used? What is the policy? Etc.
from nfs-ganesha.
There is some in code documentation on those in commonlib.c.
I can try and find some time to improve the documentation of all of that...
from nfs-ganesha.
Perhaps the most useful thing would be one or two pages on what those functions are about, and not necessarily a bunch of comments on each of the functions (although that would also be super useful).
What is this "fd lru" thing?
What is bump fd lru for?
In fact, what IS an fd?
How do I configure fd lru in ganesha config?
etc.....
Please keen in mind developers that write their own FSAL.
from nfs-ganesha.
I'm working on, and will submit tomorrow, a patch that adds more description about fsal_fd and the API with the definition of struct fsal_fd.
As to how to configure, we don't really have much suggestion for that, but I will document the mdcache parameters that are passed onto the fd_lru.
The most important ones are the FD_Limit_Percent, FD_HWMark_Percent, and FD_LWMark_Percent that govern the size of the fd_lru based on a percentage of the process RLIMIT_NOFILE (ulimit -n)
from nfs-ganesha.
Related Issues (20)
- Add support for CEPH ceph.file.layout and ceph.dir.layout xattr HOT 7
- ganesha crash @lock_entry_dec_ref() HOT 1
- [Question] How should `owner` parameter be used in lock_op2() in FSAL api? HOT 6
- possible lock starvation in lock conflict scenerio HOT 2
- Add testing instructions to CONTRIBUTING_HOWTO.txt HOT 1
- Using the DBUS to dynamically update protocols of export, changed from 3 to 3, 4, not in effect. HOT 15
- Ha cluster config HOT 1
- [Question] How does nfs-ganesha avoid state reclaimed in edge conditions? HOT 13
- [Question] Is there replay cache for NFS v3 or NFS v4.0 in nfs-ganesha? HOT 2
- Unable to git clone on top of NFS share with Ganesha v6.
- How to close socket when socket idle ? HOT 3
- NFSv4 ACL support in FSAL_VFS but without VFS_POSIX_ACL / USE_ACL_MAPPING HOT 8
- 5.7: build fails with `USE_GTEST=ON` HOT 1
- Potential bug: lost export_ops->unexport() if export_ops->lookup_path() fails HOT 2
- ganesha crash in Protocols/NFS/nfs3_create.c HOT 3
- ganesha crash while deleting lock_entry->sle_list in 4.3 HOT 3
- v5.7 packages for SLES15 ?
- 5.9: FileNotFoundError: [Errno 2] No such file or directory: 'dist/ganesha-top-5.9-py3-none-any.whl' HOT 4
- ganesha thread is stuck HOT 9
- NFS3/NFS4 -> NFS3 proxy listdir not working HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from nfs-ganesha.