Author: mguevara Date: Wed Dec 13 22:57:57 2006 GMT Module: SOURCES Tag: LINUX_2_6 ---- Log message: - from http://laurent.riffard.free.fr/reiser4/reiser4-for-2.6.19.patch.gz based on http://ftp.namesys.com/pub/reiser4-for-2.6/2.6.18/reiser4-for-2.6.18-3.patch.gz with 9 pathes from reiserfs mailing-list. details http://www.mail-archive.com/[email protected]/msg22492.html
---- Files affected: SOURCES: reiser4-for-2.6.19.patch (NONE -> 1.1.2.1) (NEW) ---- Diffs: ================================================================ Index: SOURCES/reiser4-for-2.6.19.patch diff -u /dev/null SOURCES/reiser4-for-2.6.19.patch:1.1.2.1 --- /dev/null Wed Dec 13 23:57:57 2006 +++ SOURCES/reiser4-for-2.6.19.patch Wed Dec 13 23:57:52 2006 @@ -0,0 +1,81036 @@ +Andrew Wade (3): + Reiser4: fix use after free in jrelse_tail + Reiser4: release d_ref + Reiser4: release d_ref (fix) + +Edward Shishkin (2): + Reiser4 for 2.6.18 + reiser4-generic_file_read-fix + +Laurent Riffard (5): + Reiser4: cometics changes in mm/filemap.c. + Reiser4: fix calls to kmem_cache_destroy + Reiser4: Replace inode.u.generic_ip with inode.i_private + Reiser4: inode.i_blksize suppression + Reiser4: remove unnecessary config.h includes. + + Documentation/Changes | 12 + + Documentation/filesystems/reiser4.txt | 75 + + arch/i386/lib/usercopy.c | 2 + + 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 | 391 +++ + 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 | 354 +++ + 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 | 1922 +++++++++++++ + fs/reiser4/jnode.h | 707 +++++ + 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 | 315 ++ + fs/reiser4/plugin/compress/Makefile | 6 + + fs/reiser4/plugin/compress/compress.c | 369 +++ + 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 | 3819 +++++++++++++++++++++++++ + fs/reiser4/plugin/file/cryptcompress.h | 549 ++++ + fs/reiser4/plugin/file/file.c | 2713 ++++++++++++++++++ + 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 | 655 +++++ + 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 | 1716 +++++++++++ + 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 | 1038 +++++++ + 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 | 502 ++++ + fs/reiser4/plugin/object.h | 121 + + fs/reiser4/plugin/plugin.c | 535 ++++ + fs/reiser4/plugin/plugin.h | 935 ++++++ + fs/reiser4/plugin/plugin_header.h | 136 + + fs/reiser4/plugin/plugin_set.c | 378 +++ + fs/reiser4/plugin/plugin_set.h | 82 + + 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 | 275 ++ + 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 | 467 +++ + fs/reiser4/super_ops.c | 720 +++++ + 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 | 703 +++++ + 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 | 5 + + mm/readahead.c | 1 + + 175 files changed, 79647 insertions(+), 10 deletions(-) + +diff --git a/Documentation/Changes b/Documentation/Changes +index abee7f5..c8323c2 100644 +--- a/Documentation/Changes ++++ b/Documentation/Changes +@@ -36,6 +36,7 @@ o module-init-tools 0.9.10 # depmod -V + 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 # pccardctl -V + o quota-tools 3.09 # quota -V +@@ -144,6 +145,13 @@ The reiserfsprogs package should be used for reiserfs-3.6.x + 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 + -------- + +@@ -322,6 +330,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 --git a/Documentation/filesystems/reiser4.txt b/Documentation/filesystems/reiser4.txt +new file mode 100644 +index 0000000..8e07c9e +--- /dev/null ++++ b/Documentation/filesystems/reiser4.txt +@@ -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 --git a/arch/i386/lib/usercopy.c b/arch/i386/lib/usercopy.c +index d22cfc9..bb4a75a 100644 +--- a/arch/i386/lib/usercopy.c ++++ b/arch/i386/lib/usercopy.c +@@ -812,6 +812,7 @@ unsigned long __copy_from_user_ll_nocache(void *to, const void __user *from, + #endif + return n; + } ++EXPORT_SYMBOL(__copy_from_user_ll_nocache); + + unsigned long __copy_from_user_ll_nocache_nozero(void *to, const void __user *from, + unsigned long n) +@@ -827,6 +828,7 @@ unsigned long __copy_from_user_ll_nocache_nozero(void *to, const void __user *fr + #endif + return n; + } ++EXPORT_SYMBOL(__copy_from_user_ll_nocache_nozero); + + /** + * copy_to_user: - Copy a block of data into user space. +diff --git a/fs/Kconfig b/fs/Kconfig +index 7b1511d..4673de9 100644 +--- a/fs/Kconfig ++++ b/fs/Kconfig +@@ -278,6 +278,8 @@ config FS_MBCACHE + default y if EXT2_FS=y || EXT3_FS=y || EXT4DEV_FS=y + default m if EXT2_FS=m || EXT3_FS=m || EXT4DEV_FS=m + ++source "fs/reiser4/Kconfig" ++ + config REISERFS_FS + tristate "Reiserfs support" + help +diff --git a/fs/Makefile b/fs/Makefile +index 9a5ce93..671aeaf 100644 +--- a/fs/Makefile ++++ b/fs/Makefile +@@ -61,6 +61,7 @@ obj-$(CONFIG_DLM) += dlm/ + + # 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_EXT4DEV_FS) += ext4/ # Before ext2 so root fs can be ext4dev + obj-$(CONFIG_JBD) += jbd/ +diff --git a/fs/fs-writeback.c b/fs/fs-writeback.c +index c403b66..e1a4b0b 100644 +--- a/fs/fs-writeback.c ++++ b/fs/fs-writeback.c +@@ -285,8 +285,6 @@ __writeback_single_inode(struct inode *inode, struct writeback_control *wbc) + * 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, +@@ -302,11 +300,13 @@ __writeback_single_inode(struct inode *inode, struct writeback_control *wbc) + * 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); + +@@ -386,8 +386,19 @@ sync_sb_inodes(struct super_block *sb, struct writeback_control *wbc) + 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. +@@ -428,11 +439,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); +@@ -470,9 +478,7 @@ void sync_inodes_sb(struct super_block *sb, int wait) + (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 --git a/fs/reiser4/Kconfig b/fs/reiser4/Kconfig +new file mode 100644 +index 0000000..37aa01c +--- /dev/null ++++ b/fs/reiser4/Kconfig +@@ -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 --git a/fs/reiser4/Makefile b/fs/reiser4/Makefile +new file mode 100644 +index 0000000..07318c7 +--- /dev/null ++++ b/fs/reiser4/Makefile +@@ -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 \ ++ plugin/item/tail.o \ ++ plugin/item/ctail.o \ ++ plugin/item/extent.o \ ++ plugin/item/extent_item_ops.o \ ++ plugin/item/extent_file_ops.o \ ++ plugin/item/extent_flush_ops.o \ ++ \ ++ plugin/hash.o \ ++ plugin/fibration.o \ ++ plugin/tail_policy.o \ ++ plugin/item/item.o \ ++ \ ++ plugin/security/perm.o \ ++ plugin/space/bitmap.o \ ++ \ ++ plugin/disk_format/disk_format40.o \ ++ plugin/disk_format/disk_format.o \ ++ \ ++ plugin/regular.o ++ +diff --git a/fs/reiser4/README b/fs/reiser4/README +new file mode 100644 +index 0000000..4637f59 +--- /dev/null ++++ b/fs/reiser4/README +@@ -0,0 +1,125 @@ ++[LICENSING] ++ ++Reiser4 is hereby licensed under the GNU General ++Public License version 2. ++ ++Source code files that contain the phrase "licensing governed by ++reiser4/README" are "governed files" throughout this file. Governed ++files are licensed under the GPL. The portions of them owned by Hans ++Reiser, or authorized to be licensed by him, have been in the past, ++and likely will be in the future, licensed to other parties under ++other licenses. If you add your code to governed files, and don't ++want it to be owned by Hans Reiser, put your copyright label on that ++code so the poor blight and his customers can keep things straight. ++All portions of governed files not labeled otherwise are owned by Hans <<Diff was trimmed, longer than 597 lines>> _______________________________________________ pld-cvs-commit mailing list [email protected] http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit
