diff options
-rw-r--r-- | fs/cifs/CHANGES | 5 | ||||
-rw-r--r-- | fs/cifs/asn1.c | 10 | ||||
-rw-r--r-- | fs/cifs/cifssmb.c | 2 | ||||
-rw-r--r-- | fs/cifs/dir.c | 2 | ||||
-rw-r--r-- | fs/cifs/file.c | 18 | ||||
-rw-r--r-- | fs/cifs/inode.c | 24 | ||||
-rw-r--r-- | fs/cifs/link.c | 7 | ||||
-rw-r--r-- | fs/cifs/readdir.c | 2 | ||||
-rw-r--r-- | fs/cifs/transport.c | 3 |
9 files changed, 37 insertions, 36 deletions
diff --git a/fs/cifs/CHANGES b/fs/cifs/CHANGES index 7271bb0257f6..953d2f7f88b0 100644 --- a/fs/cifs/CHANGES +++ b/fs/cifs/CHANGES | |||
@@ -3,7 +3,10 @@ Version 1.43 | |||
3 | POSIX locking to servers which support CIFS POSIX Extensions | 3 | POSIX locking to servers which support CIFS POSIX Extensions |
4 | (disabled by default controlled by proc/fs/cifs/Experimental). | 4 | (disabled by default controlled by proc/fs/cifs/Experimental). |
5 | Handle conversion of long share names (especially Asian languages) | 5 | Handle conversion of long share names (especially Asian languages) |
6 | to Unicode during mount. | 6 | to Unicode during mount. Fix memory leak in sess struct on reconnect. |
7 | Fix rare oops after acpi suspend. Fix O_TRUNC opens to overwrite on | ||
8 | cifs open which helps rare case when setpathinfo fails or server does | ||
9 | not support it. | ||
7 | 10 | ||
8 | Version 1.42 | 11 | Version 1.42 |
9 | ------------ | 12 | ------------ |
diff --git a/fs/cifs/asn1.c b/fs/cifs/asn1.c index 086ae8f4a207..031cdf293256 100644 --- a/fs/cifs/asn1.c +++ b/fs/cifs/asn1.c | |||
@@ -467,7 +467,7 @@ decode_negTokenInit(unsigned char *security_blob, int length, | |||
467 | asn1_open(&ctx, security_blob, length); | 467 | asn1_open(&ctx, security_blob, length); |
468 | 468 | ||
469 | if (asn1_header_decode(&ctx, &end, &cls, &con, &tag) == 0) { | 469 | if (asn1_header_decode(&ctx, &end, &cls, &con, &tag) == 0) { |
470 | cFYI(1, ("Error decoding negTokenInit header ")); | 470 | cFYI(1, ("Error decoding negTokenInit header")); |
471 | return 0; | 471 | return 0; |
472 | } else if ((cls != ASN1_APL) || (con != ASN1_CON) | 472 | } else if ((cls != ASN1_APL) || (con != ASN1_CON) |
473 | || (tag != ASN1_EOC)) { | 473 | || (tag != ASN1_EOC)) { |
@@ -495,7 +495,7 @@ decode_negTokenInit(unsigned char *security_blob, int length, | |||
495 | } | 495 | } |
496 | 496 | ||
497 | if (asn1_header_decode(&ctx, &end, &cls, &con, &tag) == 0) { | 497 | if (asn1_header_decode(&ctx, &end, &cls, &con, &tag) == 0) { |
498 | cFYI(1, ("Error decoding negTokenInit ")); | 498 | cFYI(1, ("Error decoding negTokenInit")); |
499 | return 0; | 499 | return 0; |
500 | } else if ((cls != ASN1_CTX) || (con != ASN1_CON) | 500 | } else if ((cls != ASN1_CTX) || (con != ASN1_CON) |
501 | || (tag != ASN1_EOC)) { | 501 | || (tag != ASN1_EOC)) { |
@@ -505,7 +505,7 @@ decode_negTokenInit(unsigned char *security_blob, int length, | |||
505 | } | 505 | } |
506 | 506 | ||
507 | if (asn1_header_decode(&ctx, &end, &cls, &con, &tag) == 0) { | 507 | if (asn1_header_decode(&ctx, &end, &cls, &con, &tag) == 0) { |
508 | cFYI(1, ("Error decoding negTokenInit ")); | 508 | cFYI(1, ("Error decoding negTokenInit")); |
509 | return 0; | 509 | return 0; |
510 | } else if ((cls != ASN1_UNI) || (con != ASN1_CON) | 510 | } else if ((cls != ASN1_UNI) || (con != ASN1_CON) |
511 | || (tag != ASN1_SEQ)) { | 511 | || (tag != ASN1_SEQ)) { |
@@ -515,7 +515,7 @@ decode_negTokenInit(unsigned char *security_blob, int length, | |||
515 | } | 515 | } |
516 | 516 | ||
517 | if (asn1_header_decode(&ctx, &end, &cls, &con, &tag) == 0) { | 517 | if (asn1_header_decode(&ctx, &end, &cls, &con, &tag) == 0) { |
518 | cFYI(1, ("Error decoding 2nd part of negTokenInit ")); | 518 | cFYI(1, ("Error decoding 2nd part of negTokenInit")); |
519 | return 0; | 519 | return 0; |
520 | } else if ((cls != ASN1_CTX) || (con != ASN1_CON) | 520 | } else if ((cls != ASN1_CTX) || (con != ASN1_CON) |
521 | || (tag != ASN1_EOC)) { | 521 | || (tag != ASN1_EOC)) { |
@@ -527,7 +527,7 @@ decode_negTokenInit(unsigned char *security_blob, int length, | |||
527 | 527 | ||
528 | if (asn1_header_decode | 528 | if (asn1_header_decode |
529 | (&ctx, &sequence_end, &cls, &con, &tag) == 0) { | 529 | (&ctx, &sequence_end, &cls, &con, &tag) == 0) { |
530 | cFYI(1, ("Error decoding 2nd part of negTokenInit ")); | 530 | cFYI(1, ("Error decoding 2nd part of negTokenInit")); |
531 | return 0; | 531 | return 0; |
532 | } else if ((cls != ASN1_UNI) || (con != ASN1_CON) | 532 | } else if ((cls != ASN1_UNI) || (con != ASN1_CON) |
533 | || (tag != ASN1_SEQ)) { | 533 | || (tag != ASN1_SEQ)) { |
diff --git a/fs/cifs/cifssmb.c b/fs/cifs/cifssmb.c index 925881e00ff2..f00369277c06 100644 --- a/fs/cifs/cifssmb.c +++ b/fs/cifs/cifssmb.c | |||
@@ -2239,7 +2239,7 @@ CIFSSMBQueryReparseLinkInfo(const int xid, struct cifsTconInfo *tcon, | |||
2239 | } | 2239 | } |
2240 | symlinkinfo[buflen] = 0; /* just in case so the caller | 2240 | symlinkinfo[buflen] = 0; /* just in case so the caller |
2241 | does not go off the end of the buffer */ | 2241 | does not go off the end of the buffer */ |
2242 | cFYI(1,("readlink result - %s ",symlinkinfo)); | 2242 | cFYI(1,("readlink result - %s",symlinkinfo)); |
2243 | } | 2243 | } |
2244 | } | 2244 | } |
2245 | qreparse_out: | 2245 | qreparse_out: |
diff --git a/fs/cifs/dir.c b/fs/cifs/dir.c index 82315edc77d7..57bdf7f734bf 100644 --- a/fs/cifs/dir.c +++ b/fs/cifs/dir.c | |||
@@ -191,7 +191,7 @@ cifs_create(struct inode *inode, struct dentry *direntry, int mode, | |||
191 | cifs_sb->mnt_cifs_flags & CIFS_MOUNT_MAP_SPECIAL_CHR); | 191 | cifs_sb->mnt_cifs_flags & CIFS_MOUNT_MAP_SPECIAL_CHR); |
192 | } | 192 | } |
193 | if (rc) { | 193 | if (rc) { |
194 | cFYI(1, ("cifs_create returned 0x%x ", rc)); | 194 | cFYI(1, ("cifs_create returned 0x%x", rc)); |
195 | } else { | 195 | } else { |
196 | /* If Open reported that we actually created a file | 196 | /* If Open reported that we actually created a file |
197 | then we now have to set the mode if possible */ | 197 | then we now have to set the mode if possible */ |
diff --git a/fs/cifs/file.c b/fs/cifs/file.c index e2b4ce1dad66..379369ecda96 100644 --- a/fs/cifs/file.c +++ b/fs/cifs/file.c | |||
@@ -201,7 +201,7 @@ int cifs_open(struct inode *inode, struct file *file) | |||
201 | } else { | 201 | } else { |
202 | if (file->f_flags & O_EXCL) | 202 | if (file->f_flags & O_EXCL) |
203 | cERROR(1, ("could not find file instance for " | 203 | cERROR(1, ("could not find file instance for " |
204 | "new file %p ", file)); | 204 | "new file %p", file)); |
205 | } | 205 | } |
206 | } | 206 | } |
207 | 207 | ||
@@ -272,7 +272,7 @@ int cifs_open(struct inode *inode, struct file *file) | |||
272 | & CIFS_MOUNT_MAP_SPECIAL_CHR); | 272 | & CIFS_MOUNT_MAP_SPECIAL_CHR); |
273 | } | 273 | } |
274 | if (rc) { | 274 | if (rc) { |
275 | cFYI(1, ("cifs_open returned 0x%x ", rc)); | 275 | cFYI(1, ("cifs_open returned 0x%x", rc)); |
276 | goto out; | 276 | goto out; |
277 | } | 277 | } |
278 | file->private_data = | 278 | file->private_data = |
@@ -409,8 +409,8 @@ static int cifs_reopen_file(struct inode *inode, struct file *file, | |||
409 | CIFS_MOUNT_MAP_SPECIAL_CHR); | 409 | CIFS_MOUNT_MAP_SPECIAL_CHR); |
410 | if (rc) { | 410 | if (rc) { |
411 | up(&pCifsFile->fh_sem); | 411 | up(&pCifsFile->fh_sem); |
412 | cFYI(1, ("cifs_open returned 0x%x ", rc)); | 412 | cFYI(1, ("cifs_open returned 0x%x", rc)); |
413 | cFYI(1, ("oplock: %d ", oplock)); | 413 | cFYI(1, ("oplock: %d", oplock)); |
414 | } else { | 414 | } else { |
415 | pCifsFile->netfid = netfid; | 415 | pCifsFile->netfid = netfid; |
416 | pCifsFile->invalidHandle = FALSE; | 416 | pCifsFile->invalidHandle = FALSE; |
@@ -531,7 +531,7 @@ int cifs_closedir(struct inode *inode, struct file *file) | |||
531 | (struct cifsFileInfo *)file->private_data; | 531 | (struct cifsFileInfo *)file->private_data; |
532 | char *ptmp; | 532 | char *ptmp; |
533 | 533 | ||
534 | cFYI(1, ("Closedir inode = 0x%p with ", inode)); | 534 | cFYI(1, ("Closedir inode = 0x%p", inode)); |
535 | 535 | ||
536 | xid = GetXid(); | 536 | xid = GetXid(); |
537 | 537 | ||
@@ -605,7 +605,7 @@ int cifs_lock(struct file *file, int cmd, struct file_lock *pfLock) | |||
605 | } | 605 | } |
606 | if (pfLock->fl_flags & FL_ACCESS) | 606 | if (pfLock->fl_flags & FL_ACCESS) |
607 | cFYI(1, ("Process suspended by mandatory locking - " | 607 | cFYI(1, ("Process suspended by mandatory locking - " |
608 | "not implemented yet ")); | 608 | "not implemented yet")); |
609 | if (pfLock->fl_flags & FL_LEASE) | 609 | if (pfLock->fl_flags & FL_LEASE) |
610 | cFYI(1, ("Lease on file - not implemented yet")); | 610 | cFYI(1, ("Lease on file - not implemented yet")); |
611 | if (pfLock->fl_flags & | 611 | if (pfLock->fl_flags & |
@@ -1377,7 +1377,7 @@ int cifs_fsync(struct file *file, struct dentry *dentry, int datasync) | |||
1377 | 1377 | ||
1378 | xid = GetXid(); | 1378 | xid = GetXid(); |
1379 | 1379 | ||
1380 | cFYI(1, ("Sync file - name: %s datasync: 0x%x ", | 1380 | cFYI(1, ("Sync file - name: %s datasync: 0x%x", |
1381 | dentry->d_name.name, datasync)); | 1381 | dentry->d_name.name, datasync)); |
1382 | 1382 | ||
1383 | rc = filemap_fdatawrite(inode->i_mapping); | 1383 | rc = filemap_fdatawrite(inode->i_mapping); |
@@ -1406,7 +1406,7 @@ int cifs_fsync(struct file *file, struct dentry *dentry, int datasync) | |||
1406 | /* fill in rpages then | 1406 | /* fill in rpages then |
1407 | result = cifs_pagein_inode(inode, index, rpages); */ /* BB finish */ | 1407 | result = cifs_pagein_inode(inode, index, rpages); */ /* BB finish */ |
1408 | 1408 | ||
1409 | /* cFYI(1, ("rpages is %d for sync page of Index %ld ", rpages, index)); | 1409 | /* cFYI(1, ("rpages is %d for sync page of Index %ld", rpages, index)); |
1410 | 1410 | ||
1411 | #if 0 | 1411 | #if 0 |
1412 | if (rc < 0) | 1412 | if (rc < 0) |
@@ -1838,7 +1838,7 @@ static int cifs_readpage_worker(struct file *file, struct page *page, | |||
1838 | if (rc < 0) | 1838 | if (rc < 0) |
1839 | goto io_error; | 1839 | goto io_error; |
1840 | else | 1840 | else |
1841 | cFYI(1, ("Bytes read %d ",rc)); | 1841 | cFYI(1, ("Bytes read %d",rc)); |
1842 | 1842 | ||
1843 | file->f_dentry->d_inode->i_atime = | 1843 | file->f_dentry->d_inode->i_atime = |
1844 | current_fs_time(file->f_dentry->d_inode->i_sb); | 1844 | current_fs_time(file->f_dentry->d_inode->i_sb); |
diff --git a/fs/cifs/inode.c b/fs/cifs/inode.c index 4093764ef461..77a9e2f912fd 100644 --- a/fs/cifs/inode.c +++ b/fs/cifs/inode.c | |||
@@ -41,7 +41,7 @@ int cifs_get_inode_info_unix(struct inode **pinode, | |||
41 | char *tmp_path; | 41 | char *tmp_path; |
42 | 42 | ||
43 | pTcon = cifs_sb->tcon; | 43 | pTcon = cifs_sb->tcon; |
44 | cFYI(1, ("Getting info on %s ", search_path)); | 44 | cFYI(1, ("Getting info on %s", search_path)); |
45 | /* could have done a find first instead but this returns more info */ | 45 | /* could have done a find first instead but this returns more info */ |
46 | rc = CIFSSMBUnixQPathInfo(xid, pTcon, search_path, &findData, | 46 | rc = CIFSSMBUnixQPathInfo(xid, pTcon, search_path, &findData, |
47 | cifs_sb->local_nls, cifs_sb->mnt_cifs_flags & | 47 | cifs_sb->local_nls, cifs_sb->mnt_cifs_flags & |
@@ -97,9 +97,9 @@ int cifs_get_inode_info_unix(struct inode **pinode, | |||
97 | inode = *pinode; | 97 | inode = *pinode; |
98 | cifsInfo = CIFS_I(inode); | 98 | cifsInfo = CIFS_I(inode); |
99 | 99 | ||
100 | cFYI(1, ("Old time %ld ", cifsInfo->time)); | 100 | cFYI(1, ("Old time %ld", cifsInfo->time)); |
101 | cifsInfo->time = jiffies; | 101 | cifsInfo->time = jiffies; |
102 | cFYI(1, ("New time %ld ", cifsInfo->time)); | 102 | cFYI(1, ("New time %ld", cifsInfo->time)); |
103 | /* this is ok to set on every inode revalidate */ | 103 | /* this is ok to set on every inode revalidate */ |
104 | atomic_set(&cifsInfo->inUse,1); | 104 | atomic_set(&cifsInfo->inUse,1); |
105 | 105 | ||
@@ -421,23 +421,23 @@ int cifs_get_inode_info(struct inode **pinode, | |||
421 | inode = *pinode; | 421 | inode = *pinode; |
422 | cifsInfo = CIFS_I(inode); | 422 | cifsInfo = CIFS_I(inode); |
423 | cifsInfo->cifsAttrs = attr; | 423 | cifsInfo->cifsAttrs = attr; |
424 | cFYI(1, ("Old time %ld ", cifsInfo->time)); | 424 | cFYI(1, ("Old time %ld", cifsInfo->time)); |
425 | cifsInfo->time = jiffies; | 425 | cifsInfo->time = jiffies; |
426 | cFYI(1, ("New time %ld ", cifsInfo->time)); | 426 | cFYI(1, ("New time %ld", cifsInfo->time)); |
427 | 427 | ||
428 | /* blksize needs to be multiple of two. So safer to default to | 428 | /* blksize needs to be multiple of two. So safer to default to |
429 | blksize and blkbits set in superblock so 2**blkbits and blksize | 429 | blksize and blkbits set in superblock so 2**blkbits and blksize |
430 | will match rather than setting to: | 430 | will match rather than setting to: |
431 | (pTcon->ses->server->maxBuf - MAX_CIFS_HDR_SIZE) & 0xFFFFFE00;*/ | 431 | (pTcon->ses->server->maxBuf - MAX_CIFS_HDR_SIZE) & 0xFFFFFE00;*/ |
432 | 432 | ||
433 | /* Linux can not store file creation time unfortunately so we ignore it */ | 433 | /* Linux can not store file creation time so ignore it */ |
434 | inode->i_atime = | 434 | inode->i_atime = |
435 | cifs_NTtimeToUnix(le64_to_cpu(pfindData->LastAccessTime)); | 435 | cifs_NTtimeToUnix(le64_to_cpu(pfindData->LastAccessTime)); |
436 | inode->i_mtime = | 436 | inode->i_mtime = |
437 | cifs_NTtimeToUnix(le64_to_cpu(pfindData->LastWriteTime)); | 437 | cifs_NTtimeToUnix(le64_to_cpu(pfindData->LastWriteTime)); |
438 | inode->i_ctime = | 438 | inode->i_ctime = |
439 | cifs_NTtimeToUnix(le64_to_cpu(pfindData->ChangeTime)); | 439 | cifs_NTtimeToUnix(le64_to_cpu(pfindData->ChangeTime)); |
440 | cFYI(0, ("Attributes came in as 0x%x ", attr)); | 440 | cFYI(0, ("Attributes came in as 0x%x", attr)); |
441 | 441 | ||
442 | /* set default mode. will override for dirs below */ | 442 | /* set default mode. will override for dirs below */ |
443 | if (atomic_read(&cifsInfo->inUse) == 0) | 443 | if (atomic_read(&cifsInfo->inUse) == 0) |
@@ -731,7 +731,7 @@ int cifs_mkdir(struct inode *inode, struct dentry *direntry, int mode) | |||
731 | rc = CIFSSMBMkDir(xid, pTcon, full_path, cifs_sb->local_nls, | 731 | rc = CIFSSMBMkDir(xid, pTcon, full_path, cifs_sb->local_nls, |
732 | cifs_sb->mnt_cifs_flags & CIFS_MOUNT_MAP_SPECIAL_CHR); | 732 | cifs_sb->mnt_cifs_flags & CIFS_MOUNT_MAP_SPECIAL_CHR); |
733 | if (rc) { | 733 | if (rc) { |
734 | cFYI(1, ("cifs_mkdir returned 0x%x ", rc)); | 734 | cFYI(1, ("cifs_mkdir returned 0x%x", rc)); |
735 | d_drop(direntry); | 735 | d_drop(direntry); |
736 | } else { | 736 | } else { |
737 | inode->i_nlink++; | 737 | inode->i_nlink++; |
@@ -798,7 +798,7 @@ int cifs_rmdir(struct inode *inode, struct dentry *direntry) | |||
798 | char *full_path = NULL; | 798 | char *full_path = NULL; |
799 | struct cifsInodeInfo *cifsInode; | 799 | struct cifsInodeInfo *cifsInode; |
800 | 800 | ||
801 | cFYI(1, ("cifs_rmdir, inode = 0x%p with ", inode)); | 801 | cFYI(1, ("cifs_rmdir, inode = 0x%p", inode)); |
802 | 802 | ||
803 | xid = GetXid(); | 803 | xid = GetXid(); |
804 | 804 | ||
@@ -1121,7 +1121,7 @@ int cifs_setattr(struct dentry *direntry, struct iattr *attrs) | |||
1121 | 1121 | ||
1122 | xid = GetXid(); | 1122 | xid = GetXid(); |
1123 | 1123 | ||
1124 | cFYI(1, ("In cifs_setattr, name = %s attrs->iavalid 0x%x ", | 1124 | cFYI(1, ("In cifs_setattr, name = %s attrs->iavalid 0x%x", |
1125 | direntry->d_name.name, attrs->ia_valid)); | 1125 | direntry->d_name.name, attrs->ia_valid)); |
1126 | 1126 | ||
1127 | cifs_sb = CIFS_SB(direntry->d_inode->i_sb); | 1127 | cifs_sb = CIFS_SB(direntry->d_inode->i_sb); |
@@ -1289,7 +1289,7 @@ int cifs_setattr(struct dentry *direntry, struct iattr *attrs) | |||
1289 | it may be useful to Windows - but we do | 1289 | it may be useful to Windows - but we do |
1290 | not want to set ctime unless some other | 1290 | not want to set ctime unless some other |
1291 | timestamp is changing */ | 1291 | timestamp is changing */ |
1292 | cFYI(1, ("CIFS - CTIME changed ")); | 1292 | cFYI(1, ("CIFS - CTIME changed")); |
1293 | time_buf.ChangeTime = | 1293 | time_buf.ChangeTime = |
1294 | cpu_to_le64(cifs_UnixTimeToNT(attrs->ia_ctime)); | 1294 | cpu_to_le64(cifs_UnixTimeToNT(attrs->ia_ctime)); |
1295 | } else | 1295 | } else |
@@ -1356,7 +1356,7 @@ cifs_setattr_exit: | |||
1356 | 1356 | ||
1357 | void cifs_delete_inode(struct inode *inode) | 1357 | void cifs_delete_inode(struct inode *inode) |
1358 | { | 1358 | { |
1359 | cFYI(1, ("In cifs_delete_inode, inode = 0x%p ", inode)); | 1359 | cFYI(1, ("In cifs_delete_inode, inode = 0x%p", inode)); |
1360 | /* may have to add back in if and when safe distributed caching of | 1360 | /* may have to add back in if and when safe distributed caching of |
1361 | directories added e.g. via FindNotify */ | 1361 | directories added e.g. via FindNotify */ |
1362 | } | 1362 | } |
diff --git a/fs/cifs/link.c b/fs/cifs/link.c index 2ec99f833142..a57f5d6e6213 100644 --- a/fs/cifs/link.c +++ b/fs/cifs/link.c | |||
@@ -167,7 +167,7 @@ cifs_symlink(struct inode *inode, struct dentry *direntry, const char *symname) | |||
167 | return -ENOMEM; | 167 | return -ENOMEM; |
168 | } | 168 | } |
169 | 169 | ||
170 | cFYI(1, ("Full path: %s ", full_path)); | 170 | cFYI(1, ("Full path: %s", full_path)); |
171 | cFYI(1, ("symname is %s", symname)); | 171 | cFYI(1, ("symname is %s", symname)); |
172 | 172 | ||
173 | /* BB what if DFS and this volume is on different share? BB */ | 173 | /* BB what if DFS and this volume is on different share? BB */ |
@@ -186,8 +186,7 @@ cifs_symlink(struct inode *inode, struct dentry *direntry, const char *symname) | |||
186 | inode->i_sb,xid); | 186 | inode->i_sb,xid); |
187 | 187 | ||
188 | if (rc != 0) { | 188 | if (rc != 0) { |
189 | cFYI(1, | 189 | cFYI(1, ("Create symlink ok, getinodeinfo fail rc = %d", |
190 | ("Create symlink worked but get_inode_info failed with rc = %d ", | ||
191 | rc)); | 190 | rc)); |
192 | } else { | 191 | } else { |
193 | if (pTcon->nocase) | 192 | if (pTcon->nocase) |
@@ -289,7 +288,7 @@ cifs_readlink(struct dentry *direntry, char __user *pBuffer, int buflen) | |||
289 | else { | 288 | else { |
290 | cFYI(1,("num referral: %d",num_referrals)); | 289 | cFYI(1,("num referral: %d",num_referrals)); |
291 | if(referrals) { | 290 | if(referrals) { |
292 | cFYI(1,("referral string: %s ",referrals)); | 291 | cFYI(1,("referral string: %s",referrals)); |
293 | strncpy(tmpbuffer, referrals, len-1); | 292 | strncpy(tmpbuffer, referrals, len-1); |
294 | } | 293 | } |
295 | } | 294 | } |
diff --git a/fs/cifs/readdir.c b/fs/cifs/readdir.c index b689c5035124..6b36c43d38f5 100644 --- a/fs/cifs/readdir.c +++ b/fs/cifs/readdir.c | |||
@@ -909,7 +909,7 @@ int cifs_readdir(struct file *file, void *direntry, filldir_t filldir) | |||
909 | case 1: | 909 | case 1: |
910 | if (filldir(direntry, "..", 2, file->f_pos, | 910 | if (filldir(direntry, "..", 2, file->f_pos, |
911 | file->f_dentry->d_parent->d_inode->i_ino, DT_DIR) < 0) { | 911 | file->f_dentry->d_parent->d_inode->i_ino, DT_DIR) < 0) { |
912 | cERROR(1, ("Filldir for parent dir failed ")); | 912 | cERROR(1, ("Filldir for parent dir failed")); |
913 | rc = -ENOMEM; | 913 | rc = -ENOMEM; |
914 | break; | 914 | break; |
915 | } | 915 | } |
diff --git a/fs/cifs/transport.c b/fs/cifs/transport.c index 3da80409466c..17ba329e2b3d 100644 --- a/fs/cifs/transport.c +++ b/fs/cifs/transport.c | |||
@@ -654,8 +654,7 @@ SendReceive(const unsigned int xid, struct cifsSesInfo *ses, | |||
654 | 654 | ||
655 | if (in_buf->smb_buf_length > CIFSMaxBufSize + MAX_CIFS_HDR_SIZE - 4) { | 655 | if (in_buf->smb_buf_length > CIFSMaxBufSize + MAX_CIFS_HDR_SIZE - 4) { |
656 | up(&ses->server->tcpSem); | 656 | up(&ses->server->tcpSem); |
657 | cERROR(1, | 657 | cERROR(1, ("Illegal length, greater than maximum frame, %d", |
658 | ("Illegal length, greater than maximum frame, %d ", | ||
659 | in_buf->smb_buf_length)); | 658 | in_buf->smb_buf_length)); |
660 | DeleteMidQEntry(midQ); | 659 | DeleteMidQEntry(midQ); |
661 | /* If not lock req, update # of requests on wire to server */ | 660 | /* If not lock req, update # of requests on wire to server */ |