Browse Source

[CIFS] Enable mmap on forcedirectio mounts

openoffice and gedit failed with 'direct' options

Signed-off-by: Pavel Shilovsky <piastryyy@gmail.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
Steve French 15 years ago
parent
commit
a994b8fa66
2 changed files with 5 additions and 2 deletions
  1. 3 1
      fs/cifs/CHANGES
  2. 2 1
      fs/cifs/cifsfs.c

+ 3 - 1
fs/cifs/CHANGES

@@ -5,7 +5,9 @@ have duplicated data). Fix oops in cifs_lookup. Workaround problem
 mounting to OS/400 Netserve. Fix oops in cifs_get_tcp_session.
 mounting to OS/400 Netserve. Fix oops in cifs_get_tcp_session.
 Disable use of server inode numbers when server only
 Disable use of server inode numbers when server only
 partially supports them (e.g. for one server querying inode numbers on
 partially supports them (e.g. for one server querying inode numbers on
-FindFirst fails but QPathInfo queries works).
+FindFirst fails but QPathInfo queries works). Fix oops with dfs in 
+cifs_put_smb_ses. Fix mmap to work on directio mounts (needed
+for OpenOffice when on forcedirectio mount e.g.)
 
 
 Version 1.60
 Version 1.60
 -------------
 -------------

+ 2 - 1
fs/cifs/cifsfs.c

@@ -758,7 +758,7 @@ const struct file_operations cifs_file_ops = {
 };
 };
 
 
 const struct file_operations cifs_file_direct_ops = {
 const struct file_operations cifs_file_direct_ops = {
-	/* no mmap, no aio, no readv -
+	/* no aio, no readv -
 	   BB reevaluate whether they can be done with directio, no cache */
 	   BB reevaluate whether they can be done with directio, no cache */
 	.read = cifs_user_read,
 	.read = cifs_user_read,
 	.write = cifs_user_write,
 	.write = cifs_user_write,
@@ -767,6 +767,7 @@ const struct file_operations cifs_file_direct_ops = {
 	.lock = cifs_lock,
 	.lock = cifs_lock,
 	.fsync = cifs_fsync,
 	.fsync = cifs_fsync,
 	.flush = cifs_flush,
 	.flush = cifs_flush,
+	.mmap = cifs_file_mmap,
 	.splice_read = generic_file_splice_read,
 	.splice_read = generic_file_splice_read,
 #ifdef CONFIG_CIFS_POSIX
 #ifdef CONFIG_CIFS_POSIX
 	.unlocked_ioctl  = cifs_ioctl,
 	.unlocked_ioctl  = cifs_ioctl,