diff options
Diffstat (limited to 'fs/cifs/cifssmb.c')
-rw-r--r-- | fs/cifs/cifssmb.c | 33 |
1 files changed, 22 insertions, 11 deletions
diff --git a/fs/cifs/cifssmb.c b/fs/cifs/cifssmb.c index b339f5f128da..a6ff406ac6b4 100644 --- a/fs/cifs/cifssmb.c +++ b/fs/cifs/cifssmb.c | |||
@@ -132,10 +132,13 @@ small_smb_init(int smb_command, int wct, struct cifsTconInfo *tcon, | |||
132 | /* Give Demultiplex thread up to 10 seconds to | 132 | /* Give Demultiplex thread up to 10 seconds to |
133 | reconnect, should be greater than cifs socket | 133 | reconnect, should be greater than cifs socket |
134 | timeout which is 7 seconds */ | 134 | timeout which is 7 seconds */ |
135 | while(tcon->ses->server->tcpStatus == CifsNeedReconnect) { | 135 | while(tcon->ses->server->tcpStatus == |
136 | CifsNeedReconnect) { | ||
136 | wait_event_interruptible_timeout(tcon->ses->server->response_q, | 137 | wait_event_interruptible_timeout(tcon->ses->server->response_q, |
137 | (tcon->ses->server->tcpStatus == CifsGood), 10 * HZ); | 138 | (tcon->ses->server->tcpStatus == |
138 | if (tcon->ses->server->tcpStatus == CifsNeedReconnect) { | 139 | CifsGood), 10 * HZ); |
140 | if (tcon->ses->server->tcpStatus == | ||
141 | CifsNeedReconnect) { | ||
139 | /* on "soft" mounts we wait once */ | 142 | /* on "soft" mounts we wait once */ |
140 | if ((tcon->retry == FALSE) || | 143 | if ((tcon->retry == FALSE) || |
141 | (tcon->ses->status == CifsExiting)) { | 144 | (tcon->ses->status == CifsExiting)) { |
@@ -209,7 +212,8 @@ small_smb_init(int smb_command, int wct, struct cifsTconInfo *tcon, | |||
209 | return -ENOMEM; | 212 | return -ENOMEM; |
210 | } | 213 | } |
211 | 214 | ||
212 | header_assemble((struct smb_hdr *) *request_buf, smb_command, tcon,wct); | 215 | header_assemble((struct smb_hdr *) *request_buf, smb_command, |
216 | tcon,wct); | ||
213 | 217 | ||
214 | if (tcon != NULL) | 218 | if (tcon != NULL) |
215 | cifs_stats_inc(&tcon->num_smbs_sent); | 219 | cifs_stats_inc(&tcon->num_smbs_sent); |
@@ -274,9 +278,11 @@ smb_init(int smb_command, int wct, struct cifsTconInfo *tcon, | |||
274 | /* Give Demultiplex thread up to 10 seconds to | 278 | /* Give Demultiplex thread up to 10 seconds to |
275 | reconnect, should be greater than cifs socket | 279 | reconnect, should be greater than cifs socket |
276 | timeout which is 7 seconds */ | 280 | timeout which is 7 seconds */ |
277 | while(tcon->ses->server->tcpStatus == CifsNeedReconnect) { | 281 | while (tcon->ses->server->tcpStatus == |
282 | CifsNeedReconnect) { | ||
278 | wait_event_interruptible_timeout(tcon->ses->server->response_q, | 283 | wait_event_interruptible_timeout(tcon->ses->server->response_q, |
279 | (tcon->ses->server->tcpStatus == CifsGood), 10 * HZ); | 284 | (tcon->ses->server->tcpStatus == |
285 | CifsGood), 10 * HZ); | ||
280 | if (tcon->ses->server->tcpStatus == | 286 | if (tcon->ses->server->tcpStatus == |
281 | CifsNeedReconnect) { | 287 | CifsNeedReconnect) { |
282 | /* on "soft" mounts we wait once */ | 288 | /* on "soft" mounts we wait once */ |
@@ -381,7 +387,8 @@ static int validate_t2(struct smb_t2_rsp *pSMB) | |||
381 | /* check that bcc is less than negotiated smb buffer */ | 387 | /* check that bcc is less than negotiated smb buffer */ |
382 | total_size = le16_to_cpu(pSMB->t2_rsp.ParameterCount); | 388 | total_size = le16_to_cpu(pSMB->t2_rsp.ParameterCount); |
383 | if (total_size < 512) { | 389 | if (total_size < 512) { |
384 | total_size+=le16_to_cpu(pSMB->t2_rsp.DataCount); | 390 | total_size += |
391 | le16_to_cpu(pSMB->t2_rsp.DataCount); | ||
385 | /* BCC le converted in SendReceive */ | 392 | /* BCC le converted in SendReceive */ |
386 | pBCC = (pSMB->hdr.WordCount * 2) + | 393 | pBCC = (pSMB->hdr.WordCount * 2) + |
387 | sizeof(struct smb_hdr) + | 394 | sizeof(struct smb_hdr) + |
@@ -2608,7 +2615,7 @@ CIFSSMBQueryReparseLinkInfo(const int xid, struct cifsTconInfo *tcon, | |||
2608 | reparse_buf->TargetNameOffset + | 2615 | reparse_buf->TargetNameOffset + |
2609 | reparse_buf->TargetNameLen) > | 2616 | reparse_buf->TargetNameLen) > |
2610 | end_of_smb) { | 2617 | end_of_smb) { |
2611 | cFYI(1,("reparse buf extended beyond SMB")); | 2618 | cFYI(1,("reparse buf goes beyond SMB")); |
2612 | rc = -EIO; | 2619 | rc = -EIO; |
2613 | goto qreparse_out; | 2620 | goto qreparse_out; |
2614 | } | 2621 | } |
@@ -2632,7 +2639,8 @@ CIFSSMBQueryReparseLinkInfo(const int xid, struct cifsTconInfo *tcon, | |||
2632 | } | 2639 | } |
2633 | } else { | 2640 | } else { |
2634 | rc = -EIO; | 2641 | rc = -EIO; |
2635 | cFYI(1,("Invalid return data count on get reparse info ioctl")); | 2642 | cFYI(1, ("Invalid return data count on " |
2643 | "get reparse info ioctl")); | ||
2636 | } | 2644 | } |
2637 | symlinkinfo[buflen] = 0; /* just in case so the caller | 2645 | symlinkinfo[buflen] = 0; /* just in case so the caller |
2638 | does not go off the end of the buffer */ | 2646 | does not go off the end of the buffer */ |
@@ -2750,7 +2758,8 @@ static __u16 ACL_to_cifs_posix(char *parm_data, const char *pACL, | |||
2750 | return 0; | 2758 | return 0; |
2751 | 2759 | ||
2752 | count = posix_acl_xattr_count((size_t)buflen); | 2760 | count = posix_acl_xattr_count((size_t)buflen); |
2753 | cFYI(1,("setting acl with %d entries from buf of length %d and version of %d", | 2761 | cFYI(1,("setting acl with %d entries from buf of length %d and " |
2762 | "version of %d", | ||
2754 | count, buflen, le32_to_cpu(local_acl->a_version))); | 2763 | count, buflen, le32_to_cpu(local_acl->a_version))); |
2755 | if (le32_to_cpu(local_acl->a_version) != 2) { | 2764 | if (le32_to_cpu(local_acl->a_version) != 2) { |
2756 | cFYI(1, ("unknown POSIX ACL version %d", | 2765 | cFYI(1, ("unknown POSIX ACL version %d", |
@@ -3957,7 +3966,9 @@ getDFSRetry: | |||
3957 | (8 /* sizeof start of data block */ + | 3966 | (8 /* sizeof start of data block */ + |
3958 | data_offset + | 3967 | data_offset + |
3959 | (char *) &pSMBr->hdr.Protocol); | 3968 | (char *) &pSMBr->hdr.Protocol); |
3960 | cFYI(1,("num_referrals: %d dfs flags: 0x%x ... \nfor referral one refer size: 0x%x srv type: 0x%x refer flags: 0x%x ttl: 0x%x", | 3969 | cFYI(1,("num_referrals: %d dfs flags: 0x%x ... \n" |
3970 | "for referral one refer size: 0x%x srv " | ||
3971 | "type: 0x%x refer flags: 0x%x ttl: 0x%x", | ||
3961 | le16_to_cpu(pSMBr->NumberOfReferrals), | 3972 | le16_to_cpu(pSMBr->NumberOfReferrals), |
3962 | le16_to_cpu(pSMBr->DFSFlags), | 3973 | le16_to_cpu(pSMBr->DFSFlags), |
3963 | le16_to_cpu(referrals->ReferralSize), | 3974 | le16_to_cpu(referrals->ReferralSize), |