From: Miklos Szeredi <miklos@szeredi.hu>
To: Josef Bacik <josef@toxicpanda.com>
Cc: Joanne Koong <joannelkoong@gmail.com>,
linux-fsdevel@vger.kernel.org, bernd.schubert@fastmail.fm,
jefflexu@linux.alibaba.com, laoar.shao@gmail.com,
kernel-team@meta.com
Subject: Re: [PATCH v4 0/2] fuse: add timeout option for requests
Date: Wed, 21 Aug 2024 20:54:34 +0200 [thread overview]
Message-ID: <CAJfpegsiRNnJx7OAoH58XRq3zujrcXx94S2JACFdgJJ_b8FdHw@mail.gmail.com> (raw)
In-Reply-To: <20240821181130.GG1998418@perftesting>
On Wed, 21 Aug 2024 at 20:11, Josef Bacik <josef@toxicpanda.com> wrote:
> "A well written server" is the key part here ;). In our case we had a "well
> written server" that ended up having a deadlock and we had to run around with a
> drgn script to find those hung mounts and kill them manually. The usecase here
> is specifically for bugs in the FUSE server to allow us to cleanup automatically
> with EIO's rather than a drgn script to figure out if the mount is hung.
So you 'd like to automatically abort the connection to an
unresponsive server? I'm okay with that.
What I'm worried about is the unintended side effects of timed out
request without the server's knowledge (i.e. VFS locks released, then
new request takes VFS lock). If the connection to the server is
aborted, then that's not an issue.
It's also much simpler to just time out any response from the server
(either read or write on /dev/fuse) than having to do per-request
timeouts.
> It also gives us the opportunity to do the things that Bernd points out,
> specifically remove the double buffering downside as we can trust that
> eventually writeback will either succeed or timeout. Thanks,
Well see this explanation for how this might deadlock on a memory
allocation by the server:
https://lore.kernel.org/all/CAJfpegsfF77SV96wvaxn9VnRkNt5FKCnA4mJ0ieFsZtwFeRuYw@mail.gmail.com/
Having a timeout would fix the deadlock, but it doesn't seem to me a
proper solution.
Thanks,
Miklos
next prev parent reply other threads:[~2024-08-21 18:54 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-08-13 23:22 [PATCH v4 0/2] fuse: add timeout option for requests Joanne Koong
2024-08-13 23:22 ` [PATCH v4 1/2] fuse: add optional kernel-enforced timeout " Joanne Koong
2024-08-21 7:55 ` Jingbo Xu
2024-08-21 17:38 ` Joanne Koong
2024-08-13 23:22 ` [PATCH v4 2/2] fuse: add default_request_timeout and max_request_timeout sysctls Joanne Koong
2024-08-20 6:39 ` Yafang Shao
2024-08-20 18:31 ` Joanne Koong
2024-08-21 2:00 ` Yafang Shao
2024-08-22 7:06 ` Jingbo Xu
2024-08-22 21:19 ` Joanne Koong
2024-08-23 2:17 ` Jingbo Xu
2024-08-23 22:54 ` Joanne Koong
2024-08-27 8:12 ` Jingbo Xu
2024-08-27 18:13 ` Joanne Koong
2024-08-28 2:27 ` Jingbo Xu
2024-08-21 2:01 ` [PATCH v4 0/2] fuse: add timeout option for requests Yafang Shao
2024-08-26 20:30 ` Joanne Koong
2024-08-21 13:47 ` Miklos Szeredi
2024-08-21 14:15 ` Bernd Schubert
2024-08-21 14:25 ` Miklos Szeredi
2024-08-21 18:11 ` Josef Bacik
2024-08-21 18:54 ` Miklos Szeredi [this message]
2024-08-21 21:22 ` Joanne Koong
2024-08-22 10:52 ` Miklos Szeredi
2024-08-22 17:31 ` Joanne Koong
2024-08-22 17:43 ` Miklos Szeredi
2024-08-22 22:38 ` Joanne Koong
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CAJfpegsiRNnJx7OAoH58XRq3zujrcXx94S2JACFdgJJ_b8FdHw@mail.gmail.com \
--to=miklos@szeredi.hu \
--cc=bernd.schubert@fastmail.fm \
--cc=jefflexu@linux.alibaba.com \
--cc=joannelkoong@gmail.com \
--cc=josef@toxicpanda.com \
--cc=kernel-team@meta.com \
--cc=laoar.shao@gmail.com \
--cc=linux-fsdevel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).