xfs: fix stale inode flush avoidance
authorDave Chinner <david@fromorbit.com>
Thu, 11 Mar 2010 22:42:11 +0000 (09:42 +1100)
committerGreg Kroah-Hartman <gregkh@suse.de>
Mon, 26 Apr 2010 14:41:15 +0000 (07:41 -0700)
commitbcb56a66459dafdc87b48d2e84cbd73eb4fbc385
treea047f8dd840ee17feeeed4164d1c9f55cf8a1765
parent9e1e9675fb29c0e94a7c87146138aa2135feba2f
xfs: fix stale inode flush avoidance

commit 4b6a46882cca8349e8942e2650c33b11bc571c92 upstream

When reclaiming stale inodes, we need to guarantee that inodes are
unpinned before returning with a "clean" status. If we don't we can
reclaim inodes that are pinned, leading to use after free in the
transaction subsystem as transactions complete.

Signed-off-by: Dave Chinner <david@fromorbit.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Alex Elder <aelder@sgi.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
fs/xfs/xfs_inode.c