]> git.kernelconcepts.de Git - karo-tx-linux.git/commit
ext4: fix possible use-after-free with AIO
authorJan Kara <jack@suse.cz>
Wed, 30 Jan 2013 03:48:17 +0000 (22:48 -0500)
committerBen Hutchings <ben@decadent.org.uk>
Wed, 6 Mar 2013 03:23:45 +0000 (03:23 +0000)
commit3e411534ea3be89a7d0ddf4e62e5c5b79d80556a
tree599603efabaebf8e1825d5cceb3bdbe1d0c85716
parent70430b37bf00e72209fb13e5f232db3d4d0b48e9
ext4: fix possible use-after-free with AIO

commit 091e26dfc156aeb3b73bc5c5f277e433ad39331c upstream.

Running AIO is pinning inode in memory using file reference. Once AIO
is completed using aio_complete(), file reference is put and inode can
be freed from memory. So we have to be sure that calling aio_complete()
is the last thing we do with the inode.

Reviewed-by: Carlos Maiolino <cmaiolino@redhat.com>
Acked-by: Jeff Moyer <jmoyer@redhat.com>
Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
[bwh: Backported to 3.2: adjust context]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
fs/ext4/inode.c
fs/ext4/page-io.c