Dear Wolfgang, The work flow is that: Every "timeout" is reached, it will call NfsSend() and whatever the state is finally it will call rpc_req() which will increase the rpc_id value every time. The rpc_id value is increased but the reply.id is not increased by "timeout". This makes the judgement statement: If (ntohl(rpc_pkt.u.reply.id) != rpc_id) is true and it will return -1. Then we got the error message: *** ERROR: Cannot mount.
So far, I am raising the timeout limit to avoid rpc_id being increased unexpectedly. Do you have any suggestion about this issue? Best Regards, Jin Qing -----Original Message----- From: Wolfgang Denk [mailto:w...@denx.de] Sent: 2010年8月16日 18:46 To: Li Yang-R58472 Cc: u-boot@lists.denx.de; Jin Qing-B24347 Subject: Re: [U-Boot] [PATCH] net: Change the NFS_TIMEOUT to 20s for using nfs load image. Dear Li Yang, In message <aanlkti=o6z1ebm1af94zp5-s6_3vf6ttp2vedhdzw...@mail.gmail.com> you wrote: > > >> #define NFS_RETRY_COUNT 30 > >> -#define NFS_TIMEOUT 2000UL > >> +#define NFS_TIMEOUT 20000UL > > > > You mean 30 retries (NFS_RETRY_COUNT) every two seconds were not > > sufficient in your case? > > > > That's a full minute... > > It didn't retry 30 times before it fails completely in our test: > > Load address: 0x400000 > Loading: T T T T T *** ERROR: Cannot mount T T *** ERROR: Cannot > umount > > Looks like the state machine is not working as expected? ...or something else is causing errors. I have never seen such behaviour yet. Please try and debug it. Simply raising the timeout limit seems the wrong approach to me. Best regards, Wolfgang Denk -- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: w...@denx.de When the bosses talk about improving productivity, they are never talking about themselves. _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot