[PATCH 7/8] nfs: resend requests after timeout
Sascha Hauer
s.hauer at pengutronix.de
Thu Jun 24 05:35:07 EDT 2010
Signed-off-by: Sascha Hauer <s.hauer at pengutronix.de>
---
net/nfs.c | 12 +++++++-----
1 files changed, 7 insertions(+), 5 deletions(-)
diff --git a/net/nfs.c b/net/nfs.c
index bdf05bd..4ca1d6e 100644
--- a/net/nfs.c
+++ b/net/nfs.c
@@ -124,7 +124,7 @@ struct rpc_t {
} u;
};
-#define NFS_TIMEOUT 60
+#define NFS_TIMEOUT 1
static unsigned long rpc_id = 0;
static int nfs_offset = -1;
@@ -399,6 +399,8 @@ static void nfs_send(void)
nfs_readlink_req();
break;
}
+
+ nfs_timer_start = get_time_ns();
}
static int rpc_check_reply(unsigned char *pkt, int isnfs)
@@ -661,8 +663,6 @@ static void nfs_start(char *p)
printf("\nFilename '%s/%s'.\n", nfs_path, nfs_filename);
- nfs_timer_start = get_time_ns();
-
nfs_state = STATE_PRCLOOKUP_PROG_MOUNT_REQ;
nfs_send();
@@ -706,8 +706,10 @@ static int do_nfs(struct command *cmdtp, int argc, char *argv[])
break;
}
net_poll();
- if (is_timeout(nfs_timer_start, NFS_TIMEOUT * SECOND))
- break;
+ if (is_timeout(nfs_timer_start, NFS_TIMEOUT * SECOND)) {
+ show_progress(-1);
+ nfs_send();
+ }
}
net_unregister(nfs_con);
--
1.7.1
More information about the barebox
mailing list