diff options
author | Steve French <sfrench@us.ibm.com> | 2005-10-05 17:50:29 -0400 |
---|---|---|
committer | Steve French <sfrench@us.ibm.com> | 2005-10-05 17:50:29 -0400 |
commit | 37c0eb4677f733a773df6287b0f73f00274402e3 (patch) | |
tree | 29d6da2f609bdc22316b24aca866ad2ee2093959 /fs/cifs/transport.c | |
parent | 6148a742b2bd76abfe0c1fc50dd747cb9f28cd6b (diff) |
CIFS: implement cifs_writepages to perform multi-page I/O
Signed-off-by: Dave Kleikamp <shaggy@austin.ibm.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
Diffstat (limited to 'fs/cifs/transport.c')
-rw-r--r-- | fs/cifs/transport.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/fs/cifs/transport.c b/fs/cifs/transport.c index 64c712629f27..e104c1ad2da3 100644 --- a/fs/cifs/transport.c +++ b/fs/cifs/transport.c | |||
@@ -395,7 +395,7 @@ SendReceive2(const unsigned int xid, struct cifsSesInfo *ses, | |||
395 | if (long_op == -1) | 395 | if (long_op == -1) |
396 | goto cifs_no_response_exit2; | 396 | goto cifs_no_response_exit2; |
397 | else if (long_op == 2) /* writes past end of file can take loong time */ | 397 | else if (long_op == 2) /* writes past end of file can take loong time */ |
398 | timeout = 300 * HZ; | 398 | timeout = 180 * HZ; |
399 | else if (long_op == 1) | 399 | else if (long_op == 1) |
400 | timeout = 45 * HZ; /* should be greater than | 400 | timeout = 45 * HZ; /* should be greater than |
401 | servers oplock break timeout (about 43 seconds) */ | 401 | servers oplock break timeout (about 43 seconds) */ |
@@ -431,7 +431,8 @@ SendReceive2(const unsigned int xid, struct cifsSesInfo *ses, | |||
431 | spin_unlock(&GlobalMid_Lock); | 431 | spin_unlock(&GlobalMid_Lock); |
432 | receive_len = midQ->resp_buf->smb_buf_length; | 432 | receive_len = midQ->resp_buf->smb_buf_length; |
433 | } else { | 433 | } else { |
434 | cERROR(1,("No response buffer")); | 434 | cERROR(1,("No response to cmd %d mid %d", |
435 | midQ->command, midQ->mid)); | ||
435 | if(midQ->midState == MID_REQUEST_SUBMITTED) { | 436 | if(midQ->midState == MID_REQUEST_SUBMITTED) { |
436 | if(ses->server->tcpStatus == CifsExiting) | 437 | if(ses->server->tcpStatus == CifsExiting) |
437 | rc = -EHOSTDOWN; | 438 | rc = -EHOSTDOWN; |
@@ -646,7 +647,7 @@ SendReceive(const unsigned int xid, struct cifsSesInfo *ses, | |||
646 | if (long_op == -1) | 647 | if (long_op == -1) |
647 | goto cifs_no_response_exit; | 648 | goto cifs_no_response_exit; |
648 | else if (long_op == 2) /* writes past end of file can take loong time */ | 649 | else if (long_op == 2) /* writes past end of file can take loong time */ |
649 | timeout = 300 * HZ; | 650 | timeout = 180 * HZ; |
650 | else if (long_op == 1) | 651 | else if (long_op == 1) |
651 | timeout = 45 * HZ; /* should be greater than | 652 | timeout = 45 * HZ; /* should be greater than |
652 | servers oplock break timeout (about 43 seconds) */ | 653 | servers oplock break timeout (about 43 seconds) */ |
@@ -682,7 +683,8 @@ SendReceive(const unsigned int xid, struct cifsSesInfo *ses, | |||
682 | spin_unlock(&GlobalMid_Lock); | 683 | spin_unlock(&GlobalMid_Lock); |
683 | receive_len = midQ->resp_buf->smb_buf_length; | 684 | receive_len = midQ->resp_buf->smb_buf_length; |
684 | } else { | 685 | } else { |
685 | cERROR(1,("No response buffer")); | 686 | cERROR(1,("No response for cmd %d mid %d", |
687 | midQ->command, midQ->mid)); | ||
686 | if(midQ->midState == MID_REQUEST_SUBMITTED) { | 688 | if(midQ->midState == MID_REQUEST_SUBMITTED) { |
687 | if(ses->server->tcpStatus == CifsExiting) | 689 | if(ses->server->tcpStatus == CifsExiting) |
688 | rc = -EHOSTDOWN; | 690 | rc = -EHOSTDOWN; |