[PATCH 0/4] reiserfs: load bitmap blocks on demand

From: Jeff Mahoney
Date: Tue Jan 17 2006 - 15:28:06 EST



Hello all -

The following patchset allows reiserfs to load its bitmap blocks on demand
like other file systems.

There are several reasons for this:
* Bitmap blocks, relative to other metadata blocks, are among the least used
blocks in the file system. We don't cache the root node block, so why do
we pin the bitmaps?

* Loading all the bitmaps at file system mount takes a lot of time. On multi-
TB file systems, I've heard reports of file systems taking 15 minutes to
mount. There go your 5 9's after one reboot.

* Keeping bitmaps in memory isn't free. The old argument of "large storage
implies large memory" is no longer true. It's possible to assemble a multi-
TB RAID array for a desktop for under $1000 these days. Memory prices have
not fallen at the same rate.

There are 4 patches:

reiserfs-01-fix-is_reusable-bitmap-check.diff
This fixes up the is_reusable() function up to calculate valid bitmap
block numbers rather than compare them to the blocks of the pinned buffer
heads for the bitmap blocks.

reiserfs-02-bitmap-info-bh-cleanup.diff
Cleans up SB_AP_BITMAP(s)[n].bh accesses to use a temporary variable. It
also uses proper bh refcounting, which may not make sense at this stage -
but it's used later.

reiserfs-03-bitmap-loading-move.diff
Moves the bitmap loading operations out of super.c and into bitmap.c where
they belong.

reiserfs-04-on-demand-bitmap-loading.diff
Actually implements the on-demand loading of bitmaps.

I've run some overnight testing on this under heavy load, but I'd still like
to see more testing before acceptance into mainline.

-Jeff

(Sent to reiserfs-list this morning)

--
Jeff Mahoney
SUSE Labs
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/