]> git.baikalelectronics.ru Git - kernel.git/commit
xfs: support a union-based filter for eofblocks scans
authorBrian Foster <bfoster@redhat.com>
Thu, 24 Jul 2014 09:44:28 +0000 (19:44 +1000)
committerDave Chinner <david@fromorbit.com>
Thu, 24 Jul 2014 09:44:28 +0000 (19:44 +1000)
commit371f78bc6282a6ac621a4f9c93b96c8c1a7a6179
treeb705d85eb1370c092b497ae663ee5f14becfc116
parenta3e6212d3977bfb0666300ef7954205a86ae7b2f
xfs: support a union-based filter for eofblocks scans

From: Brian Foster <bfoster@redhat.com>

The eofblocks scan inode filter uses intersection logic by default.
E.g., specifying both user and group quota ids filters out inodes that
are not covered by both the specified user and group quotas. This is
suitable for behavior exposed to userspace.

Scans that are initiated from within the kernel might require more broad
semantics, such as scanning all inodes under each quota associated with
an inode to alleviate low free space conditions in each.

Create the XFS_EOF_FLAGS_UNION flag to support a conditional union-based
filtering algorithm for eofblocks scans. This flag is intentionally left
out of the valid mask as it is not supported for scans initiated from
userspace.

Signed-off-by: Brian Foster <bfoster@redhat.com>
Reviewed-by: Dave Chinner <dchinner@redhat.com>
Signed-off-by: Dave Chinner <david@fromorbit.com>
fs/xfs/xfs_fs.h
fs/xfs/xfs_icache.c