Change the xid for client side krpc over UDP to a global value. Without this patch, the xid used for the client side krpc requests over UDP …
Show more
Change the xid for client side krpc over UDP to a global value.Without this patch, the xid used for the client side krpc requests overUDP was initialized for each "connection". A "connection" for UDP israther sketchy and for the kernel NLM a new one is created every 2minutes.A problem with client side interoperability with a Netapp server for the NLMwas reported and it is believed to be caused by reuse of the same xid.Although this was never completely diagnosed by the reporter, I could seehow the same xid might get reused, since it is initialized to a valuebased on the TOD clock every two minutes.I suspect initializing the value for every "connection" was inherited fromuserland library code, where having a global xid was not practical.However, implementing a global "xid" for the kernel rpc is straightforwardand will ensure that an xid value is not reused for a long time. Thispatch does that and is hoped it will fix the Netapp interoperabilityproblem.Obtained from: FreeBSD
Show less