diff options
author | Jeff Layton <jlayton@redhat.com> | 2011-12-01 20:22:41 -0500 |
---|---|---|
committer | Steve French <smfrench@gmail.com> | 2011-12-08 22:04:47 -0600 |
commit | 95edcff497b126a3f3e079e94b20fe2ca7e5a63d (patch) | |
tree | ef358cdf959bfa4641dd6b5a629e03da24bea109 /fs/cifs | |
parent | 59edb63ad08e4f3a9477223c9aaf3fba753085bf (diff) | |
download | op-kernel-dev-95edcff497b126a3f3e079e94b20fe2ca7e5a63d.zip op-kernel-dev-95edcff497b126a3f3e079e94b20fe2ca7e5a63d.tar.gz |
cifs: attempt to freeze while looping on a receive attempt
In the recent overhaul of the demultiplex thread receive path, I
neglected to ensure that we attempt to freeze on each pass through the
receive loop.
Reported-and-Tested-by: Woody Suwalski <terraluna977@gmail.com>
Reported-and-Tested-by: Adam Williamson <awilliam@redhat.com>
Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Steve French <smfrench@gmail.com>
Diffstat (limited to 'fs/cifs')
-rw-r--r-- | fs/cifs/connect.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/cifs/connect.c b/fs/cifs/connect.c index d6a972d..8cd4b52 100644 --- a/fs/cifs/connect.c +++ b/fs/cifs/connect.c @@ -441,6 +441,8 @@ cifs_readv_from_socket(struct TCP_Server_Info *server, struct kvec *iov_orig, smb_msg.msg_controllen = 0; for (total_read = 0; to_read; total_read += length, to_read -= length) { + try_to_freeze(); + if (server_unresponsive(server)) { total_read = -EAGAIN; break; |