Fix cifs bug in 2.6.35.13 with old Windows servers (#704125)
This commit is contained in:
parent
cc37b46764
commit
6047d0e750
|
@ -0,0 +1,33 @@
|
|||
From: Jeff Layton <jlayton@redhat.com>
|
||||
Date: Tue, 17 May 2011 10:40:30 +0000 (-0400)
|
||||
Subject: cifs: add fallback in is_path_accessible for old servers
|
||||
X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux-2.6.git;a=commitdiff_plain;h=221d1d797202984cb874e3ed9f1388593d34ee22
|
||||
|
||||
cifs: add fallback in is_path_accessible for old servers
|
||||
|
||||
The is_path_accessible check uses a QPathInfo call, which isn't
|
||||
supported by ancient win9x era servers. Fall back to an older
|
||||
SMBQueryInfo call if it fails with the magic error codes.
|
||||
|
||||
Cc: stable@kernel.org
|
||||
Reported-and-Tested-by: Sandro Bonazzola <sandro.bonazzola@gmail.com>
|
||||
Signed-off-by: Jeff Layton <jlayton@redhat.com>
|
||||
Signed-off-by: Steve French <sfrench@us.ibm.com>
|
||||
---
|
||||
|
||||
diff --git a/fs/cifs/connect.c b/fs/cifs/connect.c
|
||||
index 05f1dcf..277262a 100644
|
||||
--- a/fs/cifs/connect.c
|
||||
+++ b/fs/cifs/connect.c
|
||||
@@ -2673,6 +2673,11 @@ is_path_accessible(int xid, struct cifsTconInfo *tcon,
|
||||
0 /* not legacy */, cifs_sb->local_nls,
|
||||
cifs_sb->mnt_cifs_flags &
|
||||
CIFS_MOUNT_MAP_SPECIAL_CHR);
|
||||
+
|
||||
+ if (rc == -EOPNOTSUPP || rc == -EINVAL)
|
||||
+ rc = SMBQueryInformation(xid, tcon, full_path, pfile_info,
|
||||
+ cifs_sb->local_nls, cifs_sb->mnt_cifs_flags &
|
||||
+ CIFS_MOUNT_MAP_SPECIAL_CHR);
|
||||
kfree(pfile_info);
|
||||
return rc;
|
||||
}
|
11
kernel.spec
11
kernel.spec
|
@ -849,6 +849,9 @@ Patch13964: x86-amd-fix-another-erratum-400-bug.patch
|
|||
|
||||
Patch13969: scsi_dh_hp_sw-fix-deadlock-in-start_stop_endio.patch
|
||||
|
||||
# fix bug in 2.6.35.13 with old windows servers
|
||||
Patch13970: cifs-add-fallback-in-is_path_accessible-for-old-servers.patch
|
||||
|
||||
%endif
|
||||
|
||||
BuildRoot: %{_tmppath}/kernel-%{KVERREL}-root
|
||||
|
@ -1597,6 +1600,9 @@ ApplyPatch x86-amd-fix-another-erratum-400-bug.patch
|
|||
|
||||
ApplyPatch scsi_dh_hp_sw-fix-deadlock-in-start_stop_endio.patch
|
||||
|
||||
# fix bug in 2.6.35.13 with old windows servers
|
||||
ApplyPatch cifs-add-fallback-in-is_path_accessible-for-old-servers.patch
|
||||
|
||||
# END OF PATCH APPLICATIONS
|
||||
|
||||
%endif
|
||||
|
@ -2183,11 +2189,14 @@ fi
|
|||
# and build.
|
||||
|
||||
%changelog
|
||||
* Wed May 18 2011 Chuck Ebbert <cebbert@redhat.com> 2.6.35.13-92
|
||||
- Fix cifs bug in 2.6.35.13 with old Windows servers (#704125)
|
||||
|
||||
* Fri May 13 2011 Kyle McMartin <kmcmartin@redhat.com>
|
||||
- [fabbione@] Fix a deadlock when using hp_sw with an HP san.
|
||||
(7a1e9d82 upstream)
|
||||
|
||||
* Thu May 12 2011 Chuck Ebbert <cebbert@redhat.com> 2.6.35.13-92
|
||||
* Thu May 12 2011 Chuck Ebbert <cebbert@redhat.com>
|
||||
- Fix stalls on AMD machines with C1E caused by 2.6.35.13 (#704059)
|
||||
|
||||
* Tue May 03 2011 Chuck Ebbert <cebbert@redhat.com> 2.6.35.13-91
|
||||
|
|
Loading…
Reference in New Issue