patch: reiserfs for 2.3.49

From: Chris Mason (mason@suse.com)
Date: Sat Mar 11 2000 - 11:59:40 EST


Hello everyone,

ReiserFS for 2.3.49 is now available for testing, comments, and review.
You can get the code from:

ftp://ftp.devlinux.com/pub/namesys/2.3-beta/linux-2.3.49-reiserfs-3.6.1-patch.gz

This is beta code, and support for the disk format in our code for the
2.2. kernel is turned off right now (more on that below).

We realize this isn't as useful as a 2.3.51 patch, which we are working on
right now. Looking through the VFS changes in 2.3.51, I don't anticipate
problems porting up, but I wanted to get this code out just in case.
Look for the 2.3.51 patch Sunday night, perhaps on Monday if things get
really ugly.

I've added a new call in the super_operations struct, called read_inode2.
This is a kludge to pass all 64 bits reiserfs_read_inode needs to find
something on disk. As I understand things, the VFS changes in progress to
make knfsd happy will allow us to get rid of the read_inode2 hack.

Big differences from our 2.2 code:

We've changed our stat data and the keys used to find objects in the
tree. We have code in place to support the old disk format, but we
concentrated on testing the new format first, so that compatibility code
is disabled right now.

You won't be able to mount a 2.2 formatted disk with this patch. The new
format was designed around making old format support easy, we are
committed to providing it once we are convinced the new code is solid.

The horrible things we did to linux/fs/buffer.c have been removed.

64 bit file offsets, and disk format should be safe for use on alphas.
The alpha port is not finished, but it is at least possible now. If you
are interested in helping, please let us know.

page cache integration resulted in big changes in when we pack
file tails. Files with tails will be slower than they were in the 2.2
code, until we make better use of the address space operations.

What still needs to be done:

2.3.51 port, more testing.

new format support ported back to 2.2.X kernels. This comes after testing
the old format support in 2.3.X kernels, so it should take at least a
month.

fsck needs to be ported into the new format, so does the resizer.

memory pressure hooks would be very useful. We have a hard to reproduce
deadlock under very high swap load, where kswapd ends up waiting on the
log while trying to flush inodes to disk. I have a work around planned
(all in the journal code), it won't take long to code, but it will take a
few days to test right.

Code cleanup (esp. the journal API)

journal tuning code, including per filesystem journal sizes. I've been
promising this forever. Now that our 2.3 changes are almost done, I can
finally think about adding it. The super has all the fields need to make
this happen already.

A few misc bug fixes from the 2.2.X code need to be ported in.

Again, this is beta code, please don't put data on it you care about yet.

-chris

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Wed Mar 15 2000 - 21:00:19 EST