diff options
-rw-r--r-- | fs/nfs.c | 7 |
1 files changed, 5 insertions, 2 deletions
@@ -450,14 +450,17 @@ again: nfs_timer_start = get_time_ns(); - nfs_state = STATE_START; + while (1) { + nfs_state = STATE_START; - while (nfs_state != STATE_DONE) { if (ctrlc()) return ERR_PTR(-EINTR); net_poll(); + if (nfs_state != STATE_DONE) + continue; + if (is_timeout(nfs_timer_start, NFS_TIMEOUT)) { tries++; if (tries == NFS_MAX_RESEND) |