aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--fs/Kconfig40
-rw-r--r--fs/cifs/cifsproto.h2
-rw-r--r--fs/cifs/cifssmb.c2
-rw-r--r--fs/cifs/inode.c2
4 files changed, 32 insertions, 14 deletions
diff --git a/fs/Kconfig b/fs/Kconfig
index c9c4108469c3..8855fd41cfa8 100644
--- a/fs/Kconfig
+++ b/fs/Kconfig
@@ -1587,9 +1587,10 @@ config CIFS
1587 PC operating systems. The CIFS protocol is fully supported by 1587 PC operating systems. The CIFS protocol is fully supported by
1588 file servers such as Windows 2000 (including Windows 2003, NT 4 1588 file servers such as Windows 2000 (including Windows 2003, NT 4
1589 and Windows XP) as well by Samba (which provides excellent CIFS 1589 and Windows XP) as well by Samba (which provides excellent CIFS
1590 server support for Linux and many other operating systems). Currently 1590 server support for Linux and many other operating systems). Limited
1591 you must use the smbfs client filesystem to access older SMB servers 1591 support for Windows ME and similar servers is provided as well.
1592 such as Windows 9x and OS/2. 1592 You must use the smbfs client filesystem to access older SMB servers
1593 such as OS/2 and DOS.
1593 1594
1594 The intent of the cifs module is to provide an advanced 1595 The intent of the cifs module is to provide an advanced
1595 network file system client for mounting to CIFS compliant servers, 1596 network file system client for mounting to CIFS compliant servers,
@@ -1600,7 +1601,7 @@ config CIFS
1600 cifs if running only a (Samba) server. It is possible to enable both 1601 cifs if running only a (Samba) server. It is possible to enable both
1601 smbfs and cifs (e.g. if you are using CIFS for accessing Windows 2003 1602 smbfs and cifs (e.g. if you are using CIFS for accessing Windows 2003
1602 and Samba 3 servers, and smbfs for accessing old servers). If you need 1603 and Samba 3 servers, and smbfs for accessing old servers). If you need
1603 to mount to Samba or Windows 2003 servers from this machine, say Y. 1604 to mount to Samba or Windows from this machine, say Y.
1604 1605
1605config CIFS_STATS 1606config CIFS_STATS
1606 bool "CIFS statistics" 1607 bool "CIFS statistics"
@@ -1609,8 +1610,22 @@ config CIFS_STATS
1609 Enabling this option will cause statistics for each server share 1610 Enabling this option will cause statistics for each server share
1610 mounted by the cifs client to be displayed in /proc/fs/cifs/Stats 1611 mounted by the cifs client to be displayed in /proc/fs/cifs/Stats
1611 1612
1613config CIFS_STATS2
1614 bool "CIFS extended statistics"
1615 depends on CIFS_STATS
1616 help
1617 Enabling this option will allow more detailed statistics on SMB
1618 request timing to be displayed in /proc/fs/cifs/DebugData and also
1619 allow optional logging of slow responses to dmesg (depending on the
1620 value of /proc/fs/cifs/cifsFYI, see fs/cifs/README for more details).
1621 These additional statistics may have a minor effect on performance
1622 and memory utilization.
1623
1624 Unless you are a developer or are doing network performance analysis
1625 or tuning, say N.
1626
1612config CIFS_XATTR 1627config CIFS_XATTR
1613 bool "CIFS extended attributes (EXPERIMENTAL)" 1628 bool "CIFS extended attributes"
1614 depends on CIFS 1629 depends on CIFS
1615 help 1630 help
1616 Extended attributes are name:value pairs associated with inodes by 1631 Extended attributes are name:value pairs associated with inodes by
@@ -1622,11 +1637,11 @@ config CIFS_XATTR
1622 prefaced by the user namespace prefix. The system namespace 1637 prefaced by the user namespace prefix. The system namespace
1623 (used by some filesystems to store ACLs) is not supported at 1638 (used by some filesystems to store ACLs) is not supported at
1624 this time. 1639 this time.
1625 1640
1626 If unsure, say N. 1641 If unsure, say N.
1627 1642
1628config CIFS_POSIX 1643config CIFS_POSIX
1629 bool "CIFS POSIX Extensions (EXPERIMENTAL)" 1644 bool "CIFS POSIX Extensions"
1630 depends on CIFS_XATTR 1645 depends on CIFS_XATTR
1631 help 1646 help
1632 Enabling this option will cause the cifs client to attempt to 1647 Enabling this option will cause the cifs client to attempt to
@@ -1641,8 +1656,15 @@ config CIFS_EXPERIMENTAL
1641 bool "CIFS Experimental Features (EXPERIMENTAL)" 1656 bool "CIFS Experimental Features (EXPERIMENTAL)"
1642 depends on CIFS && EXPERIMENTAL 1657 depends on CIFS && EXPERIMENTAL
1643 help 1658 help
1644 Enables cifs features under testing. These features 1659 Enables cifs features under testing. These features are
1645 are highly experimental. If unsure, say N. 1660 experimental and currently include support for writepages
1661 (multipage writebehind performance improvements) and directory
1662 change notification ie fcntl(F_DNOTIFY) as well as some security
1663 improvements. Some also depend on setting at runtime the
1664 pseudo-file /proc/fs/cifs/Experimental (which is disabled by
1665 default). See the file fs/cifs/README for more details.
1666
1667 If unsure, say N.
1646 1668
1647config NCP_FS 1669config NCP_FS
1648 tristate "NCP file system support (to mount NetWare volumes)" 1670 tristate "NCP file system support (to mount NetWare volumes)"
diff --git a/fs/cifs/cifsproto.h b/fs/cifs/cifsproto.h
index d301149b1bb0..1b73f4f4c5ce 100644
--- a/fs/cifs/cifsproto.h
+++ b/fs/cifs/cifsproto.h
@@ -242,11 +242,11 @@ extern int CIFSSMBWrite2(const int xid, struct cifsTconInfo *tcon,
242 const int netfid, const unsigned int count, 242 const int netfid, const unsigned int count,
243 const __u64 offset, unsigned int *nbytes, 243 const __u64 offset, unsigned int *nbytes,
244 struct kvec *iov, const int nvec, const int long_op); 244 struct kvec *iov, const int nvec, const int long_op);
245#endif /* CONFIG_CIFS_EXPERIMENTAL */
245extern int CIFSGetSrvInodeNumber(const int xid, struct cifsTconInfo *tcon, 246extern int CIFSGetSrvInodeNumber(const int xid, struct cifsTconInfo *tcon,
246 const unsigned char *searchName, __u64 * inode_number, 247 const unsigned char *searchName, __u64 * inode_number,
247 const struct nls_table *nls_codepage, 248 const struct nls_table *nls_codepage,
248 int remap_special_chars); 249 int remap_special_chars);
249#endif /* CONFIG_CIFS_EXPERIMENTAL */
250extern int cifs_convertUCSpath(char *target, const __le16 *source, int maxlen, 250extern int cifs_convertUCSpath(char *target, const __le16 *source, int maxlen,
251 const struct nls_table * codepage); 251 const struct nls_table * codepage);
252extern int cifsConvertToUCS(__le16 * target, const char *source, int maxlen, 252extern int cifsConvertToUCS(__le16 * target, const char *source, int maxlen,
diff --git a/fs/cifs/cifssmb.c b/fs/cifs/cifssmb.c
index 9312bfc56682..a53c596e1082 100644
--- a/fs/cifs/cifssmb.c
+++ b/fs/cifs/cifssmb.c
@@ -2959,7 +2959,6 @@ CIFSFindClose(const int xid, struct cifsTconInfo *tcon, const __u16 searchHandle
2959 return rc; 2959 return rc;
2960} 2960}
2961 2961
2962#ifdef CONFIG_CIFS_EXPERIMENTAL
2963int 2962int
2964CIFSGetSrvInodeNumber(const int xid, struct cifsTconInfo *tcon, 2963CIFSGetSrvInodeNumber(const int xid, struct cifsTconInfo *tcon,
2965 const unsigned char *searchName, 2964 const unsigned char *searchName,
@@ -3053,7 +3052,6 @@ GetInodeNumOut:
3053 goto GetInodeNumberRetry; 3052 goto GetInodeNumberRetry;
3054 return rc; 3053 return rc;
3055} 3054}
3056#endif /* CIFS_EXPERIMENTAL */
3057 3055
3058int 3056int
3059CIFSGetDFSRefer(const int xid, struct cifsSesInfo *ses, 3057CIFSGetDFSRefer(const int xid, struct cifsSesInfo *ses,
diff --git a/fs/cifs/inode.c b/fs/cifs/inode.c
index 912d401600f6..923d071163b2 100644
--- a/fs/cifs/inode.c
+++ b/fs/cifs/inode.c
@@ -283,7 +283,6 @@ int cifs_get_inode_info(struct inode **pinode,
283 there Windows server or network appliances for which 283 there Windows server or network appliances for which
284 IndexNumber field is not guaranteed unique? */ 284 IndexNumber field is not guaranteed unique? */
285 285
286#ifdef CONFIG_CIFS_EXPERIMENTAL
287 if (cifs_sb->mnt_cifs_flags & CIFS_MOUNT_SERVER_INUM){ 286 if (cifs_sb->mnt_cifs_flags & CIFS_MOUNT_SERVER_INUM){
288 int rc1 = 0; 287 int rc1 = 0;
289 __u64 inode_num; 288 __u64 inode_num;
@@ -299,7 +298,6 @@ int cifs_get_inode_info(struct inode **pinode,
299 } else /* do we need cast or hash to ino? */ 298 } else /* do we need cast or hash to ino? */
300 (*pinode)->i_ino = inode_num; 299 (*pinode)->i_ino = inode_num;
301 } /* else ino incremented to unique num in new_inode*/ 300 } /* else ino incremented to unique num in new_inode*/
302#endif /* CIFS_EXPERIMENTAL */
303 insert_inode_hash(*pinode); 301 insert_inode_hash(*pinode);
304 } 302 }
305 inode = *pinode; 303 inode = *pinode;