diff options
author | Steve French <sfrench@us.ibm.com> | 2005-10-27 12:53:03 -0700 |
---|---|---|
committer | Steve French <sfrench@us.ibm.com> | 2005-10-27 12:53:03 -0700 |
commit | 04290949b3daef35d6279dcc05f01b549ac1772b (patch) | |
tree | d34203b71660b9b4f7676f5bae7e0b9838ff161f /fs | |
parent | d6d3f5bc68be3c4ab84e6f1f9db92291da671504 (diff) | |
parent | 72ab373a5688a78cbdaf3bf96012e597d5399bb7 (diff) |
Merge with /pub/scm/linux/kernel/git/torvalds/linux-2.6.git
Diffstat (limited to 'fs')
-rw-r--r-- | fs/aio.c | 6 | ||||
-rw-r--r-- | fs/hfsplus/super.c | 1 | ||||
-rw-r--r-- | fs/inotify.c | 1 |
3 files changed, 8 insertions, 0 deletions
@@ -1397,6 +1397,9 @@ static ssize_t aio_setup_iocb(struct kiocb *kiocb) if (unlikely(!access_ok(VERIFY_WRITE, kiocb->ki_buf, kiocb->ki_left))) break; + ret = security_file_permission(file, MAY_READ); + if (unlikely(ret)) + break; ret = -EINVAL; if (file->f_op->aio_read) kiocb->ki_retry = aio_pread; @@ -1409,6 +1412,9 @@ static ssize_t aio_setup_iocb(struct kiocb *kiocb) if (unlikely(!access_ok(VERIFY_READ, kiocb->ki_buf, kiocb->ki_left))) break; + ret = security_file_permission(file, MAY_WRITE); + if (unlikely(ret)) + break; ret = -EINVAL; if (file->f_op->aio_write) kiocb->ki_retry = aio_pwrite; diff --git a/fs/hfsplus/super.c b/fs/hfsplus/super.c index fd0f0f050e1..452fc1fdbd3 100644 --- a/fs/hfsplus/super.c +++ b/fs/hfsplus/super.c @@ -50,6 +50,7 @@ static void hfsplus_read_inode(struct inode *inode) init_MUTEX(&HFSPLUS_I(inode).extents_lock); HFSPLUS_I(inode).flags = 0; HFSPLUS_I(inode).rsrc_inode = NULL; + atomic_set(&HFSPLUS_I(inode).opencnt, 0); if (inode->i_ino >= HFSPLUS_FIRSTUSER_CNID) { read_inode: diff --git a/fs/inotify.c b/fs/inotify.c index a37e9fb1da5..9fbaebfdf40 100644 --- a/fs/inotify.c +++ b/fs/inotify.c @@ -176,6 +176,7 @@ static inline void put_inotify_dev(struct inotify_device *dev) if (atomic_dec_and_test(&dev->count)) { atomic_dec(&dev->user->inotify_devs); free_uid(dev->user); + idr_destroy(&dev->idr); kfree(dev); } } |