The CIFS VFS is a virtual file system for Linux to allow access
to servers and storage appliances compliant with the SNIA CIFS
Specification version 1.0 or later. Popular
servers such as Samba, Windows 2000, Windows XP and many others
support CIFS by default. The CIFS VFS provides
some support for older servers based on the more primitive SMB
(Server Message Block) protocol (you also can use the Linux file
system smbfs as an alternative for accessing these).
CIFS VFS is designed to take advantage of advanced network file
system features such as locking, Unicode (advanced
internationalization), hardlinks, dfs (hierarchical, replicated
name space), distributed caching and uses native TCP names (rather
than RFC1001, Netbios names). Unlike some other network file
systems all key network function including authentication is
provided in kernel (and changes to mount and/or a mount helper
file are not required in order to enable the CIFS VFS). With the
addition of upcoming improvements to the mount helper (mount.cifs)
the CIFS VFS will be able to take advantage of the new CIFS URL
specification though. The TODO list includes some of
the other features being planned for future releases.
The CIFS VFS has been tested with Linux 2.4.14 and later as well
as regular testing on Linux 2.6 (and has been in the kernel source
starting with Linux kernel 2.5.42. Testing has been done on various
hardware architectures including x86 and even big endian zSeries
hardware. The cifs and smbfs file systems can coexist
on the same system and do not conflict.

The current version of the CIFS VFS has been backported to
compile on 2.4 kernels, not just older 2.6. kernel versions). To
download replacement files for the fs/cifs directory which
includes a relatively recent version of the cifs vfs which has
been backported to build on various earlier kernels (2.6.14 or later) click cifs
1.50c for 2.6 kernels (released July 25th, 2007).