xfs: use generic percpu counters for free inode counter
authorDave Chinner <dchinner@redhat.com>
Mon, 23 Feb 2015 10:19:53 +0000 (21:19 +1100)
committerDave Chinner <david@fromorbit.com>
Mon, 23 Feb 2015 10:19:53 +0000 (21:19 +1100)
commite88b64ea1f3da64dbb52636377be295c90367377
tree0031d3ed6f296981fdcd2b9f4cf3cebc8b557ab8
parent501ab32387533924b211cacff36d19296414ec0b
xfs: use generic percpu counters for free inode counter

XFS has hand-rolled per-cpu counters for the superblock since before
there was any generic implementation. The free inode counter is not
used for any limit enforcement - the per-AG free inode counters are
used during allocation to determine if there are inode available for
allocation.

Hence we don't need any of the complexity of the hand-rolled
counters and we can simply replace them with generic per-cpu
counters similar to the inode counter.

This version introduces a xfs_mod_ifree() helper function from
Christoph Hellwig.

Signed-off-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Brian Foster <bfoster@redhat.com>
Signed-off-by: Dave Chinner <david@fromorbit.com>
fs/xfs/libxfs/xfs_sb.c
fs/xfs/xfs_fsops.c
fs/xfs/xfs_mount.c
fs/xfs/xfs_mount.h
fs/xfs/xfs_super.c
fs/xfs/xfs_trans.c