From: Federico Sauter Date: Tue, 17 Mar 2015 16:45:28 +0000 (+0100) Subject: CIFS: Fix race condition on RFC1002_NEGATIVE_SESSION_RESPONSE X-Git-Tag: omap-for-v4.2/wakeirq-drivers-v2^2~2^2~47^2 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4afe260bab50290a05e5732570329a530ed023f3;p=pandora-kernel.git CIFS: Fix race condition on RFC1002_NEGATIVE_SESSION_RESPONSE This patch fixes a race condition that occurs when connecting to a NT 3.51 host without specifying a NetBIOS name. In that case a RFC1002_NEGATIVE_SESSION_RESPONSE is received and the SMB negotiation is reattempted, but under some conditions it leads SendReceive() to hang forever while waiting for srv_mutex. This, in turn, sets the calling process to an uninterruptible sleep state and makes it unkillable. The solution is to unlock the srv_mutex acquired in the demux thread *before* going to sleep (after the reconnect error) and before reattempting the connection. --- Reading git-diff-tree failed