Hello! These two changesets contain fixes for reiserfs. They fix issue with handling of displacing_large_files allocator option and a problem with remounting from readwrite to readwrite mode if FS holds some deleted but not yet closed files. You can pull these from bk://thebsh.namesys.com/bk/reiser3-linux-2.5 Diffstats: 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.587 -> 1.588 # fs/reiserfs/inode.c 1.66 -> 1.67 # include/linux/reiserfs_fs.h 1.41 -> 1.42 # # The following is the BitKeeper ChangeSet Log # -------------------------------------------- # 02/09/10 green@angband.namesys.com 1.588 # reiserfs: Take into account file information even when not doing preallocation. Fixes 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:38:06 2002 +++ b/fs/reiserfs/inode.c Tue Sep 10 13:38:06 2002 @@ -490,7 +490,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); } int reiserfs_get_block (struct inode * inode, sector_t 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:38:06 2002 +++ b/include/linux/reiserfs_fs.h Tue Sep 10 13:38:06 2002 @@ -2076,13 +2076,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.588 -> 1.589 # fs/reiserfs/super.c 1.52 -> 1.53 # # The following is the BitKeeper ChangeSet Log # -------------------------------------------- # 02/09/10 green@angband.namesys.com 1.589 # 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:35:59 2002 +++ b/fs/reiserfs/super.c Tue Sep 10 13:35:59 2002 @@ -716,7 +716,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; @@ -732,6 +732,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 */ + REISERFS_SB(s)->s_mount_state = sb_umount_state(rs) ; s->s_flags &= ~MS_RDONLY ; /* now it is safe to call journal_begin */ journal_begin(&th, s, 10) ;