Giter Club home page Giter Club logo

Comments (6)

drieber avatar drieber commented on June 9, 2024

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.

dang avatar dang commented on June 9, 2024

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.

drieber avatar drieber commented on June 9, 2024

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.

ffilz avatar ffilz commented on June 9, 2024

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.

drieber avatar drieber commented on June 9, 2024

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.

ffilz avatar ffilz commented on June 9, 2024

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)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.