summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Don't pass inode to ->d_hash() and ->d_compare()Linus Torvalds2013-06-2923-165/+108
| | | | | | | | | | | | Instances either don't look at it at all (the majority of cases) or only want it to find the superblock (which can be had as dentry->d_sb). A few cases that want more are actually safe with dentry->d_inode - the only precaution needed is the check that it hadn't been replaced with NULL by rmdir() or by overwriting rename(), which case should be simply treated as cache miss. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* minix: bug widening a binary "not" operationDan Carpenter2013-06-291-1/+1
| | | | | | | | | | | "chunk_size" is an unsigned int and "pos" is an unsigned long. The "& ~(chunk_size-1)" operation clears the high 32 bits unintentionally. The ALIGN() macro does the correct thing. Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Cc: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
* splice: lift checks from do_splice_from() into callersAl Viro2013-06-291-11/+20
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* constify rw_verify_area()Al Viro2013-06-294-2/+4
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* ps3flash: switch to generic_file_llseek_size()Al Viro2013-06-291-26/+2
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* wlcore: use *ppos, not file->f_posAl Viro2013-06-291-2/+2
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* bfa: switch to fixed_size_llseek()Al Viro2013-06-291-25/+3
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* fnic: switch to fixed_size_llseek()Al Viro2013-06-291-14/+2
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* vc: switch to fixed_size_llseek()Al Viro2013-06-291-16/+1
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* eisa_eeprom: switch to fixed_size_llseek()Al Viro2013-06-291-13/+2
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* bna: switch to fixed_size_llseek()Al Viro2013-06-291-21/+1
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* zorro: switch to fixed_size_llseek()Al Viro2013-06-291-21/+1
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* mtdchar: switch to fixed_size_llseek()Al Viro2013-06-291-19/+1
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* new helper: fixed_size_llseek()Al Viro2013-06-292-0/+22
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* ecryptfs: switch ecryptfs_decode_and_decrypt_filename() from dentry to sbAl Viro2013-06-294-10/+8
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* fuse: another open-coded file_inode()Al Viro2013-06-291-2/+1
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* btrfs: more open-coded file_inode()Al Viro2013-06-291-4/+4
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* fanotify: quit wanking with FASYNC in ->release()Al Viro2013-06-291-3/+0
| | | | | | | | | ... especially since there's no way to get that sucker on the list fsnotify_fasync() works with - the only thing adding to it is fsnotify_fasync() itself and it's never called for fanotify files while they are opened. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* comedi: quit wanking with FASYNC in ->release()Al Viro2013-06-291-3/+0
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* more open-coded file_inode() callsAl Viro2013-06-293-4/+4
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* kill find_inode_number()Al Viro2013-06-293-32/+0
| | | | | | | | the only remaining caller (in ncpfs) is guaranteed to return 0 - we only hit it if we'd just checked that there's no dentry with such name. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* coda: don't bother with find_inode_number()Al Viro2013-06-291-7/+1
| | | | | | | the fallback it's using for dcache misses is actually the same value we would've used for inumber anyway. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* proc_fill_cache(): clean up, get rid of pointless find_inode_number() useAl Viro2013-06-291-23/+13
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* proc_fill_cache(): just make instantiate_t return intAl Viro2013-06-294-49/+43
| | | | | | all instances always return ERR_PTR(-E...) or NULL, anyway Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* proc_pid_readdir(): stop wanking with proc_fill_cache() for /proc/selfAl Viro2013-06-291-3/+3
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* proc_fill_cache(): kill pointless checkAl Viro2013-06-291-4/+2
| | | | | | we'd just checked that child->d_inode is non-NULL, for fuck sake! Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* ncpfs: don't bother with EBUSY on removal of busy directoriesAl Viro2013-06-292-11/+4
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* don't call file_pos_write() if vfs_{read,write}{,v}() failsAl Viro2013-06-291-6/+12
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* SELinux: Institute file_path_has_perm()David Howells2013-06-291-6/+18
| | | | | | | | | | | | | | Create a file_path_has_perm() function that is like path_has_perm() but instead takes a file struct that is the source of both the path and the inode (rather than getting the inode from the dentry in the path). This is then used where appropriate. This will be useful for situations like unionmount where it will be possible to have an apparently-negative dentry (eg. a fallthrough) that is open with the file struct pointing to an inode on the lower fs. Signed-off-by: David Howells <dhowells@redhat.com> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* Replace a bunch of file->dentry->d_inode refs with file_inode()David Howells2013-06-293-6/+6
| | | | | | | | | | Replace a bunch of file->dentry->d_inode refs with file_inode(). In __fput(), use file->f_inode instead so as not to be affected by any tricks that file_inode() might grow. Signed-off-by: David Howells <dhowells@redhat.com> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* udf: provide ->tmpfile()Al Viro2013-06-291-0/+24
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* ext3 ->tmpfile() supportAl Viro2013-06-291-1/+46
| | | | | | | In this case we do need a bit more than usual, due to orphan list handling. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* allow the temp files created by open() to be linked toAl Viro2013-06-293-3/+18
| | | | | | | | O_TMPFILE | O_CREAT => linkat() with AT_SYMLINK_FOLLOW and /proc/self/fd/<n> as oldpath (i.e. flink()) will create a link O_TMPFILE | O_CREAT | O_EXCL => ENOENT on attempt to link those guys Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [O_TMPFILE] it's still short a few helpers, but infrastructure should be OK ↵Al Viro2013-06-2912-5/+164
| | | | | | now... Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* allow build_open_flags() to return an errorAl Viro2013-06-294-31/+41
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* lift file_*_write out of do_splice_direct()Al Viro2013-06-292-2/+2
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* lift file_*_write out of do_splice_from()Al Viro2013-06-291-4/+5
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* do_last(): fix missing checks for LAST_BIND caseAl Viro2013-06-291-21/+3
| | | | | | | /proc/self/cwd with O_CREAT should fail with EISDIR. /proc/self/exe, OTOH, should fail with ENOTDIR when opened with O_DIRECTORY. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* pcm_native: switch to fdget()/fdput()Al Viro2013-06-291-25/+15
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] constify ->actorAl Viro2013-06-299-68/+57
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] ->readdir() is goneAl Viro2013-06-297-16/+13
| | | | | | everything's converted to ->iterate() Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert ecryptfsAl Viro2013-06-291-20/+15
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert codaAl Viro2013-06-291-58/+19
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert ocfs2Al Viro2013-06-294-113/+61
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert fatfsAl Viro2013-06-291-50/+54
| | | | | | | ... pox upon the idiotic ioctls; life would be much easier without those. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert xfsAl Viro2013-06-297-61/+44
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert btrfsAl Viro2013-06-293-40/+21
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert hostfsAl Viro2013-06-291-7/+6
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert afsAl Viro2013-06-291-62/+37
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert ncpfsAl Viro2013-06-291-43/+35
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
OpenPOWER on IntegriCloud