[PATCH] reiserfs: eliminate minimum window size for bitmap searching
authorJeff Mahoney <jeffm@suse.com>
Sun, 1 Oct 2006 06:28:45 +0000 (23:28 -0700)
committerLinus Torvalds <torvalds@g5.osdl.org>
Sun, 1 Oct 2006 07:39:28 +0000 (00:39 -0700)
commit9ea0f9499d15c49df23e7aac4332d830c40e12d0
treee6a68575b3aa3a6ee0db0acf1c6469c0308bf0a7
parent5a2618e6a972f305496daa257a56a09dd3acca29
[PATCH] reiserfs: eliminate minimum window size for bitmap searching

When a file system becomes fragmented (using MythTV, for example), the
bigalloc window searching ends up causing huge performance problems.  In a
file system presented by a user experiencing this bug, the file system was
90% free, but no 32-block free windows existed on the entire file system.
This causes the allocator to scan the entire file system for each 128k
write before backing down to searching for individual blocks.

In the end, finding a contiguous window for all the blocks in a write is an
advantageous special case, but one that can be found naturally when such a
window exists anyway.

This patch removes the bigalloc window searching, and has been proven to
fix the test case described above.

Signed-off-by: Jeff Mahoney <jeffm@suse.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
fs/reiserfs/bitmap.c