[linux-cifs-client] Re: cifs time out

Steven French sfrench at us.ibm.com
Mon Feb 21 21:08:28 GMT 2005






> The current cifs version hangs badly if a
> session is disconnected by the server.
> This seems to be a time out problem.
> Of course it could be a problem specific
> to my MS 2003 server.

current as in version 1.29 of cifs (what is in the cifs bitkeeper tree and
in Andrew Morton's "mm" kernel) or current as in 2.6.10 Linux kernel
(version 1.28 of the cifs code).

Reconnection logic is nearly identical but it is possible reconnection will
behave slightly differently for each (1.28 vs. 1.29) since the error
handling in cifs_demultiplex_thread differs (version 1.29 has eliminated
the use of tcp peek of the header).  There was a very recent fix (three or
four days ago) to handle RFC1001 NACK properly (this only affected the mm
kernel and bk tree - not mainline - without this fix when.  You would
typically only see this when the Windows server was not started - and the
symptom was mount taking a few seconds longer to fail - it was caused
because reconnection logic would kick in for a five or 10 retries before
failing the mount since the length of the RFC1001 NACK was being checked
improperly - but this was not an issue in mainline kernel)

Remember to look at /proc/fs/cifs/DebugData to see the current state of
      - tcp session
      - smb session  (authenticated cifs session)
      - tree connection (mount to share)
and also which request(s) is currently pending.
Also check whether reconnection is occurring on port 445 or 139.

One additional idea to check - Windows 2003 has signing enabled typically -
if signing is enabled perhaps on some types of reconnection the count is
not reset to 0 by the client or if it is reset to 0 perhaps it is not
supposed to be set to 0 under some conditions.


Steve French
Senior Software Engineer
Linux Technology Center - IBM Austin
phone: 512-838-2294
email: sfrench at-sign us dot ibm dot com
-------------- next part --------------
HTML attachment scrubbed and removed


More information about the linux-cifs-client mailing list