xfs: drop iolock from reclaim context to appease lockdep
authorBrian Foster <bfoster@redhat.com>
Tue, 11 Apr 2017 17:50:05 +0000 (10:50 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 7 Jun 2017 10:07:51 +0000 (12:07 +0200)
commit4e2762878a59072f2ba1e02987d22ef77921791e
tree08d77a8303fbc2e27021bc8d35b712c5c14549d7
parent4e8163fc8159590c031783bfb0d548ca45f4ebdf
xfs: drop iolock from reclaim context to appease lockdep

commit 3b4683c294095b5f777c03307ef8c60f47320e12 upstream.

Lockdep complains about use of the iolock in inode reclaim context
because it doesn't understand that reclaim has the last reference to
the inode, and thus an iolock->reclaim->iolock deadlock is not
possible.

The iolock is technically not necessary in xfs_inactive() and was
only added to appease an assert in xfs_free_eofblocks(), which can
be called from other non-reclaim contexts. Therefore, just kill the
assert and drop the use of the iolock from reclaim context to quiet
lockdep.

Signed-off-by: Brian Foster <bfoster@redhat.com>
Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
fs/xfs/xfs_bmap_util.c
fs/xfs/xfs_inode.c