Matt, you are a tenacious, fearsome bug hunter!

Matt

Matthew Dillon wrote:
> 
>     Here's a general update on this bug report to -current.  It took all day
>     but I was finally able to reproduce Andrew's bug.
> 
>     You guys are going to *love* this.
> 
>     NFS uses the kernel 'boottime' structure to generate its version id.
>     Now normally you might believe that this structure, once set, will
>     never change.  The authors of NFS certainly make that assumption!
> 
>     No such luck.  If you happen to be running, oh, xntpd for example,
>     the kernel adjusts the boottime structure to take into account time
>     changes, including PLL changes so, in fact, the boottime structure
>     can change quite often - once each tick, in fact.
> 
>     Now, the effect of boottime changing on NFS is rather drastic.  You
>     see, the version id controls whether NFS clients must reset their
>     state machines for NFS data writes.  If a client has done a stage 1
>     write and is ready to do the stage 2 commit, and the version id
>     changes, the client must revert back to stage 1.
> 
>     And so Andrews bug report comes into the light!   His poor client
>     (and mine once I reproduced the bug) got into a state, due to the
>     server returning a different version id for virtually every packet,
>     where it resent the same write data over the network over and over
>     and over and over and over again.
> 
>     I think recent changes to the way the kernel clocks work in -current
>     brought the bug out into the open, but it's definitely a problem in
>     both -stable and -current.
> 
>     Doh!  I gotta say that if I hadn't happened to have been running xntpd
>     on my test box I would have *never* figured it out.
> 
>                                                 -Matt
> 
> To Unsubscribe: send mail to [EMAIL PROTECTED]
> with "unsubscribe freebsd-current" in the body of the message


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to