SOURCES: kernel-desktop-reiser4.patch (NEW) - ftp://ftp.namesys.co...

sparky sparky at pld-linux.org
Sun Jun 11 22:53:16 CEST 2006


Author: sparky                       Date: Sun Jun 11 20:53:16 2006 GMT
Module: SOURCES                       Tag: HEAD
---- Log message:
- ftp://ftp.namesys.com/pub/reiser4-for-2.6/2.6.16/reiser4-for-2.6.16-4.patch.gz

---- Files affected:
SOURCES:
   kernel-desktop-reiser4.patch (NONE -> 1.1)  (NEW)

---- Diffs:

================================================================
Index: SOURCES/kernel-desktop-reiser4.patch
diff -u /dev/null SOURCES/kernel-desktop-reiser4.patch:1.1
--- /dev/null	Sun Jun 11 22:53:16 2006
+++ SOURCES/kernel-desktop-reiser4.patch	Sun Jun 11 22:53:11 2006
@@ -0,0 +1,80781 @@
+
+reiser4 for 2.6.16
+
+ Documentation/Changes                         |   12 
+ Documentation/filesystems/reiser4.txt         |   75 
+ fs/Kconfig                                    |    2 
+ fs/Makefile                                   |    1 
+ fs/fs-writeback.c                             |   26 
+ fs/reiser4/Kconfig                            |   31 
+ fs/reiser4/Makefile                           |  100 
+ fs/reiser4/README                             |  125 
+ fs/reiser4/carry_ops.h                        |   42 
+ fs/reiser4/dformat.h                          |   71 
+ fs/reiser4/dscale.h                           |   27 
+ fs/reiser4/entd.h                             |   90 
+ fs/reiser4/estimate.c                         |  111 
+ fs/reiser4/ioctl.h                            |   41 
+ fs/reiser4/kassign.h                          |  110 
+ fs/reiser4/key.c                              |  137 
+ fs/reiser4/ktxnmgrd.h                         |   52 
+ fs/reiser4/oid.c                              |  141 
+ fs/reiser4/page_cache.h                       |   62 
+ fs/reiser4/plugin/Makefile                    |   26 
+ fs/reiser4/plugin/cluster.c                   |   66 
+ fs/reiser4/plugin/compress/Makefile           |    6 
+ fs/reiser4/plugin/compress/compress.h         |   38 
+ fs/reiser4/plugin/compress/minilzo.h          |   94 
+ fs/reiser4/plugin/crypto/cipher.c             |  116 
+ fs/reiser4/plugin/crypto/cipher.h             |   67 
+ fs/reiser4/plugin/crypto/digest.c             |   58 
+ fs/reiser4/plugin/dir/Makefile                |    5 
+ fs/reiser4/plugin/dir/dir.h                   |   36 
+ fs/reiser4/plugin/dir/hashed_dir.c            |   81 
+ fs/reiser4/plugin/dir/seekable_dir.c          |   46 
+ fs/reiser4/plugin/disk_format/Makefile        |    5 
+ fs/reiser4/plugin/disk_format/disk_format.c   |   37 
+ fs/reiser4/plugin/disk_format/disk_format.h   |   27 
+ fs/reiser4/plugin/disk_format/disk_format40.h |   99 
+ fs/reiser4/plugin/fibration.h                 |   37 
+ fs/reiser4/plugin/file/Makefile               |    7 
+ fs/reiser4/plugin/file/symfile.c              |   87 
+ fs/reiser4/plugin/file/symlink.c              |   92 
+ fs/reiser4/plugin/item/Makefile               |   18 
+ fs/reiser4/plugin/item/acl.h                  |   66 
+ fs/reiser4/plugin/item/blackbox.c             |  142 
+ fs/reiser4/plugin/item/blackbox.h             |   33 
+ fs/reiser4/plugin/item/cde.h                  |   87 
+ fs/reiser4/plugin/item/ctail.h                |   89 
+ fs/reiser4/plugin/item/internal.h             |   57 
+ fs/reiser4/plugin/item/sde.h                  |   66 
+ fs/reiser4/plugin/item/tail.h                 |   58 
+ fs/reiser4/plugin/node/Makefile               |    5 
+ fs/reiser4/plugin/node/node.c                 |  131 
+ fs/reiser4/plugin/node/node40.h               |  125 
+ fs/reiser4/plugin/object.h                    |  121 
+ fs/reiser4/plugin/plugin_header.h             |  136 
+ fs/reiser4/plugin/plugin_set.h                |   83 
+ fs/reiser4/plugin/regular.c                   |   44 
+ fs/reiser4/plugin/security/Makefile           |    4 
+ fs/reiser4/plugin/security/perm.c             |   44 
+ fs/reiser4/plugin/security/perm.h             |   82 
+ fs/reiser4/plugin/space/Makefile              |    4 
+ fs/reiser4/plugin/space/bitmap.h              |   47 
+ fs/reiser4/plugin/space/space_allocator.h     |   80 
+ fs/reiser4/plugin/tail_policy.c               |  113 
+ fs/reiser4/pool.h                             |   54 
+ fs/reiser4/readahead.c                        |  138 
+ fs/reiser4/readahead.h                        |   48 
+ fs/reiser4/safe_link.h                        |   29 
+ fs/reiser4/seal.h                             |   49 
+ fs/reiser4/status_flags.h                     |   43 
+ fs/reiser4/tap.h                              |   69 
+ fs/reiser4/tree_mod.h                         |   29 
+ fs/reiser4/tree_walk.h                        |  125 
+ fs/reiser4/vfs_ops.h                          |   58 
+ fs/reiser4/wander.h                           |  135 
+ fs/reiser4/writeout.h                         |   21 
+ include/linux/fs.h                            |    3 
+ lib/radix-tree.c                              |    1 
+ mm/filemap.c                                  |    6 
+ mm/page-writeback.c                           |    2 
+ mm/readahead.c                                |    1 
+
+diff -puN mm/readahead.c~reiser4-export-handle_ra_miss mm/readahead.c
+
+
+ Documentation/Changes                         |   12 
+ Documentation/filesystems/reiser4.txt         |   75 
+ fs/Kconfig                                    |    2 
+ fs/Makefile                                   |    1 
+ fs/fs-writeback.c                             |   26 
+ fs/reiser4/Kconfig                            |   31 
+ fs/reiser4/Makefile                           |  100 
+ fs/reiser4/README                             |  125 
+ fs/reiser4/as_ops.c                           |  389 ++
+ fs/reiser4/block_alloc.c                      | 1139 +++++++
+ fs/reiser4/block_alloc.h                      |  175 +
+ fs/reiser4/blocknrset.c                       |  368 ++
+ fs/reiser4/carry.c                            | 1381 +++++++++
+ fs/reiser4/carry.h                            |  442 +++
+ fs/reiser4/carry_ops.c                        | 2103 ++++++++++++++
+ fs/reiser4/carry_ops.h                        |   42 
+ fs/reiser4/context.c                          |  278 +
+ fs/reiser4/context.h                          |  228 +
+ fs/reiser4/coord.c                            |  937 ++++++
+ fs/reiser4/coord.h                            |  389 ++
+ fs/reiser4/debug.c                            |  300 ++
+ fs/reiser4/debug.h                            |  350 ++
+ fs/reiser4/dformat.h                          |   71 
+ fs/reiser4/dscale.c                           |  174 +
+ fs/reiser4/dscale.h                           |   27 
+ fs/reiser4/entd.c                             |  356 ++
+ fs/reiser4/entd.h                             |   90 
+ fs/reiser4/eottl.c                            |  510 +++
+ fs/reiser4/estimate.c                         |  111 
+ fs/reiser4/export_ops.c                       |  296 ++
+ fs/reiser4/flush.c                            | 3626 ++++++++++++++++++++++++
+ fs/reiser4/flush.h                            |  274 +
+ fs/reiser4/flush_queue.c                      |  681 ++++
+ fs/reiser4/forward.h                          |  258 +
+ fs/reiser4/fsdata.c                           |  803 +++++
+ fs/reiser4/fsdata.h                           |  218 +
+ fs/reiser4/init_super.c                       |  739 +++++
+ fs/reiser4/inode.c                            |  727 ++++
+ fs/reiser4/inode.h                            |  430 ++
+ fs/reiser4/ioctl.h                            |   41 
+ fs/reiser4/jnode.c                            | 1921 +++++++++++++
+ fs/reiser4/jnode.h                            |  711 ++++
+ fs/reiser4/kassign.c                          |  659 ++++
+ fs/reiser4/kassign.h                          |  110 
+ fs/reiser4/key.c                              |  137 
+ fs/reiser4/key.h                              |  384 ++
+ fs/reiser4/ktxnmgrd.c                         |  214 +
+ fs/reiser4/ktxnmgrd.h                         |   52 
+ fs/reiser4/lock.c                             | 1261 ++++++++
+ fs/reiser4/lock.h                             |  272 +
+ fs/reiser4/oid.c                              |  141 
+ fs/reiser4/page_cache.c                       |  712 ++++
+ fs/reiser4/page_cache.h                       |   62 
+ fs/reiser4/plugin/Makefile                    |   26 
+ fs/reiser4/plugin/cluster.c                   |   66 
+ fs/reiser4/plugin/cluster.h                   |  316 ++
+ fs/reiser4/plugin/compress/Makefile           |    6 
+ fs/reiser4/plugin/compress/compress.c         |  370 ++
+ fs/reiser4/plugin/compress/compress.h         |   38 
+ fs/reiser4/plugin/compress/compress_mode.c    |  163 +
+ fs/reiser4/plugin/compress/lzoconf.h          |  420 ++
+ fs/reiser4/plugin/compress/minilzo.c          | 2155 ++++++++++++++
+ fs/reiser4/plugin/compress/minilzo.h          |   94 
+ fs/reiser4/plugin/crypto/cipher.c             |  116 
+ fs/reiser4/plugin/crypto/cipher.h             |   67 
+ fs/reiser4/plugin/crypto/digest.c             |   58 
+ fs/reiser4/plugin/dir/Makefile                |    5 
+ fs/reiser4/plugin/dir/dir.h                   |   36 
+ fs/reiser4/plugin/dir/hashed_dir.c            |   81 
+ fs/reiser4/plugin/dir/seekable_dir.c          |   46 
+ fs/reiser4/plugin/dir_plugin_common.c         |  864 +++++
+ fs/reiser4/plugin/disk_format/Makefile        |    5 
+ fs/reiser4/plugin/disk_format/disk_format.c   |   37 
+ fs/reiser4/plugin/disk_format/disk_format.h   |   27 
+ fs/reiser4/plugin/disk_format/disk_format40.c |  556 +++
+ fs/reiser4/plugin/disk_format/disk_format40.h |   99 
+ fs/reiser4/plugin/fibration.c                 |  174 +
+ fs/reiser4/plugin/fibration.h                 |   37 
+ fs/reiser4/plugin/file/Makefile               |    7 
+ fs/reiser4/plugin/file/cryptcompress.c        | 3817 ++++++++++++++++++++++++++
+ fs/reiser4/plugin/file/cryptcompress.h        |  551 +++
+ fs/reiser4/plugin/file/file.c                 | 2705 ++++++++++++++++++
+ fs/reiser4/plugin/file/file.h                 |  257 +
+ fs/reiser4/plugin/file/invert.c               |  493 +++
+ fs/reiser4/plugin/file/symfile.c              |   87 
+ fs/reiser4/plugin/file/symlink.c              |   92 
+ fs/reiser4/plugin/file/tail_conversion.c      |  728 ++++
+ fs/reiser4/plugin/file_ops.c                  |  167 +
+ fs/reiser4/plugin/file_ops_readdir.c          |  654 ++++
+ fs/reiser4/plugin/file_plugin_common.c        |  929 ++++++
+ fs/reiser4/plugin/hash.c                      |  350 ++
+ fs/reiser4/plugin/inode_ops.c                 |  886 ++++++
+ fs/reiser4/plugin/inode_ops_rename.c          |  904 ++++++
+ fs/reiser4/plugin/item/Makefile               |   18 
+ fs/reiser4/plugin/item/acl.h                  |   66 
+ fs/reiser4/plugin/item/blackbox.c             |  142 
+ fs/reiser4/plugin/item/blackbox.h             |   33 
+ fs/reiser4/plugin/item/cde.c                  | 1007 ++++++
+ fs/reiser4/plugin/item/cde.h                  |   87 
+ fs/reiser4/plugin/item/ctail.c                | 1588 ++++++++++
+ fs/reiser4/plugin/item/ctail.h                |   89 
+ fs/reiser4/plugin/item/extent.c               |  197 +
+ fs/reiser4/plugin/item/extent.h               |  228 +
+ fs/reiser4/plugin/item/extent_file_ops.c      | 1712 +++++++++++
+ fs/reiser4/plugin/item/extent_flush_ops.c     | 1018 ++++++
+ fs/reiser4/plugin/item/extent_item_ops.c      |  882 ++++++
+ fs/reiser4/plugin/item/internal.c             |  392 ++
+ fs/reiser4/plugin/item/internal.h             |   57 
+ fs/reiser4/plugin/item/item.c                 |  727 ++++
+ fs/reiser4/plugin/item/item.h                 |  399 ++
+ fs/reiser4/plugin/item/sde.c                  |  190 +
+ fs/reiser4/plugin/item/sde.h                  |   66 
+ fs/reiser4/plugin/item/static_stat.c          | 1040 +++++++
+ fs/reiser4/plugin/item/static_stat.h          |  219 +
+ fs/reiser4/plugin/item/tail.c                 |  805 +++++
+ fs/reiser4/plugin/item/tail.h                 |   58 
+ fs/reiser4/plugin/node/Makefile               |    5 
+ fs/reiser4/plugin/node/node.c                 |  131 
+ fs/reiser4/plugin/node/node.h                 |  272 +
+ fs/reiser4/plugin/node/node40.c               | 2924 +++++++++++++++++++
+ fs/reiser4/plugin/node/node40.h               |  125 
+ fs/reiser4/plugin/object.c                    |  501 +++
+ fs/reiser4/plugin/object.h                    |  121 
+ fs/reiser4/plugin/plugin.c                    |  533 +++
+ fs/reiser4/plugin/plugin.h                    |  936 ++++++
+ fs/reiser4/plugin/plugin_header.h             |  136 
+ fs/reiser4/plugin/plugin_set.c                |  378 ++
+ fs/reiser4/plugin/plugin_set.h                |   83 
+ fs/reiser4/plugin/regular.c                   |   44 
+ fs/reiser4/plugin/security/Makefile           |    4 
+ fs/reiser4/plugin/security/perm.c             |   44 
+ fs/reiser4/plugin/security/perm.h             |   82 
+ fs/reiser4/plugin/space/Makefile              |    4 
+ fs/reiser4/plugin/space/bitmap.c              | 1592 ++++++++++
+ fs/reiser4/plugin/space/bitmap.h              |   47 
+ fs/reiser4/plugin/space/space_allocator.h     |   80 
+ fs/reiser4/plugin/tail_policy.c               |  113 
+ fs/reiser4/pool.c                             |  236 +
+ fs/reiser4/pool.h                             |   54 
+ fs/reiser4/readahead.c                        |  138 
+ fs/reiser4/readahead.h                        |   48 
+ fs/reiser4/reiser4.h                          |  276 +
+ fs/reiser4/safe_link.c                        |  351 ++
+ fs/reiser4/safe_link.h                        |   29 
+ fs/reiser4/seal.c                             |  217 +
+ fs/reiser4/seal.h                             |   49 
+ fs/reiser4/search.c                           | 1611 ++++++++++
+ fs/reiser4/status_flags.c                     |  176 +
+ fs/reiser4/status_flags.h                     |   43 
+ fs/reiser4/super.c                            |  313 ++
+ fs/reiser4/super.h                            |  468 +++
+ fs/reiser4/super_ops.c                        |  721 ++++
+ fs/reiser4/tap.c                              |  377 ++
+ fs/reiser4/tap.h                              |   69 
+ fs/reiser4/tree.c                             | 1875 ++++++++++++
+ fs/reiser4/tree.h                             |  579 +++
+ fs/reiser4/tree_mod.c                         |  383 ++
+ fs/reiser4/tree_mod.h                         |   29 
+ fs/reiser4/tree_walk.c                        |  926 ++++++
+ fs/reiser4/tree_walk.h                        |  125 
+ fs/reiser4/txnmgr.c                           | 3158 +++++++++++++++++++++
+ fs/reiser4/txnmgr.h                           |  704 ++++
+ fs/reiser4/type_safe_hash.h                   |  320 ++
+ fs/reiser4/vfs_ops.c                          |  267 +
+ fs/reiser4/vfs_ops.h                          |   58 
+ fs/reiser4/wander.c                           | 1799 ++++++++++++
+ fs/reiser4/wander.h                           |  135 
+ fs/reiser4/writeout.h                         |   21 
+ fs/reiser4/znode.c                            | 1028 +++++++
+ fs/reiser4/znode.h                            |  434 ++
+ include/linux/fs.h                            |    3 
+ lib/radix-tree.c                              |    1 
+ mm/filemap.c                                  |    6 
+ mm/page-writeback.c                           |    3 
+ mm/readahead.c                                |    2 
+ 175 files changed, 79645 insertions(+), 12 deletions(-)
+
+diff -puN Documentation/Changes~reiser4-for-2.6.16-3 Documentation/Changes
+--- linux-2.6.16-3/Documentation/Changes~reiser4-for-2.6.16-3	2006-05-30 18:51:49.928551250 +0400
++++ linux-2.6.16-3-vs/Documentation/Changes	2006-05-30 18:51:50.052559000 +0400
+@@ -54,6 +54,7 @@ o  module-init-tools      0.9.10        
+ o  e2fsprogs              1.29                    # tune2fs
+ o  jfsutils               1.1.3                   # fsck.jfs -V
+ o  reiserfsprogs          3.6.3                   # reiserfsck -V 2>&1|grep reiserfsprogs
++o  reiser4progs           1.0.0                   # fsck.reiser4 -V
+ o  xfsprogs               2.6.0                   # xfs_db -V
+ o  pcmciautils            004
+ o  pcmcia-cs              3.1.21                  # cardmgr -V
+@@ -163,6 +164,13 @@ The reiserfsprogs package should be used
+ versions of mkreiserfs, resize_reiserfs, debugreiserfs and
+ reiserfsck. These utils work on both i386 and alpha platforms.
+ 
++Reiser4progs
++------------
++
++The reiser4progs package contains utilities for the reiser4 file system.
++Detailed instructions are provided in the README file located at:
++<ftp://ftp.namesys.com/pub/reiser4progs/README>.
++
+ Xfsprogs
+ --------
+ 
+@@ -344,6 +352,10 @@ Reiserfsprogs
+ -------------
+ o  <http://www.namesys.com/pub/reiserfsprogs/reiserfsprogs-3.6.3.tar.gz>
+ 
++Reiser4progs
++------------
++o  <ftp://ftp.namesys.com/pub/reiser4progs/>
++
+ Xfsprogs
+ --------
+ o  <ftp://oss.sgi.com/projects/xfs/download/>
+diff -puN /dev/null Documentation/filesystems/reiser4.txt
+--- /dev/null	2003-09-23 21:59:22.000000000 +0400
++++ linux-2.6.16-3-vs/Documentation/filesystems/reiser4.txt	2006-05-30 18:51:50.056559250 +0400
+@@ -0,0 +1,75 @@
++Reiser4 filesystem
++==================
++Reiser4 is a file system based on dancing tree algorithms, and is
++described at http://www.namesys.com
++
++
++References
++==========
++web page		http://namesys.com/v4/v4.html
++source code		ftp://ftp.namesys.com/pub/reiser4-for-2.6/
++userland tools		ftp://ftp.namesys.com/pub/reiser4progs/
++install page		http://www.namesys.com/install_v4.html
++
++Compile options
++===============
++Enable reiser4 debug mode
++       This checks everything imaginable while reiser4
++       runs
++
++Mount options
++=============
++tmgr.atom_max_size=N
++	Atoms containing more than N blocks will be forced to commit.
++	N is decimal.
++	Default is nr_free_pagecache_pages() / 2 at mount time.
++
++tmgr.atom_max_age=N
++	Atoms older than N seconds will be forced to commit. N is decimal.
++	Default is 600.
++
++tmgr.atom_max_flushers=N
++	Limit of concurrent flushers for one atom. 0 means no limit.
++	Default is 0.
++
++tree.cbk_cache.nr_slots=N
++	Number of slots in the cbk cache.
++
++flush.relocate_threshold=N
++	If flush finds more than N adjacent dirty leaf-level blocks it
++	will force them to be relocated.
++	Default is 64.
++
++flush.relocate_distance=N
++	If flush finds can find a block allocation closer than at most
++	N from the preceder it will relocate to that position.
++	Default is 64.
++
++flush.scan_maxnodes=N
++	The maximum number of nodes to scan left on a level during
++	flush.
++	Default is 10000.
++
++optimal_io_size=N
++	Preferred IO size. This value is used to set st_blksize of
++	struct stat.
++	Default is 65536.
++
++bsdgroups
++	Turn on BSD-style gid assignment.
++
++32bittimes
++	By default file in reiser4 have 64 bit timestamps. Files
++	created when filesystem is mounted with 32bittimes mount
++	option will get 32 bit timestamps.
++
++mtflush
++	Turn off concurrent flushing.
++
++nopseudo
++	Disable pseudo files support. See
++	http://namesys.com/v4/pseudo.html for more about pseudo files.
++
++dont_load_bitmap
++	Don't load all bitmap blocks at mount time, it is useful for
++	machines with tiny RAM and large disks.
+diff -puN fs/Kconfig~reiser4-for-2.6.16-3 fs/Kconfig
+--- linux-2.6.16-3/fs/Kconfig~reiser4-for-2.6.16-3	2006-05-30 18:51:49.936551750 +0400
++++ linux-2.6.16-3-vs/fs/Kconfig	2006-05-30 18:51:50.060559500 +0400
+@@ -177,6 +177,8 @@ config FS_MBCACHE
+ 	default y if EXT2_FS=y || EXT3_FS=y
+ 	default m if EXT2_FS=m || EXT3_FS=m
+ 
++source "fs/reiser4/Kconfig"
++
+ config REISERFS_FS
+ 	tristate "Reiserfs support"
+ 	help
+diff -puN fs/Makefile~reiser4-for-2.6.16-3 fs/Makefile
+--- linux-2.6.16-3/fs/Makefile~reiser4-for-2.6.16-3	2006-05-30 18:51:49.936551750 +0400
++++ linux-2.6.16-3-vs/fs/Makefile	2006-05-30 18:51:50.064559750 +0400
+@@ -51,6 +51,7 @@ obj-$(CONFIG_PROFILING)		+= dcookies.o
+  
+ # Do not add any filesystems before this line
+ obj-$(CONFIG_REISERFS_FS)	+= reiserfs/
++obj-$(CONFIG_REISER4_FS)	+= reiser4/
+ obj-$(CONFIG_EXT3_FS)		+= ext3/ # Before ext2 so root fs can be ext3
+ obj-$(CONFIG_JBD)		+= jbd/
+ obj-$(CONFIG_EXT2_FS)		+= ext2/
+diff -puN fs/fs-writeback.c~reiser4-for-2.6.16-3 fs/fs-writeback.c
+--- linux-2.6.16-3/fs/fs-writeback.c~reiser4-for-2.6.16-3	2006-05-30 18:51:49.940552000 +0400
++++ linux-2.6.16-3-vs/fs/fs-writeback.c	2006-05-30 18:51:50.028557500 +0400
+@@ -286,8 +286,6 @@ __writeback_single_inode(struct inode *i
+  * WB_SYNC_HOLD is a hack for sys_sync(): reattach the inode to sb->s_dirty so
+  * that it can be located for waiting on in __writeback_single_inode().
+  *
+- * Called under inode_lock.
+- *
+  * If `bdi' is non-zero then we're being asked to writeback a specific queue.
+  * This function assumes that the blockdev superblock's inodes are backed by
+  * a variety of queues, so all inodes are searched.  For other superblocks,
+@@ -303,11 +301,13 @@ __writeback_single_inode(struct inode *i
+  * on the writer throttling path, and we get decent balancing between many
+  * throttled threads: we don't want them all piling up on __wait_on_inode.
+  */
+-static void
+-sync_sb_inodes(struct super_block *sb, struct writeback_control *wbc)
++void
++generic_sync_sb_inodes(struct super_block *sb, struct writeback_control *wbc)
+ {
+ 	const unsigned long start = jiffies;	/* livelock avoidance */
+ 
++	spin_lock(&inode_lock);
++
+ 	if (!wbc->for_kupdate || list_empty(&sb->s_io))
+ 		list_splice_init(&sb->s_dirty, &sb->s_io);
+ 
+@@ -387,8 +387,19 @@ sync_sb_inodes(struct super_block *sb, s
+ 		if (wbc->nr_to_write <= 0)
+ 			break;
+ 	}
++	spin_unlock(&inode_lock);
+ 	return;		/* Leave any unwritten inodes on s_io */
+ }
++EXPORT_SYMBOL(generic_sync_sb_inodes);
++
++static void
++sync_sb_inodes(struct super_block *sb, struct writeback_control *wbc)
++{
++	if (sb->s_op->sync_inodes)
++		sb->s_op->sync_inodes(sb, wbc);
++	else
++		generic_sync_sb_inodes(sb, wbc);
++}
+ 
+ /*
+  * Start writeback of dirty pagecache data against all unlocked inodes.
+@@ -429,11 +440,8 @@ restart:
+ 			 * be unmounted by the time it is released.
+ 			 */
+ 			if (down_read_trylock(&sb->s_umount)) {
+-				if (sb->s_root) {
+-					spin_lock(&inode_lock);
++				if (sb->s_root)
+ 					sync_sb_inodes(sb, wbc);
+-					spin_unlock(&inode_lock);
+-				}
+ 				up_read(&sb->s_umount);
+ 			}
+ 			spin_lock(&sb_lock);
+@@ -469,9 +477,7 @@ void sync_inodes_sb(struct super_block *
+ 			(inodes_stat.nr_inodes - inodes_stat.nr_unused) +
+ 			nr_dirty + nr_unstable;
+ 	wbc.nr_to_write += wbc.nr_to_write / 2;		/* Bit more for luck */
+-	spin_lock(&inode_lock);
+ 	sync_sb_inodes(sb, &wbc);
+-	spin_unlock(&inode_lock);
+ }
+ 
+ /*
+diff -puN /dev/null fs/reiser4/Kconfig
+--- /dev/null	2003-09-23 21:59:22.000000000 +0400
++++ linux-2.6.16-3-vs/fs/reiser4/Kconfig	2006-05-30 18:51:50.064559750 +0400
+@@ -0,0 +1,31 @@
++config REISER4_FS
++	tristate "Reiser4 (EXPERIMENTAL)"
++	depends on EXPERIMENTAL
++	select ZLIB_INFLATE
++	select ZLIB_DEFLATE
++	help
++	  Reiser4 is a filesystem that performs all filesystem operations
++	  as atomic transactions, which means that it either performs a
++	  write, or it does not, and in the event of a crash it does not
++	  partially perform it or corrupt it.
++
++	  It stores files in dancing trees, which are like balanced trees but
++	  faster.  It packs small files together so that they share blocks
++	  without wasting space.  This means you can use it to store really
++	  small files.  It also means that it saves you disk space.  It avoids
++	  hassling you with anachronisms like having a maximum number of
++	  inodes, and wasting space if you use less than that number.
++
++	  Reiser4 is a distinct filesystem type from reiserfs (V3).
++	  It's therefore not possible to use reiserfs file systems
++	  with reiser4.
++
++	  To learn more about reiser4, go to http://www.namesys.com
++
++config REISER4_DEBUG
++	bool "Enable reiser4 debug mode"
++	depends on REISER4_FS
++	help
++	  Don't use this unless you are debugging reiser4.
++
++	  If unsure, say N.
+diff -puN /dev/null fs/reiser4/Makefile
+--- /dev/null	2003-09-23 21:59:22.000000000 +0400
++++ linux-2.6.16-3-vs/fs/reiser4/Makefile	2006-05-30 18:51:50.068560000 +0400
+@@ -0,0 +1,100 @@
++#
++# reiser4/Makefile
++#
++
++obj-$(CONFIG_REISER4_FS) += reiser4.o
++
++reiser4-y := \
++		   debug.o \
++		   jnode.o \
++		   znode.o \
++		   key.o \
++		   pool.o \
++		   tree_mod.o \
++		   estimate.o \
++		   carry.o \
++		   carry_ops.o \
++		   lock.o \
++		   tree.o \
++		   context.o \
++		   tap.o \
++		   coord.o \
++		   block_alloc.o \
++		   txnmgr.o \
++		   kassign.o \
++		   flush.o \
++		   wander.o \
++		   eottl.o \
++		   search.o \
++		   page_cache.o \
++		   seal.o \
++		   dscale.o \
++		   flush_queue.o \
++		   ktxnmgrd.o \
++		   blocknrset.o \
++		   super.o \
++		   super_ops.o \
++		   fsdata.o \
++		   export_ops.o \
++		   oid.o \
++		   tree_walk.o \
++		   inode.o \
++		   vfs_ops.o \
++		   as_ops.o \
++		   entd.o\
++		   readahead.o \
++		   status_flags.o \
++		   init_super.o \
++		   safe_link.o \
++           \
++		   plugin/plugin.o \
++		   plugin/plugin_set.o \
++		   plugin/node/node.o \
++		   plugin/object.o \
++		   plugin/cluster.o \
++		   plugin/inode_ops.o \
++		   plugin/inode_ops_rename.o \
++		   plugin/file_ops.o \
++		   plugin/file_ops_readdir.o \
++		   plugin/file_plugin_common.o \
++		   plugin/file/file.o \
++		   plugin/file/tail_conversion.o \
++		   plugin/file/symlink.o \
++		   plugin/file/cryptcompress.o \
++		   plugin/dir_plugin_common.o \
++		   plugin/dir/hashed_dir.o \
++		   plugin/dir/seekable_dir.o \
++		   plugin/node/node40.o \
++           \
++		   plugin/crypto/cipher.o \
++		   plugin/crypto/digest.o \
++           \
++		   plugin/compress/minilzo.o \
++		   plugin/compress/compress.o \
++		   plugin/compress/compress_mode.o \
++           \
++		   plugin/item/static_stat.o \
++		   plugin/item/sde.o \
++		   plugin/item/cde.o \
++		   plugin/item/blackbox.o \
++		   plugin/item/internal.o \
<<Diff was trimmed, longer than 597 lines>>


More information about the pld-cvs-commit mailing list