···11-Version 1.53 May 20, 200811+Version 2.03 August 1, 20142233A Partial List of Missing Features44==================================···77for visible, important contributions to this module. Here88is a partial list of the known problems and missing features:991010-a) Support for SecurityDescriptors(Windows/CIFS ACLs) for chmod/chgrp/chown1111-so that these operations can be supported to Windows servers1010+a) SMB3 (and SMB3.02) missing optional features:1111+ - RDMA1212+ - multichannel (started)1313+ - directory leases (improved metadata caching)1414+ - T10 copy offload (copy chunk is only mechanism supported)1515+ - encrypted shares12161313-b) Mapping POSIX ACLs (and eventually NFSv4 ACLs) to CIFS1414-SecurityDescriptors1717+b) improved sparse file support15181616-c) Better pam/winbind integration (e.g. to handle uid mapping1717-better)1818-1919-d) Cleanup now unneeded SessSetup code in2020-fs/cifs/connect.c and add back in NTLMSSP code if any servers2121-need it2222-2323-e) fix NTLMv2 signing when two mounts with different users to same2424-server.2525-2626-f) Directory entry caching relies on a 1 second timer, rather than 1919+c) Directory entry caching relies on a 1 second timer, rather than2720using FindNotify or equivalent. - (started)28212929-g) quota support (needs minor kernel change since quota calls2222+d) quota support (needs minor kernel change since quota calls3023to make it to network filesystems or deviceless filesystems)31243232-h) investigate sync behavior (including syncpage) and check 3333-for proper behavior of intr/nointr3434-3535-i) improve support for very old servers (OS/2 and Win9x for example)2525+e) improve support for very old servers (OS/2 and Win9x for example)3626Including support for changing the time remotely (utimes command).37273838-j) hook lower into the sockets api (as NFS/SunRPC does) to avoid the2828+f) hook lower into the sockets api (as NFS/SunRPC does) to avoid the3929extra copy in/out of the socket buffers in some cases.40304141-k) Better optimize open (and pathbased setfilesize) to reduce the3131+g) Better optimize open (and pathbased setfilesize) to reduce the4232oplock breaks coming from windows srv. Piggyback identical file4333opens on top of each other by incrementing reference count rather4434than resending (helps reduce server resource utilization and avoid4535spurious oplock breaks).46364747-l) Improve performance of readpages by sending more than one read4848-at a time when 8 pages or more are requested. In conjuntion4949-add support for async_cifs_readpages.5050-5151-m) Add support for storing symlink info to Windows servers 3737+h) Add support for storing symlink info to Windows servers5238in the Extended Attribute format their SFU clients would recognize.53395454-n) Finish fcntl D_NOTIFY support so kde and gnome file list windows4040+i) Finish inotify support so kde and gnome file list windows5541will autorefresh (partially complete by Asser). Needs minor kernel5642vfs change to support removing D_NOTIFY on a file. 57435858-o) Add GUI tool to configure /proc/fs/cifs settings and for display of4444+j) Add GUI tool to configure /proc/fs/cifs settings and for display of5945the CIFS statistics (started)60466161-p) implement support for security and trusted categories of xattrs4747+k) implement support for security and trusted categories of xattrs6248(requires minor protocol extension) to enable better support for SELINUX63496464-q) Implement O_DIRECT flag on open (already supported on mount)5050+l) Implement O_DIRECT flag on open (already supported on mount)65516666-r) Create UID mapping facility so server UIDs can be mapped on a per5252+m) Create UID mapping facility so server UIDs can be mapped on a per6753mount or a per server basis to client UIDs or nobody if no mapping6854exists. This is helpful when Unix extensions are negotiated to6955allow better permission checking when UIDs differ on the server···5771standard for asking the server for the corresponding name of a5872particular uid.59736060-s) Add support for CIFS Unix and also the newer POSIX extensions to the6161-server side for Samba 4.7474+n) DOS attrs - returned as pseudo-xattr in Samba format (check VFAT and NTFS for this too)62756363-t) In support for OS/2 (LANMAN 1.2 and LANMAN2.1 based SMB servers) 6464-need to add ability to set time to server (utimes command)7676+o) mount check for unmatched uids65776666-u) DOS attrs - returned as pseudo-xattr in Samba format (check VFAT and NTFS for this too)7878+p) Add support for new vfs entry point for fallocate67796868-v) mount check for unmatched uids8080+q) Add tools to take advantage of cifs/smb3 specific ioctls and features8181+such as "CopyChunk" (fast server side file copy)69827070-w) Add support for new vfs entry point for fallocate8383+r) encrypted file support71847272-x) Fix Samba 3 server to handle Linux kernel aio so dbench with lots of 7373-processes can proceed better in parallel (on the server)8585+s) improved stats gathering, tools (perhaps integration with nfsometer?)74867575-y) Fix Samba 3 to handle reads/writes over 127K (and remove the cifs mount7676-restriction of wsize max being 127K) 8787+t) allow setting more NTFS/SMB3 file attributes remotely (currently limited to compressed8888+file attribute via chflags)77897878-KNOWN BUGS (updated April 24, 2007)9090+u) mount helper GUI (to simplify the various configuration options on mount)9191+9292+9393+KNOWN BUGS7994====================================8095See http://bugzilla.samba.org - search on product "CifsVFS" for8181-current bug list.9696+current bug list. Also check http://bugzilla.kernel.org (Product = File System, Component = CIFS)829783981) existing symbolic links (Windows reparse points) are recognized but8499can not be created remotely. They are implemented for Samba and those that···87100overly restrict the pathnames.881012) follow_link and readdir code does not follow dfs junctions89102but recognizes them9090-3) create of new files to FAT partitions on Windows servers can9191-succeed but still return access denied (appears to be Windows 9292-server not cifs client problem) and has not been reproduced recently.9393-NTFS partitions do not have this problem.9494-4) Unix/POSIX capabilities are reset after reconnection, and affect9595-a few fields in the tree connection but we do do not know which9696-superblocks to apply these changes to. We should probably walk9797-the list of superblocks to set these. Also need to check the9898-flags on the second mount to the same share, and see if we9999-can do the same trick that NFS does to remount duplicate shares.100103101104Misc testing to do102105==================1031061) check out max path names and max path name components against various server104107types. Try nested symlinks (8 deep). Return max path name in stat -f information105108106106-2) Modify file portion of ltp so it can run against a mounted network107107-share and run it against cifs vfs in automated fashion.109109+2) Improve xfstest's cifs enablement and adapt xfstests where needed to test110110+cifs better1081111091123) Additional performance testing and optimization using iozone and similar - 110113there are some easy changes that can be done to parallelize sequential writes,111114and when signing is disabled to request larger read sizes (larger than 112115negotiated size) and send larger write sizes to modern servers.113116114114-4) More exhaustively test against less common servers. More testing115115-against Windows 9x, Windows ME servers.116116-117117+4) More exhaustively test against less common servers