linux/fs/xfs
Mitsuo Hayasaka c922bbc819 xfs: make inode quota check more general
The xfs checks quota when reserving disk blocks and inodes. In the block
reservation, it checks if the total number of blocks including current
usage and new reservation exceed quota. In the inode reservation,
it checks using the total number of inodes including only current usage
without new reservation. However, this inode quota check works well
since the caller of xfs_trans_dquot() always sets the argument of the
number of new inode reservation to 1 or 0 and inode is reserved one by
one in current xfs.

To make it more general, this patch changes it to the same way as the
block quota check.

Signed-off-by: Mitsuo Hayasaka <mitsuo.hayasaka.hu@hitachi.com>
Cc: Ben Myers <bpm@sgi.com>
Cc: Alex Elder <elder@kernel.org>
Cc: Christoph Hellwig <hch@lst.de>
Reviewed-by: Mark Tinguely <tinguely@sgi.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Ben Myers <bpm@sgi.com>
2012-02-21 10:12:43 -06:00
..
Kconfig
kmem.c
kmem.h xfs: use a normal shrinker for the dquot freelist 2012-02-10 12:02:05 -06:00
Makefile
mrlock.h
time.h
uuid.c
uuid.h
xfs_acl.c
xfs_acl.h
xfs_ag.h
xfs_alloc_btree.c
xfs_alloc_btree.h
xfs_alloc.c
xfs_alloc.h
xfs_aops.c xfs: remove the i_new_size field in struct xfs_inode 2012-01-17 15:10:19 -06:00
xfs_aops.h
xfs_attr_leaf.c xfs: remove the if_ext_max field in struct xfs_ifork 2012-01-17 15:02:28 -06:00
xfs_attr_leaf.h
xfs_attr_sf.h
xfs_attr.c
xfs_attr.h
xfs_bit.c
xfs_bit.h
xfs_bmap_btree.c
xfs_bmap_btree.h
xfs_bmap.c xfs: remove the i_size field in struct xfs_inode 2012-01-17 15:08:53 -06:00
xfs_bmap.h
xfs_btree.c
xfs_btree.h
xfs_buf_item.c
xfs_buf_item.h
xfs_buf.c
xfs_buf.h
xfs_da_btree.c
xfs_da_btree.h
xfs_dfrag.c xfs: remove the if_ext_max field in struct xfs_ifork 2012-01-17 15:02:28 -06:00
xfs_dfrag.h
xfs_dinode.h
xfs_dir2_block.c
xfs_dir2_data.c
xfs_dir2_format.h
xfs_dir2_leaf.c
xfs_dir2_node.c
xfs_dir2_priv.h
xfs_dir2_sf.c
xfs_dir2.c
xfs_dir2.h
xfs_discard.c
xfs_discard.h
xfs_dquot_item.c
xfs_dquot_item.h
xfs_dquot.c xfs: change available ranges of softlimit and hardlimit in quota check 2012-02-21 10:12:43 -06:00
xfs_dquot.h
xfs_error.c
xfs_error.h
xfs_export.c
xfs_export.h
xfs_extfree_item.c
xfs_extfree_item.h
xfs_file.c xfs: cleanup xfs_file_aio_write 2012-01-17 15:12:33 -06:00
xfs_filestream.c
xfs_filestream.h
xfs_fs_subr.c xfs: remove the i_size field in struct xfs_inode 2012-01-17 15:08:53 -06:00
xfs_fs.h
xfs_fsops.c
xfs_fsops.h
xfs_globals.c
xfs_ialloc_btree.c
xfs_ialloc_btree.h
xfs_ialloc.c
xfs_ialloc.h
xfs_iget.c xfs: remove the i_new_size field in struct xfs_inode 2012-01-17 15:10:19 -06:00
xfs_inode_item.c xfs: replace i_pin_wait with a bit waitqueue 2012-01-17 15:07:54 -06:00
xfs_inode_item.h
xfs_inode.c xfs: remove the i_size field in struct xfs_inode 2012-01-17 15:08:53 -06:00
xfs_inode.h xfs: remove the i_new_size field in struct xfs_inode 2012-01-17 15:10:19 -06:00
xfs_inum.h
xfs_ioctl32.c
xfs_ioctl32.h
xfs_ioctl.c
xfs_ioctl.h
xfs_iomap.c xfs: remove the i_size field in struct xfs_inode 2012-01-17 15:08:53 -06:00
xfs_iomap.h
xfs_iops.c xfs: remove the i_size field in struct xfs_inode 2012-01-17 15:08:53 -06:00
xfs_iops.h
xfs_itable.c
xfs_itable.h
xfs_linux.h
xfs_log_cil.c
xfs_log_priv.h
xfs_log_recover.c xfs: change available ranges of softlimit and hardlimit in quota check 2012-02-21 10:12:43 -06:00
xfs_log_recover.h
xfs_log.c
xfs_log.h
xfs_message.c
xfs_message.h
xfs_mount.c
xfs_mount.h
xfs_mru_cache.c
xfs_mru_cache.h
xfs_qm_bhv.c
xfs_qm_stats.c xfs: use a normal shrinker for the dquot freelist 2012-02-10 12:02:05 -06:00
xfs_qm_stats.h
xfs_qm_syscalls.c xfs: change available ranges of softlimit and hardlimit in quota check 2012-02-21 10:12:43 -06:00
xfs_qm.c xfs: use a normal shrinker for the dquot freelist 2012-02-10 12:02:05 -06:00
xfs_qm.h xfs: use a normal shrinker for the dquot freelist 2012-02-10 12:02:05 -06:00
xfs_quota_priv.h
xfs_quota.h
xfs_quotaops.c
xfs_rename.c
xfs_rtalloc.c
xfs_rtalloc.h
xfs_rw.c
xfs_rw.h
xfs_sb.h
xfs_stats.c
xfs_stats.h
xfs_super.c xfs: replace i_pin_wait with a bit waitqueue 2012-01-17 15:07:54 -06:00
xfs_super.h
xfs_sync.c xfs: replace i_flock with a sleeping bitlock 2012-01-17 15:06:45 -06:00
xfs_sync.h
xfs_sysctl.c
xfs_sysctl.h
xfs_trace.c
xfs_trace.h xfs: use a normal shrinker for the dquot freelist 2012-02-10 12:02:05 -06:00
xfs_trans_ail.c
xfs_trans_buf.c
xfs_trans_dquot.c xfs: make inode quota check more general 2012-02-21 10:12:43 -06:00
xfs_trans_extfree.c
xfs_trans_inode.c
xfs_trans_priv.h
xfs_trans_space.h
xfs_trans.c XFS: xfs_trans_add_item() - don't assign in ASSERT() when compare is intended 2012-02-13 17:06:39 -06:00
xfs_trans.h
xfs_types.h
xfs_utils.c
xfs_utils.h
xfs_vnode.h
xfs_vnodeops.c xfs: Fix missing xfs_iunlock() on error recovery path in xfs_readlink() 2012-01-25 11:01:31 -06:00
xfs_vnodeops.h
xfs_xattr.c
xfs.h