diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2011-09-15 01:08:29 +0200 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2011-09-15 01:08:29 +0200 |
commit | 53d872e99520bbc7d83c34a416144e591ef69584 (patch) | |
tree | 313b667c43ed5bc590212e8324662d39afff9412 /fs | |
parent | restore pinning the victim dentry in vfs_rmdir()/vfs_rename_dir() (diff) | |
parent | xfs: fix a use after free in xfs_end_io_direct_write (diff) | |
download | linux-53d872e99520bbc7d83c34a416144e591ef69584.tar.xz linux-53d872e99520bbc7d83c34a416144e591ef69584.zip |
Merge branch 'for-linus' of git://oss.sgi.com/xfs/xfs
* 'for-linus' of git://oss.sgi.com/xfs/xfs:
xfs: fix a use after free in xfs_end_io_direct_write
Diffstat (limited to 'fs')
-rw-r--r-- | fs/xfs/xfs_aops.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/xfs/xfs_aops.c b/fs/xfs/xfs_aops.c index 63e971e2b837..8c37dde4c521 100644 --- a/fs/xfs/xfs_aops.c +++ b/fs/xfs/xfs_aops.c @@ -1300,6 +1300,7 @@ xfs_end_io_direct_write( bool is_async) { struct xfs_ioend *ioend = iocb->private; + struct inode *inode = ioend->io_inode; /* * blockdev_direct_IO can return an error even after the I/O @@ -1331,7 +1332,7 @@ xfs_end_io_direct_write( } /* XXX: probably should move into the real I/O completion handler */ - inode_dio_done(ioend->io_inode); + inode_dio_done(inode); } STATIC ssize_t |