diff options
author | Darrick J. Wong <darrick.wong@oracle.com> | 2016-08-03 11:31:47 +1000 |
---|---|---|
committer | Dave Chinner <david@fromorbit.com> | 2016-08-03 11:31:47 +1000 |
commit | 8018026ef29756af6144e2e2e8dffc9c2ed0d6f7 (patch) | |
tree | e5c3ea9539212cac5e39a9e47f6ddd557820aa46 /fs/xfs/libxfs/xfs_alloc.h | |
parent | 00f4e4f9073cb6d455c27dc8e92b421edcdc5011 (diff) | |
download | blackbird-op-linux-8018026ef29756af6144e2e2e8dffc9c2ed0d6f7.tar.gz blackbird-op-linux-8018026ef29756af6144e2e2e8dffc9c2ed0d6f7.zip |
xfs: rmap btree add more reserved blocks
Originally-From: Dave Chinner <dchinner@redhat.com>
XFS reserves a small amount of space in each AG for the minimum
number of free blocks needed for operation. Adding the rmap btree
increases the number of reserved blocks, but it also increases the
complexity of the calculation as the free inode btree is optional
(like the rmbt).
Rather than calculate the prealloc blocks every time we need to
check it, add a function to calculate it at mount time and store it
in the struct xfs_mount, and convert the XFS_PREALLOC_BLOCKS macro
just to use the xfs-mount variable directly.
Signed-off-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Brian Foster <bfoster@redhat.com>
Signed-off-by: Dave Chinner <david@fromorbit.com>
Diffstat (limited to 'fs/xfs/libxfs/xfs_alloc.h')
-rw-r--r-- | fs/xfs/libxfs/xfs_alloc.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/xfs/libxfs/xfs_alloc.h b/fs/xfs/libxfs/xfs_alloc.h index cf268b2d0b6c..20b54aa87026 100644 --- a/fs/xfs/libxfs/xfs_alloc.h +++ b/fs/xfs/libxfs/xfs_alloc.h @@ -232,4 +232,6 @@ int xfs_alloc_fix_freelist(struct xfs_alloc_arg *args, int flags); int xfs_free_extent_fix_freelist(struct xfs_trans *tp, xfs_agnumber_t agno, struct xfs_buf **agbp); +xfs_extlen_t xfs_prealloc_blocks(struct xfs_mount *mp); + #endif /* __XFS_ALLOC_H__ */ |