Theodore Ts'o <tytso@xxxxxxx> 于2024年6月6日周四 03:53写道: > > On Wed, Jun 05, 2024 at 12:29:45PM +0200, Jan Kara wrote: > > > > But that's why I'm asking for usecases. For some usecases it may be fine > > that in case of unclean shutdown you run quotacheck program to update quota > > information based on current usage - non-journalling filesystems use this > > method. So where do you want to use quotas on a FUSE filesystem? > > > > Something else to consider is whether you want to allow the user to > > query the current quota information (e.g., the "quota" command), and > > whether you want the system administrator to be able to set quota > > limits, and whether you expect that when the soft quota limits are > > exceeded that warnings get written to the user's tty. All of this Thanks a lot for your kind reminders and suggestions. In the first step, I plan to implement basic functionalities. This includes users being able to query quotas, administrators being able to set quotas, and returning EDQUOT when the hard limit is exceeded. However, it does not include issuing warnings to the user's tty when the soft limit is exceeded or providing other full Linux quota support beyond this. > > would mean that the kernel fuse driver would need changes, and the > > kernel<->userspae FUSE protocol would need to be extended as well. > > And at that pointm you really want to get the FUSE maintainer > > involved, since the FUSE protocol is somethign which is used on other > > OS's (e.g., Windows, MacOS, etc.) Yes, we need to extend the protocol to inform users about quota updates. Reading may not require informing the user; it can be done directly in the kernel, but careful consideration is needed on how to implement this. And further discussion and thought are needed. After completing the basic functional thinking and implementation design, I will discuss with the FUSE maintainer which protocol extensions are feasible and which are not. > > As Jan put it, it's all in the use cases that you expect to be able to > support. If you just want quota to be tracked, and for certain writes > to return EDQUOT, that's one thing. If you want the full Linux quota > user experience, that's quite another. > > Cheers, > > - Ted Best regards, -- Junchao Sun <sunjunchao2870@xxxxxxxxx>