xfs: support ability to wait on new inodes
authorBrian Foster <bfoster@redhat.com>
Wed, 26 Apr 2017 15:30:39 +0000 (08:30 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 7 Jun 2017 10:07:51 +0000 (12:07 +0200)
commite86b616b5b9ed5023ceef154764e327507e30007
tree1b60b3be4d341480a9d715bd1bdd59a20fe370e3
parent10f0b2c3c225bae7eddf88a18466b9133a716c72
xfs: support ability to wait on new inodes

commit 756baca27fff3ecaeab9dbc7a5ee35a1d7bc0c7f upstream.

Inodes that are inserted into the perag tree but still under
construction are flagged with the XFS_INEW bit. Most contexts either
skip such inodes when they are encountered or have the ability to
handle them.

The runtime quotaoff sequence introduces a context that must wait
for construction of such inodes to correctly ensure that all dquots
in the fs are released. In anticipation of this, support the ability
to wait on new inodes. Wake the appropriate bit when XFS_INEW is
cleared.

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_icache.c
fs/xfs/xfs_inode.h