Author: arekm Date: Sun May 23 09:02:19 2010 GMT Module: packages Tag: HEAD ---- Log message: - 2.6.33 version instead of our previous hack
---- Files affected: packages/kernel: kernel-reiser4.patch (1.10 -> 1.11) ---- Diffs: ================================================================ Index: packages/kernel/kernel-reiser4.patch diff -u packages/kernel/kernel-reiser4.patch:1.10 packages/kernel/kernel-reiser4.patch:1.11 --- packages/kernel/kernel-reiser4.patch:1.10 Tue Feb 2 13:58:21 2010 +++ packages/kernel/kernel-reiser4.patch Sun May 23 11:02:11 2010 @@ -1,1099 +1,7 @@ -From: Artem Bityutskiy <[email protected]> - -This patch adds new operation to struct super_operations - sync_inodes, -generic implementaion and changes fs-writeback.c:sync_sb_inodes() to call -filesystem's sync_inodes if it is defined or generic implementaion otherwise. -This new operation allows filesystem to decide itself what to flush. - -Reiser4 flushes dirty pages on basic of atoms, not of inodes. sync_sb_inodes -used to call address space flushing method (writepages) for every dirty inode. - For reiser4 it caused having to commit atoms unnecessarily often. This -turned into substantial slowdown. Having this method helped to fix that -problem. - -akpm: this patch needs to be chnaged to remove the `sb' arg. - -Signed-off-by: Artem Bityutskiy <[email protected]> -Cc: Edward Shishkin <[email protected]> -Signed-off-by: Andrew Morton <[email protected]> ---- - - fs/fs-writeback.c | 5 ++++- - include/linux/fs.h | 2 ++ - 2 files changed, 6 insertions(+), 1 deletion(-) - -diff -puN fs/fs-writeback.c~reiser4-vfs-add-super_operationssync_inodes-2 fs/fs-writeback.c ---- a/fs/fs-writeback.c~reiser4-vfs-add-super_operationssync_inodes-2 -+++ a/fs/fs-writeback.c -@@ -1221,7 +1221,10 @@ EXPORT_SYMBOL(writeback_inodes_sb); - */ - void sync_inodes_sb(struct super_block *sb) - { -- bdi_sync_writeback(sb->s_bdi, sb); -+ if (sb->s_op->sync_inodes) -+ sb->s_op->sync_inodes(sb, NULL); -+ else -+ bdi_sync_writeback(sb->s_bdi, sb); - wait_sb_inodes(sb); - } - EXPORT_SYMBOL(sync_inodes_sb); -diff -puN include/linux/fs.h~reiser4-vfs-add-super_operationssync_inodes-2 include/linux/fs.h ---- a/include/linux/fs.h~reiser4-vfs-add-super_operationssync_inodes-2 -+++ a/include/linux/fs.h -@@ -1568,6 +1568,8 @@ struct super_operations { - void (*clear_inode) (struct inode *); - void (*umount_begin) (struct super_block *); - -+ void (*sync_inodes)(struct super_block *sb, -+ struct writeback_control *wbc); - int (*show_options)(struct seq_file *, struct vfsmount *); - int (*show_stats)(struct seq_file *, struct vfsmount *); - #ifdef CONFIG_QUOTA -_ -From: Hans Reiser <[email protected]> - -Reiser4 is trying to add/remove pages to/from address space, so it needs -add_to_page_cache_lru to be EXPORT_SYMBOL-ed. - -[[email protected]: unexport {,__}remove_from_page_cache] -Signed-off-by: Adrian Bunk <[email protected]> -Signed-off-by: Andrew Morton <[email protected]> ---- - - mm/filemap.c | 1 + - 1 file changed, 1 insertion(+) - -diff -puN mm/filemap.c~reiser4-export-remove_from_page_cache mm/filemap.c ---- a/mm/filemap.c~reiser4-export-remove_from_page_cache -+++ a/mm/filemap.c -@@ -779,6 +779,7 @@ repeat: - rcu_read_unlock(); - return ret; - } -+EXPORT_SYMBOL(add_to_page_cache_lru); - - /** - * find_get_pages_contig - gang contiguous pagecache lookup -_ -From: Andrew Morton <[email protected]> - -merge glitch - -Reported-by: Randy Dunlap <[email protected]> -Signed-off-by: Andrew Morton <[email protected]> ---- - - mm/filemap.c | 1 - - 1 file changed, 1 deletion(-) - -diff -puN mm/filemap.c~reiser4-export-remove_from_page_cache-fix mm/filemap.c ---- a/mm/filemap.c~reiser4-export-remove_from_page_cache-fix -+++ a/mm/filemap.c -@@ -779,7 +779,6 @@ repeat: - rcu_read_unlock(); - return ret; - } --EXPORT_SYMBOL(add_to_page_cache_lru); - - /** - * find_get_pages_contig - gang contiguous pagecache lookup -_ -Signed-off-by: Andrew Morton <[email protected]> ---- - - mm/filemap.c | 1 + - 1 file changed, 1 insertion(+) - -diff -puN mm/filemap.c~reiser4-export-find_get_pages mm/filemap.c ---- a/mm/filemap.c~reiser4-export-find_get_pages -+++ a/mm/filemap.c -@@ -779,6 +779,7 @@ repeat: - rcu_read_unlock(); - return ret; - } -+EXPORT_SYMBOL(find_get_pages); - - /** - * find_get_pages_contig - gang contiguous pagecache lookup -_ -From: Vladimir Saveliev <[email protected]> - -This is the main reiserfs4 filesystem. - -Q&A wrt this patch: - -- A really short guide to how to get up and running with this filesystem. - - Reiser4 is a file system based on dancing tree algorithms, and - is described at http://www.namesys.com. One should be able to get it - up and running just like any of the other filesystems supported by - Linux. Configure it to be compiled either builtin or as a module. - Create reiser4 filesystem with mkfs.reiser4, mount and use it. More - detailed info can be found at - http://thebsh.namesys.com/snapshots/LATEST/READ.ME. - -- The direct URL which people use to obtain the mkfs tool for this - filesystem. Also fsck and anything else. - - Reiser4 userland tools can be obtained at - ftp://ftp.namesys.com/pub/reiser4progs. - ftp://ftp.namesys.com/pub/reiser4progs/README contains detailed - instructions on how to compile and install these tools. Also all - reiser4 progs have man pages. - -- Any known shortcomings, caveats, etc. - - Reiser4 has been tested on i386 yet only. Quota support is - not ready yet. Should be ready soon. Reiser4 was tested extensively, - and we got to where the mailing list was not able to hit any bugs, but - then we told people that, got an order of magnitude increase in users, - and they are able to hit bugs that we are working on now. - - Reiser's Law of Software Engineering: Each order of magnitude - increase in users finds more bugs, in a quantity equal to the previous - order of magnitude increase in users. Success for software developers - is measured by how long the frustration lasts. - - Only the very core functionality is working. Exotic plugins, - an API for multiple operation transactions and accessing multiple - small files in one syscall, compression, inheritance, all have been - postponed until after the core functionality is shipped. The - compression plugin needs a code review before anyone should use it. - -- A statement on compatibility with reiserfs3 filesytems. - - To upgrade from reiserfs V3 to V4, use tar, or sponsor us to - write a convertfs. - -- Bear in mind that people will immediately benchmark this filesytem, and - first impressions count. Now is your chance to communicate any tuning - guidelines, mount options or whatever which you'd like people to understand - BEFORE they start publishing benchmark info. - - Reiser4 is not tuned for fsync/sync/O_SYNC performance yet. - - If you see results that are much different from those at - www.namesys.com/benchmarks.html, let us know. If you see performance - characteristics that don't quite make sense, email - [email protected], such things are always of interest. - - reiser4 is not tuned for mmaping and dirtying more than - physical ram like IOzone does. This is quite different in its code - path from writing and dirtying more than physical ram. There are - those who think that what IOZone does is rarely done by real programs, - and therefor we should not bother to optimize what it does. All I - know is, this month we are not optimized for it. - - Please consider its space savings when you benchmark it also. - -[[email protected]: kill #include "linux/config.h"] -[[email protected]: reiser4_drop_page: don't call remove_from_page_cache] -[[email protected]: fs/reiser4/: possible cleanups] -Signed-off-by: Vladimir Saveliev <[email protected]> -Signed-off-by: Hans Reiser <[email protected]> -Signed-off-by: Edward Shishkin <[email protected]> -DESC -reiser4: fix for drop-unused-semaphores.patch -EDESC -From: Edward Shishkin <[email protected]> - -Wait for tail conversion completion when acquiring exclusive access by -. mmap_unix_file() -. setattr_unix_file() -. release_unix_file() -Update comments. - -Signed-off-by: Edward Shishkin <[email protected]> -Cc Jonathan Briggs <[email protected]> -DESC -reiser4-slab-allocators-remove-slab_debug_initial-flag -EDESC -From: Andrew Morton <[email protected]> - -Cc: Christoph Lameter <[email protected]>.com> -DESC -reiser4: use simple_prepare_write to zero page data -EDESC -From: Nate Diller <[email protected]> - -It's common for file systems to need to zero data on either side of a -write, if a page is not Uptodate during prepare_write. It just so happens -that simple_prepare_write() in libfs.c does exactly that, so we can avoid -duplication and just call that function to zero page data. - -Signed-off-by: Nate Diller <[email protected]> -Cc: Vladimir Saveliev <[email protected]> -Cc: Edward Shishkin <[email protected]> -DESC -reiser4-fix -EDESC -From: Andrew Morton <[email protected]> - - -DESC -reiser4: use zero_user_page -EDESC -From: Nate Diller <[email protected]> - -Use zero_user_page() instead of open-coding it. - -Signed-off-by: Nate Diller <[email protected]> -Cc: Vladimir Saveliev <[email protected]> -Cc: Edward Shishkin <[email protected]> -DESC -reiser4: remove typedefs -EDESC -From: Edward Shishkin <[email protected]> - -. Reduce number of typedefs from 289 to 248 -. Remove unused file plugin/file/invert.c -. Update comments - -DESC -reiser4: fix write_extent -EDESC -From: Edward Shishkin <[email protected]> - -Prepared-by Ignatich <[email protected]> - -Fix reiser4_write_extent(): - 1) handling incomplete writes missed in reiser4-temp-fix.patch - 2) bugs in the case of returned errors - -Signed-off-by: Edward Shishkin <[email protected]> -DESC -reiser4 make sync_inodes non-void -EDESC -From: Edward Shishkin <[email protected]> - -Make reiser4_sync_inodes non-void - -Signed-off-by: Edward Shishkin <[email protected]> -DESC -Reiser4: Drop 'size' argument from bio_endio and bi_end_io -EDESC -From: Laurent Riffard <[email protected]> - -Reiser4: Drop 'size' argument from bio_endio and bi_end_io - -This patch pushes into Reiser4 the changes introduced by -commit 6712ecf8f648118c3363c142196418f89a510b90: - - As bi_end_io is only called once when the request is complete, - the 'size' argument is now redundant. Remove it. - - Now there is no need for bio_endio to subtract the size completed - from bi_size. So don't do that either. - - While we are at it, change bi_end_io to return void. - -Signed-off-by: Laurent Riffard <[email protected]> -Acked-by: Jens Axboe <[email protected]> -Acked-by: Edward Shishkin <[email protected]> -DESC -mm: clean up and kernelify shrinker registration -EDESC -From: Rusty Russell <[email protected]> - -I can never remember what the function to register to receive VM pressure -is called. I have to trace down from __alloc_pages() to find it. - -It's called "set_shrinker()", and it needs Your Help. - -1) Don't hide struct shrinker. It contains no magic. -2) Don't allocate "struct shrinker". It's not helpful. -3) Call them "register_shrinker" and "unregister_shrinker". -4) Call the function "shrink" not "shrinker". -5) Reduce the 17 lines of waffly comments to 13, but document it properly. - -The comment in reiser4 makes me a little queasy. - -Signed-off-by: Rusty Russell <[email protected]> -Cc: Vladimir Saveliev <[email protected]> -Acked-by: Edward Shishkin <[email protected]> -DESC -reiser4: fix NULL dereference in __mnt_is_readonly in ftruncate() -EDESC -From: Dave Hansen <[email protected]> - -Signed-off-by: Dave Hansen <[email protected]> -Cc: Edward Shishkin <[email protected]> -Cc: "Vladimir V. Saveliev" <[email protected]> -DESC -reiser4: fix extent2tail -EDESC -From: Edward Shishkin <[email protected]> - -Fixed bug in extent2tail conversion. - -Bug description: -when converting partially converted file -(with flag REISER4_PART_MIXED installed) -reiser4_cut_tree() starts to cut old metatada -from wrong offset. Result is data corruption. - -Signed-off-by: Edward Shishkin <[email protected]> -DESC -reiser4: fix read_tail -EDESC -From: Edward Shishkin <[email protected]> - -Update hint when reading tails - -Signed-off-by: Edward Shishkin <[email protected]> -DESC -reiser4: fix unix-file readpages filler -EDESC -From: Edward Shishkin <[email protected]> - -Protect page (via incrementing page count) from being reclaimed when looking -for extent pointer in unix-file specific readpages filler. - -Signed-off-by: Edward Shishkin <[email protected]> -DESC -reiser4: fix readpage_unix_file -EDESC -From: Edward Shishkin <[email protected]> - -. If nominated (by VFS) page is out of file size, then fill it - by zeros instead of returning -EINVAL (this prevents returning - an unexpected error (-EINVAL) by some apps that don't check - file size). - -. Check if the page became uptodate while it was being unlocked. - -Signed-off-by: Edward Shishkin <[email protected]> -Cc: Zan Lynx <[email protected]> -Cc: "Vladimir V. Saveliev" <[email protected]> -DESC -reiser4: fix for new aops patches -EDESC -From: Nick Piggin <[email protected]> - -Cc: Vladimir Saveliev <[email protected]> -Cc: Edward Shishkin <[email protected]> -DESC -reiser4: do not allocate struct file on stack -EDESC -From: Edward Shishkin <[email protected]> - -Do not allocate struct file on stack, pass the persistent one instead. - -Signed-off-by: Edward Shishkin <[email protected]> -Tested-by: Zan Lynx <[email protected]> -Cc: "Vladimir V. Saveliev" <[email protected]> -DESC -git-block-vs-reiser4 -EDESC -From: Andrew Morton <[email protected]> - -Hope this is right. - -Hope you know what you're doing ;) - -Cc: Vladimir Saveliev <[email protected]> -Cc: Edward Shishkin <[email protected]> -Cc: Jens Axboe <[email protected]> -DESC -reiser4: cryptcompress misc fixups -EDESC -From: Edward Shishkin <[email protected]> - -. Fix a race (reproducible by fsx + sync (1)) between - checkin_page_cluster operations: serialize them via special per-inode - checkin_mutex (usual i_mutex is not suitable for this purpose, as - ->writepages() also calls checkin_page_cluster(); - -. Add comments for checkin/checkout technique for synchronization of - primary and secondary caches with proof of correctness; - -. Fix missed right neighbor when updating disk clusters by - handle_pos_on_leaf() during squalloc (should use upper levels to get - expected non-connected neighbor); - -. Resolve a race between read and truncate (when read finds partially - truncated and, hence, unrecoverable disk cluster) via keeping a track of - leftmost truncated disk clusters in cryptcompress-specific part of inode; - -. Introduce size translators and size modulators for - common needs; - -. Update comments; - -. Rename badly sounding function names; - -. Fix coding style; - -. Add my part of credits. - -Signed-off-by: Edward Shishkin <[email protected]> -Cc: "Vladimir V. Saveliev" <[email protected]> -DESC -reiser4: cryptcompress misc fixups-2 -EDESC -From: Edward Shishkin <[email protected]> - -Check a file plugin id before manipulating with plugin-specific counter. - -Signed-off-by: Edward Shishkin <[email protected]> -Cc: "Vladimir V. Saveliev" <[email protected]> -DESC -fs/reiser4/plugin/: make 3 functions static -EDESC -From: Adrian Bunk <[email protected]> - -This patch makes the following needlessly global functions static: -- file/cryptcompress.c: __put_page_cluster() -- file/cryptcompress.c: put_hint_cluster() -- item/ctail.c: ctail_read_disk_cluster() - -Signed-off-by: Adrian Bunk <[email protected]> -Cc: Edward Shishkin <[email protected]> -Cc: "Vladimir V. Saveliev" <[email protected]> -DESC -reiser4: change error code base -EDESC -From: Edward Shishkin <[email protected]> - -Change REISER4_ERROR_CODE_BASE to 10000 to not overlap real errnos - -Signed-off-by: Edward Shishkin <[email protected]> -Cc: "Vladimir V. Saveliev" <[email protected]> -DESC -reiser4: use lzo library functions -EDESC -From: Edward Shishkin <[email protected]> - -. Convert Reiser4 to use lzo implementation in lib/lzo/ instead of - including its own copy of minilzo; -. Do not set zeros to workmem region. - -Signed-off-by: Edward Shishkin <[email protected]> -Cc: "Vladimir V. Saveliev" <[email protected]> -DESC -fs/reiser4/plugin/file/cryptcompress.c: kmalloc + memset conversion to kzalloc -EDESC -From: Mariusz Kozlowski <[email protected]> - - fs/reiser4/plugin/file/cryptcompress.c | 101386 -> 101352 (-34 bytes) - fs/reiser4/plugin/file/cryptcompress.o | 456784 -> 456644 (-140 bytes) - -Signed-off-by: Mariusz Kozlowski <[email protected]> -Cc: Edward Shishkin <[email protected]> -Cc: "Vladimir V. Saveliev" <[email protected]> -DESC -reiser4: kmalloc + memset conversion to kzalloc -EDESC -From: Mariusz Kozlowski <[email protected]> - -Signed-off-by: Mariusz Kozlowski <[email protected]> -Cc: Edward Shishkin <[email protected]> -Cc: "Vladimir V. Saveliev" <[email protected]> -DESC -fs/reiser4/init_super.c: kmalloc + memset conversion to kzalloc -EDESC -From: Mariusz Kozlowski <[email protected]> - - fs/reiser4/init_super.c | 19283 -> 19246 (-37 bytes) - fs/reiser4/init_super.o | 155348 -> 155152 (-196 bytes) - -Signed-off-by: Mariusz Kozlowski <[email protected]> -Cc: Edward Shishkin <[email protected]> -Cc: "Vladimir V. Saveliev" <[email protected]> -DESC -fs/reiser4/plugin/inode_ops_rename.c: kmalloc + memset conversion to kzalloc -EDESC -From: Mariusz Kozlowski <[email protected]> - - fs/reiser4/plugin/inode_ops_rename.c | 28474 -> 28344 (-130 bytes) - fs/reiser4/plugin/inode_ops_rename.o | 142600 -> 142476 (-124 bytes) - -Signed-off-by: Mariusz Kozlowski <[email protected]> -Cc: Edward Shishkin <[email protected]> -Cc: "Vladimir V. Saveliev" <[email protected]> -DESC -fs/reiser4/ktxnmgrd.c: kmalloc + memset conversion to kzalloc -EDESC -From: Mariusz Kozlowski <[email protected]> - - fs/reiser4/ktxnmgrd.c | 5314 -> 5277 (-37 bytes) - fs/reiser4/ktxnmgrd.o | 131624 -> 131496 (-128 bytes) - -Signed-off-by: Mariusz Kozlowski <[email protected]> -Cc: Edward Shishkin <[email protected]> -Cc: "Vladimir V. Saveliev" <[email protected]> -DESC -Use helpers to obtain task pid in printks -EDESC -From: Pavel Emelyanov <[email protected]> - -The task_struct->pid member is going to be deprecated, so start -using the helpers (task_pid_nr/task_pid_vnr/task_pid_nr_ns) in -the kernel. - -The first thing to start with is the pid, printed to dmesg - in -this case we may safely use task_pid_nr(). Besides, printks produce -more (much more) than a half of all the explicit pid usage. - -Signed-off-by: Pavel Emelyanov <[email protected]> -DESC -Subject: [PATCH 1/2] remove asm/bitops.h includes -EDESC -From: Jiri Slaby <[email protected]> - -remove asm/bitops.h includes - -including asm/bitops directly may cause compile errors. don't include it -and include linux/bitops instead. next patch will deny including asm header -directly. - -Cc: Adrian Bunk <[email protected]> -Signed-off-by: Jiri Slaby <[email protected]> - ---- -commit 3c05eef3d0a98065323d7d6d9a78e0985eba4b10 -tree cb9691832992f570b0363dd568f6fa3d2c81e3f5 -parent 132bb039c741d00f066e7501e3613d2d20bf0595 -author Jiri Slaby <[email protected]> Tue, 04 Sep 2007 21:01:35 +0200 -committer Jiri Slaby <[email protected]> Tue, 04 Sep 2007 21:01:35 +0200 - -index 7ad84ea..32afaa3 100644 -DESC -git-nfsd-broke-reiser4 -EDESC -From: Andrew Morton <[email protected]> - -fs/reiser4/export_ops.c: In function 'reiser4_decode_fh': -fs/reiser4/export_ops.c:96: error: 'const struct export_operations' has no member named 'find_exported_dentry' -fs/reiser4/export_ops.c:96: warning: type defaults to 'int' in declaration of 'fn' -fs/reiser4/export_ops.c:98: error: 'const struct export_operations' has no member named 'find_exported_dentry' -fs/reiser4/export_ops.c:99: warning: comparison between pointer and integer -fs/reiser4/export_ops.c:101: error: called object 'fn' is not a function -fs/reiser4/export_ops.c: At top level: -fs/reiser4/export_ops.c:282: error: unknown field 'decode_fh' specified in initializer -fs/reiser4/export_ops.c:282: warning: initialization from incompatible pointer type -fs/reiser4/export_ops.c:284: error: unknown field 'get_dentry' specified in initializer -fs/reiser4/export_ops.c:285: warning: excess elements in struct initializer -fs/reiser4/export_ops.c:285: warning: (near initialization for 'reiser4_export_operations') - -help! - -Cc: J. Bruce Fields <[email protected]> -Cc: Edward Shishkin <[email protected]> -Cc: "Vladimir V. Saveliev" <[email protected]> -DESC -slab-api-remove-useless-ctor-parameter-and-reorder-parameters-vs-reiser4 -EDESC -From: Andrew Morton <[email protected]> - -Cc: Christoph Lameter <[email protected]> -DESC -reiser4 kgdb fix <<Diff was trimmed, longer than 597 lines>> ---- CVS-web: http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/kernel/kernel-reiser4.patch?r1=1.10&r2=1.11&f=u _______________________________________________ pld-cvs-commit mailing list [email protected] http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit
