summaryrefslogtreecommitdiff
path: root/fs/block_dev.c
diff options
context:
space:
mode:
authorJan Kara <jack@suse.cz>2017-08-07 14:19:50 +0300
committerJan Kara <jack@suse.cz>2017-08-17 23:07:59 +0300
commit7b9ca4c61bc278b771fb57d6290a31ab1fc7fdac (patch)
tree3e9c7464525efa2a9dd50d02e7fe8f7df45a4961 /fs/block_dev.c
parentf4a8116a4c8c8f754d0ec1498a2ba4b63d114e6a (diff)
downloadlinux-7b9ca4c61bc278b771fb57d6290a31ab1fc7fdac.tar.xz
quota: Reduce contention on dq_data_lock
dq_data_lock is currently used to protect all modifications of quota accounting information, consistency of quota accounting on the inode, and dquot pointers from inode. As a result contention on the lock can be pretty heavy. Reduce the contention on the lock by protecting quota accounting information by a new dquot->dq_dqb_lock and consistency of quota accounting with inode usage by inode->i_lock. This change reduces time to create 500000 files on ext4 on ramdisk by 50 different processes in separate directories by 6% when user quota is turned on. When those 50 processes belong to 50 different users, the improvement is about 9%. Signed-off-by: Jan Kara <jack@suse.cz>
Diffstat (limited to 'fs/block_dev.c')
0 files changed, 0 insertions, 0 deletions