[GIT PULL] Quota scalability series for 4.14-rc1

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



  Hello Linus,

  could you please pull from

git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs.git quota_scaling

The branch contains changes to make quota subsystem more scalable.
Reportedly it improves number of files created per second on ext4
filesystem on fast storage about twice.

Top of the tree is c9ea9df3032e. The full shortlog is:

Jan Kara (28):
      quota: Convert dqio_mutex to rwsem
      quota: Do more fine-grained locking in dquot_acquire()
      quota: Acquire dqio_sem for reading in dquot_get_next_id()
      quota: Acquire dqio_sem for reading in vfs_load_quota_inode()
      quota: Protect dquot writeout with dq_lock
      quota: Push dqio_sem down to ->read_dqblk()
      quota: Remove locking for reading from the old quota format
      quota: Push dqio_sem down to ->write_dqblk()
      quota: Do not acquire dqio_sem for dquot overwrites in v2 format
      quota: Remove locking for writing to the old quota format
      quota: Push dqio_sem down to ->release_dqblk()
      quota: Push dqio_sem down to ->get_next_id()
      quota: Push dqio_sem down to ->write_file_info()
      quota: Push dqio_sem down to ->read_file_info()
      quota: Fix error codes in v2_read_file_info()
      quota: Propagate ->quota_read errors from v2_read_file_info()
      quota: Fix possible corruption of dqi_flags
      quota: Do not dirty bad dquots
      quota: Move locking into clear_dquot_dirty()
      quota: Remove dq_wait_unused from dquot
      quota: Allow disabling tracking of dirty dquots in a list
      ext4: Disable dirty list tracking of dquots when journalling quotas
      quota: Inline functions into their callsites
      quota: Inline inode_{incr,decr}_space() into callsites
      quota: Inline dquot_[re]claim_reserved_space() into callsite
      fs: Provide __inode_get_bytes()
      quota: Reduce contention on dq_data_lock
      quota: Add lock annotations to struct members

The diffstat is

 fs/ext4/super.c          |  26 +--
 fs/ocfs2/quota_global.c  |  36 ++--
 fs/ocfs2/quota_local.c   |  17 +-
 fs/quota/dquot.c         | 504 ++++++++++++++++++++++++-----------------------
 fs/quota/quota_tree.c    |  10 +-
 fs/quota/quota_v1.c      |  11 +-
 fs/quota/quota_v2.c      |  91 +++++++--
 fs/stat.c                |   2 +-
 fs/super.c               |   2 +-
 include/linux/fs.h       |   4 +
 include/linux/quota.h    |  31 +--
 include/linux/quotaops.h |   5 -
 12 files changed, 411 insertions(+), 328 deletions(-)

							Thanks
								Honza

-- 
Jan Kara <jack@xxxxxxxx>
SUSE Labs, CR



[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]
  Powered by Linux