]> err.no Git - linux-2.6/commit
[PATCH] O(1) sb list traversing on syncs
authorKirill Korotaev <dev@sw.ru>
Thu, 23 Jun 2005 07:09:54 +0000 (00:09 -0700)
committerLinus Torvalds <torvalds@ppc970.osdl.org>
Thu, 23 Jun 2005 16:45:27 +0000 (09:45 -0700)
commit618f06362ae3f60f95d7b0e666de25ee6ae35679
tree4415b4e590913e16535704168ea74c6af5a93c48
parent4fea2838aa00b9e59efde974dcdb455608192811
[PATCH] O(1) sb list traversing on syncs

This patch removes O(n^2) super block loops in sync_inodes(),
sync_filesystems() etc.  in favour of using __put_super_and_need_restart()
which I introduced earlier.  We faced a noticably long freezes on sb
syncing when there are thousands of super blocks in the system.

Signed-Off-By: Kirill Korotaev <dev@sw.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
fs/fs-writeback.c
fs/quota.c
fs/super.c