Browse Source

Allow duplicate extents in SMB3 not just SMB3.1.1

Enable duplicate extents (cp --reflink) ioctl for SMB3.0 not just
SMB3.1.1 since have verified that this works to Windows 2016
(REFS) and additional testing done at recent plugfest with
SMB3.0 not just SMB3.1.1  This will also make it easier
for Samba.

Signed-off-by: Steve French <steve.french@primarydata.com>
Reviewed-by: David Disseldorp <ddiss@suse.de>
Steve French 10 years ago
parent
commit
ca9e7a1c85
1 changed files with 1 additions and 3 deletions
  1. 1 3
      fs/cifs/smb2ops.c

+ 1 - 3
fs/cifs/smb2ops.c

@@ -810,7 +810,6 @@ smb2_set_file_size(const unsigned int xid, struct cifs_tcon *tcon,
 			    cfile->fid.volatile_fid, cfile->pid, &eof, false);
 			    cfile->fid.volatile_fid, cfile->pid, &eof, false);
 }
 }
 
 
-#ifdef CONFIG_CIFS_SMB311
 static int
 static int
 smb2_duplicate_extents(const unsigned int xid,
 smb2_duplicate_extents(const unsigned int xid,
 			struct cifsFileInfo *srcfile,
 			struct cifsFileInfo *srcfile,
@@ -854,8 +853,6 @@ smb2_duplicate_extents(const unsigned int xid,
 duplicate_extents_out:
 duplicate_extents_out:
 	return rc;
 	return rc;
 }
 }
-#endif /* CONFIG_CIFS_SMB311 */
-
 
 
 static int
 static int
 smb2_set_compression(const unsigned int xid, struct cifs_tcon *tcon,
 smb2_set_compression(const unsigned int xid, struct cifs_tcon *tcon,
@@ -1703,6 +1700,7 @@ struct smb_version_operations smb30_operations = {
 	.create_lease_buf = smb3_create_lease_buf,
 	.create_lease_buf = smb3_create_lease_buf,
 	.parse_lease_buf = smb3_parse_lease_buf,
 	.parse_lease_buf = smb3_parse_lease_buf,
 	.clone_range = smb2_clone_range,
 	.clone_range = smb2_clone_range,
+	.duplicate_extents = smb2_duplicate_extents,
 	.validate_negotiate = smb3_validate_negotiate,
 	.validate_negotiate = smb3_validate_negotiate,
 	.wp_retry_size = smb2_wp_retry_size,
 	.wp_retry_size = smb2_wp_retry_size,
 	.dir_needs_close = smb2_dir_needs_close,
 	.dir_needs_close = smb2_dir_needs_close,