From: Suresh Jayaraman <sjayaraman-l3A5Bk7waGM@public.gmane.org>
To: Jeff Layton <jlayton-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
Cc: smfrench-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org,
linux-cifs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: [PATCH 15/18] cifs: reconnect unresponsive servers
Date: Thu, 23 Dec 2010 21:06:48 +0530 [thread overview]
Message-ID: <4D136C90.2080208@suse.de> (raw)
In-Reply-To: <20101223082005.347b8ca8-xSBYVWDuneFaJnirhKH9O4GKTjYczspe@public.gmane.org>
On 12/23/2010 06:50 PM, Jeff Layton wrote:
> On Thu, 23 Dec 2010 16:01:08 +0530
> Suresh Jayaraman <sjayaraman-l3A5Bk7waGM@public.gmane.org> wrote:
>
>> On 12/17/2010 08:38 PM, Jeff Layton wrote:
>>> If the server isn't responding to echoes, we don't want to leave tasks
>>> hung waiting for it to reply. At that point, we'll want to reconnect
>>> so that soft mounts can return an error to userspace quickly.
>>>
>>> If the client hasn't received a reply after 3 echo intervals, assume
>>> that the transport is down and attempt to reconnect the socket.
>>>
>>> Signed-off-by: Jeff Layton <jlayton-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
>>> ---
>>> fs/cifs/connect.c | 23 +++++++++++++++++++----
>>> 1 files changed, 19 insertions(+), 4 deletions(-)
>>>
>>> diff --git a/fs/cifs/connect.c b/fs/cifs/connect.c
>>> index 20f6eda..2ad3c67 100644
>>> --- a/fs/cifs/connect.c
>>> +++ b/fs/cifs/connect.c
>>> @@ -55,6 +55,9 @@
>>> /* SMB echo "timeout" -- FIXME: tunable? */
>>> #define SMB_ECHO_INTERVAL (60 * HZ)
>>>
>>> +/* reconnect if no response from server in this time period */
>>> +#define UNRESPONSIVE_SERVER_TIMEOUT (5 * SMB_ECHO_INTERVAL)
>>> +
>>
>> It's not clear to me why is this timeout is set to be
>> 5 * SMB_ECHO_INTERVAL?
>>
>
> My bad... I should have updated the patch description. When testing
> this I experimented with a range of 2 to 5 times.
>
Ah, ok. Got confused a bit trying to match the code with patch description.
> There is no "correct" value for this. It really comes down to a
> judgement call. Reducing that value means that you'll return an error
> to the caller more quickly on a soft mount timeout occurs. The downside
> is that you'll issue reconnects more frequently when there's a temporary
> network partition.
> I tend to think that we're better off running with a larger value for
> this (around 5*). Reconnects are terribly expensive and lock
> reclaimation in Linux cifs is non-existent. Avoiding reconnects as much
> as possible is preferable so making this as high as we can get away
> with is a good thing.
Agreed.
> That said, I'm open to suggestions on this. I think we shouldn't go
> below 3*, and above 5* is probably too much. We could eventually make
> it tunable, but we still need a default. I don't think it should be a
> mount option since it's a per-socket setting (mounts with different
> timeouts wouldn't be able to share sockets), so maybe a module option
> would be best.
>
Sounds reasonable.
--
Suresh Jayaraman
next prev parent reply other threads:[~2010-12-23 15:36 UTC|newest]
Thread overview: 47+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-12-17 15:07 [PATCH 00/18] cifs: overhaul request timeout behavior in CIFS (try #3) Jeff Layton
[not found] ` <1292598497-29796-1-git-send-email-jlayton-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2010-12-17 15:08 ` [PATCH 01/18] cifs: don't fail writepages on -EAGAIN errors Jeff Layton
[not found] ` <1292598497-29796-2-git-send-email-jlayton-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2010-12-20 10:53 ` Suresh Jayaraman
2010-12-17 15:08 ` [PATCH 02/18] cifs: no need to mark smb_ses_list as cifs_demultiplex_thread is exiting Jeff Layton
[not found] ` <1292598497-29796-3-git-send-email-jlayton-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2010-12-20 10:52 ` Suresh Jayaraman
2010-12-20 16:38 ` Suresh Jayaraman
[not found] ` <4D0F868E.8020407-l3A5Bk7waGM@public.gmane.org>
2010-12-21 1:38 ` Jeff Layton
2010-12-17 15:08 ` [PATCH 03/18] cifs: make wait_for_free_request take a TCP_Server_Info pointer Jeff Layton
[not found] ` <1292598497-29796-4-git-send-email-jlayton-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2010-12-20 10:52 ` Suresh Jayaraman
2010-12-17 15:08 ` [PATCH 04/18] cifs: clean up accesses to midCount Jeff Layton
[not found] ` <1292598497-29796-5-git-send-email-jlayton-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2010-12-20 10:52 ` Suresh Jayaraman
2010-12-17 15:08 ` [PATCH 05/18] cifs: move locked sections out of DeleteMidQEntry and AllocMidQEntry Jeff Layton
[not found] ` <1292598497-29796-6-git-send-email-jlayton-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2010-12-20 11:00 ` Suresh Jayaraman
2010-12-17 15:08 ` [PATCH 06/18] cifs: move mid result processing into common function Jeff Layton
[not found] ` <1292598497-29796-7-git-send-email-jlayton-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2010-12-20 11:06 ` Suresh Jayaraman
2010-12-17 15:08 ` [PATCH 07/18] cifs: wait indefinitely for responses Jeff Layton
[not found] ` <1292598497-29796-8-git-send-email-jlayton-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2010-12-21 15:50 ` Suresh Jayaraman
2010-12-17 15:08 ` [PATCH 08/18] cifs: don't reconnect server when we don't get a response Jeff Layton
[not found] ` <1292598497-29796-9-git-send-email-jlayton-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2010-12-20 11:27 ` Suresh Jayaraman
2010-12-17 15:08 ` [PATCH 09/18] cifs: clean up sync_mid_result Jeff Layton
[not found] ` <1292598497-29796-10-git-send-email-jlayton-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2010-12-20 11:27 ` Suresh Jayaraman
[not found] ` <4D0F3DAD.7080801-l3A5Bk7waGM@public.gmane.org>
2010-12-20 13:04 ` Jeff Layton
[not found] ` <20101220080409.35112ed8-4QP7MXygkU+dMjc06nkz3ljfA9RmPOcC@public.gmane.org>
2010-12-20 16:35 ` Suresh Jayaraman
2010-12-17 15:08 ` [PATCH 10/18] cifs: allow for different handling of received response Jeff Layton
[not found] ` <1292598497-29796-11-git-send-email-jlayton-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2010-12-21 15:50 ` Suresh Jayaraman
[not found] ` <4D10CCD3.1040502-l3A5Bk7waGM@public.gmane.org>
2010-12-21 16:48 ` Jeff Layton
2010-12-21 15:51 ` Suresh Jayaraman
2010-12-17 15:08 ` [PATCH 11/18] cifs: handle cancelled requests better Jeff Layton
2010-12-17 15:08 ` [PATCH 12/18] cifs: add cifs_call_async Jeff Layton
[not found] ` <1292598497-29796-13-git-send-email-jlayton-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2010-12-21 16:05 ` Suresh Jayaraman
2010-12-17 15:08 ` [PATCH 13/18] cifs: add ability to send an echo request Jeff Layton
[not found] ` <1292598497-29796-14-git-send-email-jlayton-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2010-12-21 16:05 ` Suresh Jayaraman
2010-12-17 15:08 ` [PATCH 14/18] cifs: set up recurring workqueue job to do SMB echo requests Jeff Layton
[not found] ` <1292598497-29796-15-git-send-email-jlayton-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2010-12-21 16:06 ` Suresh Jayaraman
2010-12-17 15:08 ` [PATCH 15/18] cifs: reconnect unresponsive servers Jeff Layton
[not found] ` <1292598497-29796-16-git-send-email-jlayton-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2010-12-23 10:31 ` Suresh Jayaraman
[not found] ` <4D1324EC.8010305-l3A5Bk7waGM@public.gmane.org>
2010-12-23 13:20 ` Jeff Layton
[not found] ` <20101223082005.347b8ca8-xSBYVWDuneFaJnirhKH9O4GKTjYczspe@public.gmane.org>
2010-12-23 15:36 ` Suresh Jayaraman [this message]
2010-12-17 15:08 ` [PATCH 16/18] cifs: remove code for setting timeouts on requests Jeff Layton
[not found] ` <1292598497-29796-17-git-send-email-jlayton-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2010-12-23 10:32 ` Suresh Jayaraman
2010-12-17 15:08 ` [PATCH 17/18] cifs: mangle existing header for SMB_COM_NT_CANCEL Jeff Layton
[not found] ` <1292598497-29796-18-git-send-email-jlayton-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2010-12-23 11:05 ` Suresh Jayaraman
2010-12-17 15:08 ` [PATCH 18/18] cifs: send an NT_CANCEL request when a process is signalled Jeff Layton
[not found] ` <1292598497-29796-19-git-send-email-jlayton-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2010-12-23 11:06 ` Suresh Jayaraman
-- strict thread matches above, loose matches on Subject: below --
2010-12-27 2:29 [PATCH 00/18] cifs: overhaul request timeout behavior in CIFS (try #4) Jeff Layton
[not found] ` <1293417006-6417-1-git-send-email-jlayton-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2010-12-27 2:30 ` [PATCH 15/18] cifs: reconnect unresponsive servers Jeff Layton
[not found] ` <1293417006-6417-16-git-send-email-jlayton-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2010-12-27 15:58 ` Pavel Shilovsky
2011-01-06 7:16 ` Suresh Jayaraman
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=4D136C90.2080208@suse.de \
--to=sjayaraman-l3a5bk7wagm@public.gmane.org \
--cc=jlayton-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
--cc=linux-cifs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=smfrench-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.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