From mboxrd@z Thu Jan 1 00:00:00 1970 From: Matthias Brugger Date: Wed, 05 Dec 2012 20:13:07 +0100 Subject: [U-Boot] [RFC] NFS issue when loading two files Message-ID: <50BF9CC3.9020207@gmail.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de 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!