mail archive of the barebox mailing list
 help / color / mirror / Atom feed
From: "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>
To: barebox@lists.infradead.org
Subject: [PATCH v2] fs: nfs: Start earlier to resend requests
Date: Fri, 11 Jun 2021 09:13:51 +0200	[thread overview]
Message-ID: <20210611071351.1445370-1-u.kleine-koenig@pengutronix.de> (raw)

On a customer site we're experience a bit over 1% UDP packet loss. When
wiresharking an NFS transfer of a kernel image (with the goal to boot
via NFS) I saw 64 of 2555 RPC calls staying unanswered. With the current
timeout setting each of them introduces a delay of 2 seconds and the
whole transfer takes 137s. With the timeout reduced to 0.1s the transfer
time is not optimal (going down to approx 15 seconds) but at least it
becomes bearable.

To still cope with a slow network (in contrast to an unreliable as
pictured above) increase NFS_MAX_RESEND to keep NFS_TIMEOUT *
NFS_MAX_RESEND (which defines the overall timeout before aborting the
transfer) constant.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
---
 fs/nfs.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/fs/nfs.c b/fs/nfs.c
index 1130632eb3eb..057641edc8c3 100644
--- a/fs/nfs.c
+++ b/fs/nfs.c
@@ -119,8 +119,8 @@ struct rpc_reply {
 	uint32_t data[0];
 };
 
-#define NFS_TIMEOUT	(2 * SECOND)
-#define NFS_MAX_RESEND	5
+#define NFS_TIMEOUT	(100 * MSECOND)
+#define NFS_MAX_RESEND	100
 
 struct nfs_fh {
 	unsigned short size;
-- 
2.30.2


_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

             reply	other threads:[~2021-06-11  7:15 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-06-11  7:13 Uwe Kleine-König [this message]
2021-06-11  8:52 ` Gavin Schenk
2021-06-11 11:13 ` Sascha Hauer

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=20210611071351.1445370-1-u.kleine-koenig@pengutronix.de \
    --to=u.kleine-koenig@pengutronix.de \
    --cc=barebox@lists.infradead.org \
    --subject='Re: [PATCH v2] fs: nfs: Start earlier to resend requests' \
    /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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox