On Mon, Aug 5, 2024 at 12:38 AM Jingbo Xu <jefflexu@xxxxxxxxxxxxxxxxx> wrote: > > > > On 7/30/24 8:23 AM, Joanne Koong wrote: > > Introduce two new sysctls, "default_request_timeout" and > > "max_request_timeout". These control timeouts on replies by the > > server to kernel-issued fuse requests. > > > > "default_request_timeout" sets a timeout if no timeout is specified by > > the fuse server on mount. 0 (default) indicates no timeout should be enforced. > > > > "max_request_timeout" sets a maximum timeout for fuse requests. If the > > fuse server attempts to set a timeout greater than max_request_timeout, > > the system will default to max_request_timeout. Similarly, if the max > > default timeout is greater than the max request timeout, the system will > > default to the max request timeout. 0 (default) indicates no timeout should > > be enforced. > > > > $ sysctl -a | grep fuse > > fs.fuse.default_request_timeout = 0 > > fs.fuse.max_request_timeout = 0 > > > > $ echo 0x100000000 | sudo tee /proc/sys/fs/fuse/default_request_timeout > > tee: /proc/sys/fs/fuse/default_request_timeout: Invalid argument > > > > $ echo 0xFFFFFFFF | sudo tee /proc/sys/fs/fuse/default_request_timeout > > 0xFFFFFFFF > > > > $ sysctl -a | grep fuse > > fs.fuse.default_request_timeout = 4294967295 > > fs.fuse.max_request_timeout = 0 > > > > Signed-off-by: Joanne Koong <joannelkoong@xxxxxxxxx> > > Why do we introduce a new sysfs knob for fuse instead of putting it > under fusectl? Though we also encounter some issues with fusectl since > fusectl doesn't work well in container scenarios as it doesn't support > FS_USERNS_MOUNT. > I think having these constraints configured via sysctl offers more flexibility (eg if we want to enforce the max or default request timeout across the board for all incoming connections on the system), whereas I believe fusectl is on a per-connection basis. > > -- > Thanks, > Jingbo