Hello! These 3 changesets are trivial changes to reiserfs: adding back mistakenly forgotten "attrs" mount option, fix a problem with displacing_large_files allocator option and fix a bug in remounting code on remount from readwarite to readwrite mode that can cause livelock if there was delayed unlinks scheduled on the filesystem. You can pull these from: bk://thebsh.namesys.com/bk/reiser3-linux-2.4 Please apply. Diffstats: super.c | 1 + 1 files changed, 1 insertion(+) fs/reiserfs/inode.c | 2 +- include/linux/reiserfs_fs.h | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) super.c | 6 +++++- 1 files changed, 5 insertions(+), 1 deletion(-) Plain text patches: # This is a BitKeeper generated patch for the following project: # Project Name: Linux kernel tree # This patch format is intended for GNU patch command version 2.5 or higher. # This patch includes the following deltas: # ChangeSet 1.589 -> 1.590 # fs/reiserfs/super.c 1.22 -> 1.23 # # The following is the BitKeeper ChangeSet Log # -------------------------------------------- # 02/09/09 green@angband.namesys.com 1.590 # reiserfs: Mistakenly forgotten inode attributes option was added back. # -------------------------------------------- # diff -Nru a/fs/reiserfs/super.c b/fs/reiserfs/super.c --- a/fs/reiserfs/super.c Tue Sep 10 13:49:45 2002 +++ b/fs/reiserfs/super.c Tue Sep 10 13:49:45 2002 @@ -569,6 +569,7 @@ {"hash", 'h', hash, FORCE_HASH_DETECT}, {"resize", 'r', 0, -1}, + {"attrs", 0, 0, REISERFS_ATTRS}, {NULL, 0, 0, 0} }; # This is a BitKeeper generated patch for the following project: # Project Name: Linux kernel tree # This patch format is intended for GNU patch command version 2.5 or higher. # This patch includes the following deltas: # ChangeSet 1.590 -> 1.591 # fs/reiserfs/inode.c 1.35 -> 1.36 # include/linux/reiserfs_fs.h 1.22 -> 1.23 # # The following is the BitKeeper ChangeSet Log # -------------------------------------------- # 02/09/09 green@angband.namesys.com 1.591 # reiserfs: Take into account file information even when not doing preallocation. Files a bug with displacing_large_files option # -------------------------------------------- # diff -Nru a/fs/reiserfs/inode.c b/fs/reiserfs/inode.c --- a/fs/reiserfs/inode.c Tue Sep 10 13:49:46 2002 +++ b/fs/reiserfs/inode.c Tue Sep 10 13:49:46 2002 @@ -511,7 +511,7 @@ return reiserfs_new_unf_blocknrs2(th, inode, allocated_block_nr, path, block); } #endif - return reiserfs_new_unf_blocknrs (th, allocated_block_nr, path, block); + return reiserfs_new_unf_blocknrs (th, inode, allocated_block_nr, path, block); } static int reiserfs_get_block (struct inode * inode, long block, diff -Nru a/include/linux/reiserfs_fs.h b/include/linux/reiserfs_fs.h --- a/include/linux/reiserfs_fs.h Tue Sep 10 13:49:46 2002 +++ b/include/linux/reiserfs_fs.h Tue Sep 10 13:49:46 2002 @@ -1970,13 +1970,14 @@ } extern inline int reiserfs_new_unf_blocknrs (struct reiserfs_transaction_handle *th, + struct inode *inode, b_blocknr_t *new_blocknrs, struct path * path, long block) { reiserfs_blocknr_hint_t hint = { th: th, path: path, - inode: NULL, + inode: inode, block: block, formatted_node: 0, preallocate: 0 # This is a BitKeeper generated patch for the following project: # Project Name: Linux kernel tree # This patch format is intended for GNU patch command version 2.5 or higher. # This patch includes the following deltas: # ChangeSet 1.592 -> 1.593 # fs/reiserfs/super.c 1.23 -> 1.24 # # The following is the BitKeeper ChangeSet Log # -------------------------------------------- # 02/09/10 green@angband.namesys.com 1.593 # reiserfs: Fix a problem with delayed unlinks and remounting RW filesystem RW. # -------------------------------------------- # diff -Nru a/fs/reiserfs/super.c b/fs/reiserfs/super.c --- a/fs/reiserfs/super.c Tue Sep 10 13:49:47 2002 +++ b/fs/reiserfs/super.c Tue Sep 10 13:49:47 2002 @@ -664,7 +664,7 @@ } if (*mount_flags & MS_RDONLY) { - /* remount rean-only */ + /* remount read-only */ if (s->s_flags & MS_RDONLY) /* it is read-only already */ return 0; @@ -680,6 +680,10 @@ journal_mark_dirty(&th, s, SB_BUFFER_WITH_SB (s)); s->s_dirt = 0; } else { + /* remount read-write */ + if (!(s->s_flags & MS_RDONLY)) + return 0; /* We are read-write already */ + s->u.reiserfs_sb.s_mount_state = sb_state(rs) ; s->s_flags &= ~MS_RDONLY ; /* now it is safe to call journal_begin */ journal_begin(&th, s, 10) ;