summaryrefslogtreecommitdiffstats
path: root/fs
Commit message (Collapse)AuthorAgeFilesLines
* hpfs: get rid of bitfields in struct fnodeAl Viro2012-05-298-38/+32
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* hpfs: get rid of bitfields endianness wanking in extended_attributeAl Viro2012-05-293-34/+35
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* fs: fix inode.c kernel-doc warningsRandy Dunlap2012-05-291-2/+1
| | | | | | | | | | | Fix kernel-doc warnings in fs/inode.c: Warning(fs/inode.c:1493): No description found for parameter 'path' Warning(fs/inode.c:1493): Excess function parameter 'mnt' description in 'touch_atime' Warning(fs/inode.c:1493): Excess function parameter 'dentry' description in 'touch_atime' Signed-off-by: Randy Dunlap <rdunlap@xenotime.net> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* hpfs: endianness bugsAl Viro2012-05-292-3/+3
| | | | | | | a couple of le32 and le16 used with wrong le..._to_cpu(), plus idiotic use of le32_to_cpu() on 1-bit bitfield Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* btrfs: trivial endianness annotationsAl Viro2012-05-293-7/+8
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* ocfs2: kill endianness abuses in blockcheck.cAl Viro2012-05-291-20/+22
| | | | | | | | ocfs2_block_check is for little-endian contents; if we just want to its fields converted to host-endian in a couple of functions, just put those values into local u32 and u16... Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* ocfs2: deal with __user misannotationsAl Viro2012-05-292-21/+16
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* ocfs2: trivial endianness misannotationsAl Viro2012-05-293-5/+5
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* affs: bury unused macrosAl Viro2012-05-291-8/+0
| | | | | | ... unused since 2.4.4. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* kill v9fs_dentry_from_dir_inode()Al Viro2012-05-291-21/+3
| | | | | | | In *all* callers we have a dentry of child of that directory. Just use ->d_parent of that one, for fsck sake... Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* ceph: move encode_fh to new APISage Weil2012-05-291-13/+21
| | | | | | | | | Use parent_inode has a flag for whether nfsd wants a connectable fh, but generate one opportunistically so that we can take advantage of the additional info in there. Signed-off-by: Sage Weil <sage@newdream.net> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* ->encode_fh() API changeAl Viro2012-05-2913-130/+88
| | | | | | | | | pass inode + parent's inode or NULL instead of dentry + bool saying whether we want the parent or not. NOTE: that needs ceph fix folded in. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* ubifs: use generic_fillattr()Al Viro2012-05-291-10/+1
| | | | | | don't open-code it... Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* xfs: switch to proper __bitwise type for KM_... flagsAl Viro2012-05-296-19/+20
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* switch utimes() to fget_light/fput_lightAl Viro2012-05-291-2/+3
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* switch statfs to fget_light/fput_lightAl Viro2012-05-291-2/+3
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* switch flock to fget_light/fput_lightAl Viro2012-05-291-2/+3
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* switch signalfd4() to fget_light/fput_lightAl Viro2012-05-291-3/+4
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* switch fcntl to fget_raw_light/fput_lightAl Viro2012-05-291-25/+17
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* switch xattr syscalls to fget_light/fput_lightAl Viro2012-05-291-8/+12
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* switch readdir/getdents to fget_light/fput_lightAl Viro2012-05-292-38/+28
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* switch do_fsync() to fget_light()Al Viro2012-05-291-2/+3
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* Merge branch 'for-next' of git://git.samba.org/sfrench/cifs-2.6Linus Torvalds2012-05-2917-587/+1039
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Pull CIFS updates from Steve French. * 'for-next' of git://git.samba.org/sfrench/cifs-2.6: (29 commits) cifs: fix oops while traversing open file list (try #4) cifs: Fix comment as d_alloc_root() is replaced by d_make_root() CIFS: Introduce SMB2 mounts as vers=2.1 CIFS: Introduce SMB2 Kconfig option CIFS: Move add/set_credits and get_credits_field to ops structure CIFS: Move protocol specific demultiplex thread calls to ops struct CIFS: Move protocol specific part from cifs_readv_receive to ops struct CIFS: Move header_size/max_header_size to ops structure CIFS: Move protocol specific part from SendReceive2 to ops struct cifs: Include backup intent search flags during searches {try #2) CIFS: Separate protocol specific part from setlk CIFS: Separate protocol specific part from getlk CIFS: Separate protocol specific lock type handling CIFS: Convert lock type to 32 bit variable CIFS: Move locks to cifsFileInfo structure cifs: convert send_nt_cancel into a version specific op cifs: add a smb_version_operations/values structures and a smb_version enum cifs: remove the vers= and version= synonyms for ver= cifs: add warning about change in default cache semantics in 3.7 cifs: display cache= option in /proc/mounts ...
| * cifs: fix oops while traversing open file list (try #4)Shirish Pargaonkar2012-05-232-24/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | While traversing the linked list of open file handles, if the identfied file handle is invalid, a reopen is attempted and if it fails, we resume traversing where we stopped and cifs can oops while accessing invalid next element, for list might have changed. So mark the invalid file handle and attempt reopen if no valid file handle is found in rest of the list. If reopen fails, move the invalid file handle to the end of the list and start traversing the list again from the begining. Repeat this four times before giving up and returning an error if file reopen keeps failing. Cc: <stable@vger.kernel.org> Signed-off-by: Shirish Pargaonkar <shirishpargaonkar@gmail.com> Reviewed-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: Steve French <sfrench@us.ibm.com>
| * cifs: Fix comment as d_alloc_root() is replaced by d_make_root()Sedat Dilek2012-05-231-1/+1
| | | | | | | | | | | | | | For more details see <file: Documentation/filesystems/porting>. Signed-off-by: Sedat Dilek <sedat.dilek@gmail.com> Signed-off-by: Steve French <sfrench@us.ibm.com>
| * CIFS: Introduce SMB2 mounts as vers=2.1Steve French2012-05-234-1/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As with Linux nfs client, which uses "nfsvers=" or "vers=" to indicate which protocol to use for mount, specifying "vers=2.1" will force an SMB2 mount. When vers is not specified CIFS is used "vers=1" We can eventually autonegotiate down from SMB2 to CIFS when SMB2 is stable enough to make it the default, but this is for the future. At that time we could also implement a "maxprotocol" mount option as smbclient and Samba have today, but that would be premature until SMB2 is stable. Intially the SMB2 Kconfig option will depend on "BROKEN" until the merge is complete, and then be "EXPERIMENTAL" When it is no longer experimental we can consider changing the default protocol to attempt first. Signed-off-by: Pavel Shilovsky <piastry@etersoft.ru> Signed-off-by: Jeff Layton <jlayton@redhat.com> Acked-by: Shirish Pargaonkar <shirishpargaonkar@gmail.com> Signed-off-by: Steve French <sfrench@us.ibm.com>
| * CIFS: Introduce SMB2 Kconfig optionSteve French2012-05-231-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SMB2 is the followon to the CIFS (and SMB) protocols and the default for Windows since Windows Vista, and also now implemented by various non-Windows servers. SMB2 is more secure, has various performance advantages, including larger i/o sizes, flow control, better caching model and more. SMB2 also resolves some scalability limits in the CIFS protocol and adds many new features while being much simpler (only a few dozen commands instead of hundreds) and since the protocol is clearer it is also more consistently implemented across servers and thus easier to optimize. After much discussion with Jeff Layton, Jeremy Allison and others at Connectathon, we decided to move the SMB2 code from a distinct .ko and fstype into distinct C files that optionally build in cifs.ko. As a result the Kconfig gets simpler. To avoid destabilizing CIFS, the SMB2 code is going to be moved into its own experimental CONFIG_CIFS_SMB2 ifdef as it is merged and rereviewed. The changes to stable CIFS (builds with the SMB2 ifdef off) are expected to be fairly small. Reviewed-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: Steve French <sfrench@us.ibm.com> Signed-off-by: Pavel Shilovsky <piastry@etersoft.ru> Signed-off-by: Steve French <sfrench@us.ibm.com>
| * CIFS: Move add/set_credits and get_credits_field to ops structurePavel Shilovsky2012-05-237-50/+62
| | | | | | | | | | | | | | Acked-by: Shirish Pargaonkar <shirishpargaonkar@gmail.com> Reviewed-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: Pavel Shilovsky <piastry@etersoft.ru> Signed-off-by: Steve French <sfrench@us.ibm.com>
| * CIFS: Move protocol specific demultiplex thread calls to ops structPavel Shilovsky2012-05-235-27/+39
| | | | | | | | | | | | Acked-by: Shirish Pargaonkar <shirishpargaonkar@gmail.com> Signed-off-by: Pavel Shilovsky <piastry@etersoft.ru> Signed-off-by: Steve French <sfrench@us.ibm.com>
| * CIFS: Move protocol specific part from cifs_readv_receive to ops structPavel Shilovsky2012-05-233-27/+33
| | | | | | | | | | | | | | Acked-by: Shirish Pargaonkar <shirishpargaonkar@gmail.com> Reviewed-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: Pavel Shilovsky <piastry@etersoft.ru> Signed-off-by: Steve French <sfrench@us.ibm.com>
| * CIFS: Move header_size/max_header_size to ops structurePavel Shilovsky2012-05-234-23/+20
| | | | | | | | | | | | | | Acked-by: Shirish Pargaonkar <shirishpargaonkar@gmail.com> Reviewed-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: Pavel Shilovsky <piastry@etersoft.ru> Signed-off-by: Steve French <sfrench@us.ibm.com>
| * CIFS: Move protocol specific part from SendReceive2 to ops structPavel Shilovsky2012-05-234-3/+15
| | | | | | | | | | | | | | Acked-by: Shirish Pargaonkar <shirishpargaonkar@gmail.com> Reviewed-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: Pavel Shilovsky <piastry@etersoft.ru> Signed-off-by: Steve French <sfrench@us.ibm.com>
| * cifs: Include backup intent search flags during searches {try #2)Shirish Pargaonkar2012-05-173-11/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As observed and suggested by Tushar Gosavi... --------- readdir calls these function to send TRANS2_FIND_FIRST and TRANS2_FIND_NEXT command to the server. The current cifs module is not specifying CIFS_SEARCH_BACKUP_SEARCH flag while sending these command when backupuid/backupgid is specified. This can be resolved by specifying CIFS_SEARCH_BACKUP_SEARCH flag. --------- Cc: <stable@kernel.org> Reported-and-Tested-by: Tushar Gosavi <tugosavi@in.ibm.com> Signed-off-by: Shirish Pargaonkar <shirishpargaonkar@gmail.com> Acked-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: Steve French <sfrench@us.ibm.com>
| * CIFS: Separate protocol specific part from setlkPavel Shilovsky2012-05-171-2/+2
| | | | | | | | Signed-off-by: Pavel Shilovsky <piastry@etersoft.ru>
| * CIFS: Separate protocol specific part from getlkPavel Shilovsky2012-05-173-22/+39
| | | | | | | | Signed-off-by: Pavel Shilovsky <piastry@etersoft.ru>
| * CIFS: Separate protocol specific lock type handlingPavel Shilovsky2012-05-163-16/+33
| | | | | | | | Signed-off-by: Pavel Shilovsky <piastry@etersoft.ru>
| * CIFS: Convert lock type to 32 bit variablePavel Shilovsky2012-05-162-7/+8
| | | | | | | | | | | | | | to handle SMB2 lock type field further. Acked-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: Pavel Shilovsky <piastry@etersoft.ru>
| * CIFS: Move locks to cifsFileInfo structurePavel Shilovsky2012-05-163-44/+58
| | | | | | | | | | | | | | | | | | CIFS brlock cache can be used by several file handles if we have a write-caching lease on the file that is supported by SMB2 protocol. Prepate the code to handle this situation correctly by sorting brlocks by a fid to easily push them in portions when lease break comes. Signed-off-by: Pavel Shilovsky <piastry@etersoft.ru>
| * cifs: convert send_nt_cancel into a version specific opJeff Layton2012-05-163-39/+54
| | | | | | | | | | | | | | | | For SMB2, this should be a no-op. Obviously if we wanted to do something for the SMB2 case, we could also define an operation here for it. Signed-off-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: Pavel Shilovsky <piastry@etersoft.ru>
| * cifs: add a smb_version_operations/values structures and a smb_version enumJeff Layton2012-05-165-2/+89
| | | | | | | | | | | | | | | | | | | | | | We need a way to dispatch different operations for different versions. Behold the smb_version_operations/values structures. For now, those structures just hold the version enum value and nothing uses them. Eventually, we'll expand them to cover other operations/values as we change the callers to dispatch from here. Signed-off-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: Pavel Shilovsky <piastry@etersoft.ru>
| * cifs: remove the vers= and version= synonyms for ver=Jeff Layton2012-05-161-4/+1
| | | | | | | | | | | | | | | | We want these to mean something different entirely, and the mount.cifs helper only ever passed in ver= automatically. Also, don't allow ver=cifs anymore since that was never passed in by the mount helper. Signed-off-by: Jeff Layton <jlayton@redhat.com>
| * cifs: add warning about change in default cache semantics in 3.7Jeff Layton2012-05-161-0/+13
| | | | | | | | | | | | | | | | | | Add a warning that will be displayed when there is no cache= option specified. We want to ensure that users are aware of the change in defaults coming in 3.7. Reviewed-by: Pavel Shilovsky <piastry@etersoft.ru> Signed-off-by: Jeff Layton <jlayton@redhat.com>
| * cifs: display cache= option in /proc/mountsJeff Layton2012-05-161-4/+14
| | | | | | | | | | | | | | | | ...and deprecate the display of strictcache, forcedirectio, and fsc as separate options. Reviewed-by: Pavel Shilovsky <piastry@etersoft.ru> Signed-off-by: Jeff Layton <jlayton@redhat.com>
| * cifs: add deprecation warnings to strictcache and forcedirectioJeff Layton2012-05-161-0/+6
| | | | | | | | | | | | | | Leave them in for 2 releases and remove for 3.7. Reviewed-by: Pavel Shilovsky <piastry@etersoft.ru> Signed-off-by: Jeff Layton <jlayton@redhat.com>
| * cifs: add a cache= option to better describe the different cache flavorsJeff Layton2012-05-161-3/+54
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, we have several mount options that control cifs' cache behavior, but those options aren't considered to be mutually exclusive. The result is poorly-defined when someone specifies more than one of these options at mount time. Fix this by adding a new cache= mount option that will supercede "strictcache", and "forcedirectio". That will help make it clear that these options are mutually exclusive. Also, change the legacy options to be mutually exclusive too, to ensure that users don't get surprises. Reviewed-by: Pavel Shilovsky <piastry@etersoft.ru> Signed-off-by: Jeff Layton <jlayton@redhat.com>
| * cifs: add a deprecation warning to CIFS_IOC_CHECKUMOUNT ioctlJeff Layton2012-05-161-0/+8
| | | | | | | | | | | | | | This was used by an ancient version of umount.cifs and in nowhere else that I'm aware of. Let's add a warning now and dump it for 3.7. Signed-off-by: Jeff Layton <jlayton@redhat.com>
| * cifs: remove legacy MultiuserMount optionJeff Layton2012-05-165-109/+1
| | | | | | | | | | | | We've now warned about this for two releases. Remove it for 3.5. Signed-off-by: Jeff Layton <jlayton@redhat.com>
| * cifs: convert cifs_iovec_read to use async readsJeff Layton2012-05-162-60/+236
| | | | | | | | | | | | | | | | | | | | | | | | | | Convert cifs_iovec_read to use async I/O. This also raises the limit on the rsize for uncached reads. We first allocate a set of pages to hold the replies, then issue the reads in parallel and then collect the replies and copy the results into the iovec. A possible future optimization would be to kmap and inline the iovec buffers and read the data directly from the socket into that. That would require some rather complex conversion of the iovec into a kvec however. Signed-off-by: Jeff Layton <jlayton@redhat.com>
| * cifs: add wrapper for cifs_async_readv to retry opening fileJeff Layton2012-05-161-9/+18
| | | | | | | | | | | | We'll need this same bit of code for the uncached case. Signed-off-by: Jeff Layton <jlayton@redhat.com>
| * cifs: add refcounting to cifs_readdata structuresJeff Layton2012-05-163-7/+19
| | | | | | | | | | | | | | | | | | This isn't strictly necessary for the async readpages code, but the uncached version will need to be able to collect the replies after issuing the calls. Add a kref to cifs_readdata and use change the code to take and put references appropriately. Signed-off-by: Jeff Layton <jlayton@redhat.com>
OpenPOWER on IntegriCloud