[PATCH] remove sb->s_files and file_list_lock usage in dquot.c
authorChristoph Hellwig <hch@lst.de>
Mon, 12 Feb 2007 08:51:58 +0000 (00:51 -0800)
committerLinus Torvalds <torvalds@woody.linux-foundation.org>
Mon, 12 Feb 2007 17:48:28 +0000 (09:48 -0800)
commitd003fb70fd356d0684ee0cd37a785e058c8678de
tree2367a8afa16defd85633665fbdb2a9192cbe6081
parentfb58b7316a99703afb8d076b0e5f3e1e387e4b30
[PATCH] remove sb->s_files and file_list_lock usage in dquot.c

Iterate over sb->s_inodes instead of sb->s_files in add_dquot_ref.  This
reduces list search and lock hold time aswell as getting rid of one of the
few uses of file_list_lock which Ingo identified as a scalability problem.

Previously we called dq_op->initialize for every inode handing of a
writeable file that wasn't initialized before.  Now we're calling it for
every inode that has a non-zero i_writecount, aka a writeable file
descriptor refering to it.

Thanks a lot to Jan Kara for running this patch through his quota test
harness.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
fs/dquot.c