public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Matthias Brugger <matthias.bgg@gmail.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [RFC] NFS issue when loading two files
Date: Wed, 05 Dec 2012 20:13:07 +0100	[thread overview]
Message-ID: <50BF9CC3.9020207@gmail.com> (raw)

Hi all,

I run into an NFS issue when trying to load two files from nfs for 
booting (uImage and device tree binary):

When I try to unmount after loading the first file, I get some timeouts 
from the host which will lead to a re-send of the message.
Eventually I get a response from the host, but with a smaller rpc_id, as 
rpc_id is incremented on every re-send as well. This leads in an abort 
of the boot procedure, although a valid answer was given from the host.

Incrementing the NFS_TIMEOUT or adding the board IP to /etc/hosts 
resolves the issue, but is nothing more as a workaround.

I digged into the NFS protocol implementation, but I'm not quite sure if:
1) we shouldn't increment the rpc_id when re-sending a command.
2) change NFS_TIMEOUT value dynamically
3) add a state "wait" when we get an answer with an rpc_id smaller the 
one we sent.

Especially 1) I think isn't a good idea, as we break the RPC mechanism 
(I suppose), and we run in other issues. When we unmount after 
successfully load the first file, the mount of the second file will most 
probably get as answer a reply from a fromaly re-sent unmount command, 
and the boot process stops as well. [1]

Any ideas, which would be the best solution for this problem?

Best regards,
Matthias Brugger

[1] the process looks like:
mount
read file
unmount (timed out) #1
unmount (timed out) #2
unmount
get response of #1
mount
get response of #2
error!

             reply	other threads:[~2012-12-05 19:13 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-12-05 19:13 Matthias Brugger [this message]
2012-12-05 22:20 ` [U-Boot] [RFC] NFS issue when loading two files Wolfgang Denk
2012-12-06  9:44   ` Matthias Brugger

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=50BF9CC3.9020207@gmail.com \
    --to=matthias.bgg@gmail.com \
    --cc=u-boot@lists.denx.de \
    /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