aboutsummaryrefslogtreecommitdiffstats
path: root/fs/cifs
Commit message (Collapse)AuthorAgeFilesLines
* [PATCH] Make most file operations structs in fs/ constArjan van de Ven2006-03-282-10/+10
| | | | | | | | | | | | | | This is a conversion to make the various file_operations structs in fs/ const. Basically a regexp job, with a few manual fixups The goal is both to increase correctness (harder to accidentally write to shared datastructures) and reducing the false sharing of cachelines with things that get dirty in .data (while .rodata is nicely read only and thus cache clean) Signed-off-by: Arjan van de Ven <arjan@infradead.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] 2tb-files-add-blkcnt_t-fixesAndrew Morton2006-03-262-7/+7
| | | | | | Cc: Takashi Sato <sho@tnes.nec.co.jp> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] mempool: use mempool_create_slab_pool()Matthew Dobson2006-03-261-12/+6
| | | | | | | | | | Modify well over a dozen mempool users to call mempool_create_slab_pool() rather than calling mempool_create() with extra arguments, saving about 30 lines of code and increasing readability. Signed-off-by: Matthew Dobson <colpatch@us.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] Make address_space_operations->sync_page return voidNeilBrown2006-03-261-2/+4
| | | | | | | | | The only user ignores the return value, and the only instanace (block_sync_page) always returns 0... Signed-off-by: Neil Brown <neilb@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] s/;;/;/gAlexey Dobriyan2006-03-241-1/+1
| | | | | | Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] cpuset memory spread: slab cache formatPaul Jackson2006-03-241-1/+2
| | | | | | | | | | Rewrap the overly long source code lines resulting from the previous patch's addition of the slab cache flag SLAB_MEM_SPREAD. This patch contains only formatting changes, and no function change. Signed-off-by: Paul Jackson <pj@sgi.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] cpuset memory spread: slab cache filesystemsPaul Jackson2006-03-241-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Mark file system inode and similar slab caches subject to SLAB_MEM_SPREAD memory spreading. If a slab cache is marked SLAB_MEM_SPREAD, then anytime that a task that's in a cpuset with the 'memory_spread_slab' option enabled goes to allocate from such a slab cache, the allocations are spread evenly over all the memory nodes (task->mems_allowed) allowed to that task, instead of favoring allocation on the node local to the current cpu. The following inode and similar caches are marked SLAB_MEM_SPREAD: file cache ==== ===== fs/adfs/super.c adfs_inode_cache fs/affs/super.c affs_inode_cache fs/befs/linuxvfs.c befs_inode_cache fs/bfs/inode.c bfs_inode_cache fs/block_dev.c bdev_cache fs/cifs/cifsfs.c cifs_inode_cache fs/coda/inode.c coda_inode_cache fs/dquot.c dquot fs/efs/super.c efs_inode_cache fs/ext2/super.c ext2_inode_cache fs/ext2/xattr.c (fs/mbcache.c) ext2_xattr fs/ext3/super.c ext3_inode_cache fs/ext3/xattr.c (fs/mbcache.c) ext3_xattr fs/fat/cache.c fat_cache fs/fat/inode.c fat_inode_cache fs/freevxfs/vxfs_super.c vxfs_inode fs/hpfs/super.c hpfs_inode_cache fs/isofs/inode.c isofs_inode_cache fs/jffs/inode-v23.c jffs_fm fs/jffs2/super.c jffs2_i fs/jfs/super.c jfs_ip fs/minix/inode.c minix_inode_cache fs/ncpfs/inode.c ncp_inode_cache fs/nfs/direct.c nfs_direct_cache fs/nfs/inode.c nfs_inode_cache fs/ntfs/super.c ntfs_big_inode_cache_name fs/ntfs/super.c ntfs_inode_cache fs/ocfs2/dlm/dlmfs.c dlmfs_inode_cache fs/ocfs2/super.c ocfs2_inode_cache fs/proc/inode.c proc_inode_cache fs/qnx4/inode.c qnx4_inode_cache fs/reiserfs/super.c reiser_inode_cache fs/romfs/inode.c romfs_inode_cache fs/smbfs/inode.c smb_inode_cache fs/sysv/inode.c sysv_inode_cache fs/udf/super.c udf_inode_cache fs/ufs/super.c ufs_inode_cache net/socket.c sock_inode_cache net/sunrpc/rpc_pipe.c rpc_inode_cache The choice of which slab caches to so mark was quite simple. I marked those already marked SLAB_RECLAIM_ACCOUNT, except for fs/xfs, dentry_cache, inode_cache, and buffer_head, which were marked in a previous patch. Even though SLAB_RECLAIM_ACCOUNT is for a different purpose, it marks the same potentially large file system i/o related slab caches as we need for memory spreading. Given that the rule now becomes "wherever you would have used a SLAB_RECLAIM_ACCOUNT slab cache flag before (usually the inode cache), use the SLAB_MEM_SPREAD flag too", this should be easy enough to maintain. Future file system writers will just copy one of the existing file system slab cache setups and tend to get it right without thinking. Signed-off-by: Paul Jackson <pj@sgi.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] vfs: MS_VERBOSE should be MS_SILENTTheodore Ts'o2006-03-241-1/+1
| | | | | | | | | | | | | | | | | | | | | | The meaning of MS_VERBOSE is backwards; if the bit is set, it really means, "don't be verbose". This is confusing and counter-intuitive. In addition, there is also no way to set the MS_VERBOSE flag in the mount(8) program in util-linux, but interesting, it does define options which would do the right thing if MS_SILENT were defined, which unfortunately we do not: #ifdef MS_SILENT { "quiet", 0, 0, MS_SILENT }, /* be quiet */ { "loud", 0, 1, MS_SILENT }, /* print out messages. */ #endif So the obvious fix is to deprecate the use of MS_VERBOSE and replace it with MS_SILENT. Signed-off-by: "Theodore Ts'o" <tytso@mit.edu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] sem2mutex: vfs_rename_mutexArjan van de Ven2006-03-237-34/+34
| | | | | | | | | | | | | | Semaphore to mutex conversion. The conversion was generated via scripts, and the result was validated automatically via a script as well. Signed-off-by: Arjan van de Ven <arjan@infradead.org> Signed-off-by: Ingo Molnar <mingo@elte.hu> Cc: Al Viro <viro@ftp.linux.org.uk> Cc: Christoph Hellwig <hch@lst.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* It's UTF-8Alexey Dobriyan2006-03-221-1/+1
| | | | | | | Fix some comments to "UTF-8". Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com> Signed-off-by: Adrian Bunk <bunk@stusta.de>
* [CIFS] Always match oplock break (cache notification) to the right tcpSteve French2006-03-053-4/+4
| | | | | | | | | | | | | | | | | | | | session when multiply mounted. Fixes slow response when cifs client is mounted to shares on multiple servers and oplock break occurs (usually due to attempt to multiply open a file). When treeids on mutiple mounted shares match and we find the wrong match first, we searched for the wrong cached files to send oplock break response for which usually meant that no matching file was found and thus the server would have to timeout the notification. Oplock break timeout is about 20 seconds on some servers so this could cause significantly slower performance on file open calls in a few cases (in particular when multiple shares are mounted from multiple servers, tree ids match, and we have a cached file which is later opened multiple times). This was the most important of the bugs that was found and fixed at Connectathon (interoperability testing event) this week. Acked-by: Shaggy (shaggy@austin.ibm.com) Signed-off-by: Steve French (sfrench@us.ibm.com)
* [PATCH] CIFS: CIFSSMBRead was returning an invalid pointer in buf on socket ↵Steve French2006-02-222-7/+8
| | | | | | | | | | | | | error Thanks to Adrian Bunk for debugging the problem and to Shaggy for helping find the solution. Also added a fix for 64K pages we found in loosely-related testing Signed-off-by: Dave Kleikamp <shaggy@austin.ibm.com> Signed-off-by: Steve French <sfrench@us.ibm.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] CIFS: fix cifs_user_read oops when null SMB response on ↵Steve French2006-02-141-6/+8
| | | | | | | | | | | forcedirectio mount This patch fixes an oops reported by Adrian Bunk in cifs_user_read when a null read response is returned on a forcedirectio mount. Signed-off-by: Dave Kleikamp <shaggy@austin.ibm.com> Signed-off-by: Steve French <sfrench@us.ibm.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [CIFS] Remove compiler warningSteve French2006-01-271-1/+2
| | | | Signed-off-by: Steve French <sfrench@us.ibm.com>
* Signed-off-by: Steve French <sfrench@us.ibm.com>Steve French2006-01-271-1/+7
|
* [CIFS] Make cifs default wsize match what we actually want to send (52KSteve French2006-01-241-1/+9
| | | | | | | | | | typically - header + 13 pages). Forgetting to set wsize on the mount command costs more than 10% on large write (can be much more) so this makes a saner default. We still shrink this default smaller if server can not support it. Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] Do not zero non-existent iovec in SendReceive response processing.Steve French2006-01-231-1/+0
| | | | | | Could cause memory leak in some readpaths depending on what junk followed it in the stack. Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] Fix oops in cifs_readpages caused by not checking buf_type in anSteve French2006-01-181-1/+4
| | | | | | error path of new cifs_readpages code. Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] Remove compiler warningSteve French2006-01-171-1/+1
| | | | | Signed-off-by: Benoit Boissinot <benoit.boissinot@ens-lyon.org> Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] Fix CIFS to recognize share mode securitySteve French2006-01-134-15/+41
| | | | | | | | | Fix Samba bugzilla bug 3301 In share mode encrypted password must be sent on tree connection (in our case only the NTLM password is sent, not the older LANMAN one). Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] Fix typoSteve French2006-01-121-1/+0
| | | | Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] Add worker function for Get ACL cifs styleSteve French2006-01-129-20/+292
| | | | Signed-off-by: Steve French <sfrench@us.ibm.com>
* Merge with /pub/scm/linux/kernel/git/torvalds/linux-2.6.gitSteve French2006-01-124-14/+11
|\ | | | | | | Signed-off-by: Steve French <sfrench@us.ibm.com>
| * [PATCH] turn "const static" into "static const"Jesper Juhl2006-01-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | ICC likes to complain about storage class not being first, GCC doesn't care much (except for cases like "inline static"). have a hard time seeing how it could break anything. Thanks to Gabriel A. Devenyi for pointing out http://linuxicc.sourceforge.net/ which is what made me create this patch. Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
| * [PATCH] mutex subsystem, semaphore to mutex: VFS, ->i_semJes Sorensen2006-01-092-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | This patch converts the inode semaphore to a mutex. I have tested it on XFS and compiled as much as one can consider on an ia64. Anyway your luck with it might be different. Modified-by: Ingo Molnar <mingo@elte.hu> (finished the conversion) Signed-off-by: Jes Sorensen <jes@sgi.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
| * [PATCH] Fix and add EXPORT_SYMBOL(filemap_write_and_wait)OGAWA Hirofumi2006-01-082-6/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch add EXPORT_SYMBOL(filemap_write_and_wait) and use it. See mm/filemap.c: And changes the filemap_write_and_wait() and filemap_write_and_wait_range(). Current filemap_write_and_wait() doesn't wait if filemap_fdatawrite() returns error. However, even if filemap_fdatawrite() returned an error, it may have submitted the partially data pages to the device. (e.g. in the case of -ENOSPC) <quotation> Andrew Morton writes, If filemap_fdatawrite() returns an error, this might be due to some I/O problem: dead disk, unplugged cable, etc. Given the generally crappy quality of the kernel's handling of such exceptions, there's a good chance that the filemap_fdatawait() will get stuck in D state forever. </quotation> So, this patch doesn't wait if filemap_fdatawrite() returns the -EIO. Trond, could you please review the nfs part? Especially I'm not sure, nfs must use the "filemap_fdatawrite(inode->i_mapping) == 0", or not. Acked-by: Trond Myklebust <trond.myklebust@fys.uio.no> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* | [CIFS] Allow local filesize for file that is open for write to be updatedSteve French2006-01-122-2/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | from server when mount forcedirectio. Allowing update of file size with non forcedirectio mounts should be allowed in the fiture but requires carefully writing out the last page in the local file if it is a partial page in order to avoid corruption and careful serialization Thanks to Maximiliano Curia who suggested similar changes and provided a testcase. Signed-off-by: Steve French <sfrench@us.ibm.com>
* | [CIFS] Fix cifs trying to write to f_opsSteve French2006-01-081-6/+11
| | | | | | | | | | | | | | | | | | | | | | | | patch 2ea55c01e0c5dfead8699484b0bae2a375b1f61c fixed CIFS clobbering the global fops structure for some per mount setting, by duplicating and having 2 fops structs. However the write to the fops was left behind, which is a NOP in practice (due to the fact that we KNOW the fops has that field set to NULL already due to the duplication). So remove it... In addition, another instance of the same bug was forgotten in november. Signed-off-by: Arjan van de Ven <arjan@infradead.org> Signed-off-by: Steve French <sfrench@us.ibm.com>
* | [CIFS] Minor cleanup to new cifs acl header.Steve French2006-01-081-0/+2
| | | | | | | | Signed-off-by: Steve French <sfrench@us.ibm.com>
* | [CIFS] Fix typos in rfc1002pdu.hSteve French2005-12-311-2/+2
| | | | | | | | | | | | Pointed out by Leo Comitale Signed-off-by: Steve French <sfrench@us.ibm.com>
* | [CIFS] Avoid extra large buffer allocation (and memcpy) in cifs_readpagesSteve French2005-12-1211-108/+156
| | | | | | | | Signed-off-by: Steve French <sfrench@us.ibm.com>
* | [CIFS] Display large/small total buffer allocations in /proc/fs/cifs/StatsSteve French2005-12-031-0/+8
| | | | | | | | | | | | when CONFIG_CIFS_STATS2 is on (helps in debugging performance) Signed-off-by: Steve French <sfrench@us.ibm.com>
* | [CIFS] Add extended stats (STATS2) for total buffer allocations forSteve French2005-12-034-2/+23
| | | | | | | | | | | | better performance debugging. Signed-off-by: Steve French <sfrench@us.ibm.com>
* | [CIFS] Readpages and readir performance improvements - eliminate extraSteve French2005-12-026-23/+71
| | | | | | | | | | | | memcpy. Part 1 Signed-off-by: Steve French <sfrench@us.ibm.com>
* | [CIFS] Kerberos and CIFS ACL support part 1Steve French2005-12-014-9/+94
| | | | | | | | Signed-off-by: Steve French <sfrench@us.ibm.com>
* | [CIFS] Use fsuid (fsgid) more consistently instead of uid/gid inSteve French2005-12-015-11/+17
|/ | | | | | | | | assembling smb requests when setuids and Linux protocol extensions enabled and in checking more matching sessions in multiuser mount mode. Pointed out by Shaggy. Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] For previous fix, mode on mkdir needed S_IFDIR left out.Steve French2005-11-291-0/+1
| | | | Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] Missing parenthesis and typo in previous fixSteve French2005-11-292-2/+3
| | | | Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] Fix umount --force to wake up the pending response queue, not justSteve French2005-11-295-8/+62
| | | | | | | | the request queue. Also periodically wakeup response_q so threads can check if stuck requests have timed out. Workaround Windows server illegal smb length on transact2 findfirst response. Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] Fix missing permission check on setattr when noperm mount option isSteve French2005-11-295-13/+60
| | | | | | | | | | disabled. Also set mode, uid, gid better on mkdir and create for the case when Unix Extensions is not enabled and setuids is enabled. This is necessary to fix the hole in which chown could be allowed for non-root users in some cases if root mounted, and also to display the mode and uid properly in some cases. Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] When file is deleted locally but later recreated on the serverSteve French2005-11-283-20/+35
| | | | | | | | fix cifs negative dentries so they are freed faster (not requiring umount or readdir e.g.) so the client recognizes the new file on the server more quickly. Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] Fix setattr of mode only (e.g. in some chmod cases) to WindowsSteve French2005-11-191-0/+1
| | | | | | so it does not return EACCESS (unless server really returns that). Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] Fix mknod of block and chardev over SFU mountsSteve French2005-11-183-13/+62
| | | | Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] Missing part of previous patchSteve French2005-11-182-0/+3
| | | | Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] Fix scheduling while atomic when pending writes at file close timeSteve French2005-11-182-22/+56
| | | | | | | | | | Fix the case in which readdir reset file type when SFU mount option specified. Also fix sfu related functions to not request EAs (xattrs) when not configured in Kconfig Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] Vectored and async i/o turned on and correct theSteve French2005-11-171-72/+45
| | | | | | | | | | | | | | | | | | | | | | | | writev and aio_write to flush properly. This is Christoph's patch merged with the new nobrl file operations Signed-off-by: Dave Kleikamp <shaggy@austin.ibm.com> From: Christoph Hellwig <hch@lst.de> - support vectored and async aio ops unconditionally - this is above the pagecache and transparent to the fs - remove cifs_read_wrapper. it was only doing silly checks and calling generic_file_write in all cases. - use do_sync_read/do_sync_write as read/write operations. They call ->readv/->writev which we now always implemente. - add the filemap_fdatawrite calls to writev/aio_write which were missing previously compared to plain write. no idea what the point behind them is, but let's be consistent at least.. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Steven French <sfrench@us.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org>
* [CIFS] Recognize properly symlinks and char/blk devices (not justSteve French2005-11-171-4/+44
| | | | | | | | FIFOs) created by SFU (part 2 of 2). Thanks to Martin Koeppe for useful analysis. Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] Fix sparse warnings on smb bcc (byte count)Steve French2005-11-162-3/+3
| | | | | Signed-off-by: Dave Kleikamp <shaggy@austin.ibm.com> Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] Fix endian errors (setfacl/getfacl failures) in handling ACLsSteve French2005-11-151-14/+17
| | | | | | | (and a ppc64 compiler warning) Signed-off-by: Dave Kleikamp <shaggy@austin.ibm.com> Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] Recognize properly symlinks and char/blk devices (not just FIFOs)Steve French2005-11-152-10/+66
| | | | | | created by SFU (part 1 of 2). Signed-off-by: Steve French <sfrench@us.ibm.com>