On Thu, Aug 29, 2024 at 2:38 PM Jingbo Xu <jefflexu@xxxxxxxxxxxxxxxxx> wrote: > > Hi, Yafang, > > On 8/29/24 11:58 AM, Yafang Shao wrote: > > On Wed, Aug 28, 2024 at 11:51 PM Joanne Koong <joannelkoong@xxxxxxxxx> wrote: > >> > >> On Tue, Aug 27, 2024 at 2:52 PM kernel test robot <lkp@xxxxxxxxx> wrote: > >>> > >>> Hi Joanne, > >>> > >>> kernel test robot noticed the following build errors: > >>> > >>> [auto build test ERROR on mszeredi-fuse/for-next] > >>> [also build test ERROR on linus/master v6.11-rc5 next-20240827] > >>> [If your patch is applied to the wrong git tree, kindly drop us a note. > >>> And when submitting patch, we suggest to use '--base' as documented in > >>> https://git-scm.com/docs/git-format-patch#_base_tree_information] > >>> > >>> url: https://github.com/intel-lab-lkp/linux/commits/Joanne-Koong/fuse-add-optional-kernel-enforced-timeout-for-requests/20240827-043354 > >>> base: https://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse.git for-next > >>> patch link: https://lore.kernel.org/r/20240826203234.4079338-3-joannelkoong%40gmail.com > >>> patch subject: [PATCH v5 2/2] fuse: add default_request_timeout and max_request_timeout sysctls > >>> config: arc-randconfig-002-20240827 (https://download.01.org/0day-ci/archive/20240828/202408280419.yuu33o7t-lkp@xxxxxxxxx/config) > >>> compiler: arceb-elf-gcc (GCC) 13.2.0 > >>> reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240828/202408280419.yuu33o7t-lkp@xxxxxxxxx/reproduce) > >>> > >>> If you fix the issue in a separate patch/commit (i.e. not just a new version of > >>> the same patch/commit), kindly add following tags > >>> | Reported-by: kernel test robot <lkp@xxxxxxxxx> > >>> | Closes: https://lore.kernel.org/oe-kbuild-all/202408280419.yuu33o7t-lkp@xxxxxxxxx/ > >>> > >>> All errors (new ones prefixed by >>): > >>> > >>>>> fs/fuse/sysctl.c:30:5: error: redefinition of 'fuse_sysctl_register' > >>> 30 | int fuse_sysctl_register(void) > >>> | ^~~~~~~~~~~~~~~~~~~~ > >>> In file included from fs/fuse/sysctl.c:9: > >>> fs/fuse/fuse_i.h:1495:19: note: previous definition of 'fuse_sysctl_register' with type 'int(void)' > >>> 1495 | static inline int fuse_sysctl_register(void) { return 0; } > >>> | ^~~~~~~~~~~~~~~~~~~~ > >>>>> fs/fuse/sysctl.c:38:6: error: redefinition of 'fuse_sysctl_unregister' > >>> 38 | void fuse_sysctl_unregister(void) > >>> | ^~~~~~~~~~~~~~~~~~~~~~ > >>> fs/fuse/fuse_i.h:1496:20: note: previous definition of 'fuse_sysctl_unregister' with type 'void(void)' > >>> 1496 | static inline void fuse_sysctl_unregister(void) { return; } > >>> | ^~~~~~~~~~~~~~~~~~~~~~ > >>> > >> > >> I see. In the Makefile, the sysctl.o needs to be gated by CONFIG_SYSCTL > >> eg > >> fuse-$(CONFIG_SYSCTL) += sysctl.o > >> > >> I'll wait a bit to see if there are more comments on this patchset > >> before submitting v6. > > > > Hello Joanne, > > > > I noticed a change in behavior between versions v5 and v4 during my > > hellofuse test. > > > > - Setup: > > 1. Set fs.fuse.default_request_timeout to 10. > > 2. Start the hellofuse daemon, with FUSE mounted on /tmp/fuse/. > > 3. Run `cat /tmp/fuse/hello` and kill it within 10 seconds to > > trigger a Timer expired event. > > 4. Run `cat /tmp/fuse/hello` again. > > > > - v4: > > After the Timer expired event occurs, running `cat /tmp/fuse/hello` > > again is successful. > > > > - v5: > > Running `cat /tmp/fuse/hello` fails with the error: "Transport > > endpoint is not connected." > > > > I believe this behavior in v5 is unintended, correct? > > > > I think v5 has changed the per-request timeout to per-connection timeout > according to Miklos's suggestion. That is, once timedout, the whole > connection will be aborted. Understood. Thanks for your explanation. -- Regards Yafang