- 24 Aug, 2009 2 commits
-
-
Andrew Morton authored
-
Paul Menage authored
This is analogous to the similar check in dget(), and will make reference-counting bugs in filesystems more immediately obvious. (I just spent a while debugging an oops that turned out to be due to broken fs reference counting.) Signed-off-by: Paul Menage <menage@google.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-
- 25 Sep, 2009 1 commit
-
-
Alexey Dobriyan authored
"[PATCH] Fix leak on /proc/lockdep_stats" fixed 5 leaks which happen if one uses single_open() as .open function and seq_release() as .release function. Let's add small amount of runtime checking. Sample output is: memory leak: 'timer_list' WARNING: at fs/seq_file.c:289 seq_release() [<c015e311>] seq_release+0x53/0x68 [<c0171bd8>] proc_reg_release+0x63/0x74 [<c0149877>] __fput+0x28/0xd3 [<c0147681>] filp_close+0x48/0x4f [<c014876a>] sys_close+0x74/0xbe [<c010248e>] sysenter_past_esp+0x5f/0x85 ======================= Signed-off-by: Alexey Dobriyan <adobriyan@sw.ru> Cc: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-
- 15 May, 2007 1 commit
-
-
Hugh Dickins authored
and one was sighted a couple of years ago. No reason yet to suppose they're prio_tree bugs, but we can't tell much about them without seeing the vmas. So dump vma and the one it's supposed to resemble: I had expected to use print_hex_dump(), but that's designed for u8 dumps, whereas almost every field of vm_area_struct is either a pointer or an unsigned long - which look nonsense dumped as u8s. Replace the two BUG_ONs by a single WARN_ON; and if it fires, just keep this vma out of the tree (truncation and swapout won't be able to find it). How safe this is depends on what the error really is; but we hold a file's i_mmap_lock here, so it may be impossible to recover from BUG_ON. Signed-off-by: Hugh Dickins <hugh@veritas.com> Cc: Jayson Santos <jaysonsantos2003@yahoo.com.br> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-
- 25 Sep, 2009 1 commit
-
-
Linus Torvalds authored
potentially a quite valid value, so not restoring it would be wrong. What *would* be interesting is to hear where the bad values came from in the first place. It sounds like the device state is saved after the PCI bus controller in front of the device has been crapped on, resulting in the PCI config cycles never reaching the device at all. Something along this patch (together with suspend/resume debugging output) migth help pinpoint it. But it really sounds like something totally brokenly turned off the PCI bridge (some ACPI shutdown crud? I wouldn't be entirely surprised) Cc: Greg KH <greg@kroah.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-
- 04 Sep, 2009 1 commit
-
-
Olaf Hering authored
> I'm facing something quite strange... When booting one of these kernels > (it's a new machine, I've not been running older kernels), the boot message > says : > > ACPI: PCI Interrupt 0000:04:00.0[A] -> GSI 19 (level, low) -> IRQ 19 > sky2 v1.10 addr 0xff8fc000 irq 19 Yukon-EC (0xb6) rev 2 > sky2 eth0: addr 00:18:f3:e0:5d:d4 > ACPI: PCI Interrupt 0000:03:00.0[A] -> GSI 16 (level, low) -> IRQ 16 > sky2 v1.10 addr 0xff7fc000 irq 16 Yukon-EC (0xb6) rev 2 > sky2 eth1: addr 00:18:f3:e0:36:fd > > So, I'm expecting two interfaces : eth0 and eth1 > > Unfortunately, at the end of the boot process, I can find eth1 and eth2, Unfortunately, this patch was not applied to mainline last year. Maybe this year. Keep track about which network interface names were renamed after the network device driver printed its banner. Signed-off-by: Olaf Hering <olaf@aepfle.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-
- 25 Sep, 2009 1 commit
-
-
Mel Gorman authored
that would have been easier to debug if the PFN of page addresses were available. The dmesg output is often insufficient to find that information so debugging patches need to be sent to the reporting user. This patch prints out information on the memmap when it is being allocated and the sizeof(struct page) when loglevel is set high enough. In most architectures, this output is produced in generic code. x86_64 and ia64 both setup node_mem_map in an architecture-specific manner requiring arch-specfic changes. Th memmap information can be used to translate any valid page address into a PFN. page_to_pfn() cannot be used directly in bad_page() because there is no guarantee that the address pointer is valid in any way and the translation can produce garbage. Information on memmap is not printed out for the SPARSEMEM memory model. This only applies to FLATMEM and DISCONTIG configurations. Signed-off-by: Mel Gorman <mel@csn.ul.ie> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-
- 20 Apr, 2009 1 commit
-
-
Andrew Morton authored
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-
- 13 Jul, 2009 1 commit
-
-
Andrew Morton authored
- Force the feature on for now, for testing. Cc: Al Viro <viro@ftp.linux.org.uk> Cc: Manfred Spraul <manfred@colorfullife.com> Cc: Alexander Nyberg <alexn@telia.com> Cc: Pekka Enberg <penberg@cs.helsinki.fi> Cc: Christoph Lameter <cl@linux-foundation.org>.com> Cc: Ravikiran Thirumalai <kiran@scalex86.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-
- 14 Oct, 2009 1 commit
-
-
Randy Dunlap authored
kernel/synchro-test.c: In function 'sched': kernel/synchro-test.c:220: error: implicit declaration of function 'schedule' kernel/synchro-test.c: In function 'mutexer': kernel/synchro-test.c:227: error: implicit declaration of function 'daemonize' kernel/synchro-test.c:228: error: implicit declaration of function 'set_user_nice' kernel/synchro-test.c:241: error: dereferencing pointer to incomplete type kernel/synchro-test.c: In function 'semaphorer': kernel/synchro-test.c:263: error: dereferencing pointer to incomplete type kernel/synchro-test.c: In function 'reader': kernel/synchro-test.c:287: error: dereferencing pointer to incomplete type kernel/synchro-test.c: In function 'writer': kernel/synchro-test.c:311: error: dereferencing pointer to incomplete type kernel/synchro-test.c: In function 'downgrader': kernel/synchro-test.c:340: error: dereferencing pointer to incomplete type Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com> Acked-by: David Howells <dhowells@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-
- 13 Oct, 2009 1 commit
-
-
David Howells authored
semaphores and R/W semaphores. Using it is simple: insmod synchro-test.ko <args> It will exit with error ENOANO after running the tests and printing the results to the kernel console log. The available arguments are: (*) mx=N Start up to N mutex thrashing threads, where N is at most 20. All will try and thrash the same mutex. (*) sm=N Start up to N counting semaphore thrashing threads, where N is at most 20. All will try and thrash the same semaphore. (*) ism=M Initialise the counting semaphore with M, where M is any positive integer greater than zero. The default is 4. (*) rd=N (*) wr=O (*) dg=P Start up to N reader thrashing threads, O writer thrashing threads and P downgrader thrashing threads, where N, O and P are at most 20 apiece. All will try and thrash the same read/write semaphore. (*) elapse=N Run the tests for N seconds. The default is 5. (*) load=N Each thread delays for N uS whilst holding the lock. The dfault is 0. (*) interval=N Each thread delays for N uS whilst not holding the lock. The default is 0. (*) do_sched=1 Each thread will call schedule if required after each iteration. (*) v=1 Print more verbose information, including a thread iteration distribution list. The module should be enabled by turning on CONFIG_DEBUG_SYNCHRO_TEST to "m". Signed-off-by: David Howells <dhowells@redhat.com> Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-
- 25 Sep, 2009 1 commit
-
-
Ingo Molnar authored
(and reporting stacktraces to lkml) pick it up by default. Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-
- 24 Aug, 2009 3 commits
-
-
Matthew Wilcox authored
become children of the released resource's parent? Should they be released too? Should we fail the release? I bet we have no callers who expect this right now, but with insert_resource() we may get some. At the point where someone hits this BUG we can figure out what semantics we want. Signed-off-by: Matthew Wilcox <willy@parisc-linux.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-
james toy authored
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-
Matthew Wilcox authored
made sense when request_resource was the main method of dividing up the memory map. With the increased use of insert_resource, it seems to me that we should instead reparent the newly orphaned resources. Before we do that, let's make sure that nobody's actually relying on the current semantics. Signed-off-by: Matthew Wilcox <matthew@wil.cx> Cc: Greg KH <greg@kroah.com> Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru> Cc: Dominik Brodowski <linux@dominikbrodowski.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-
- 10 Sep, 2009 1 commit
-
-
Andrew Morton authored
Cc: Edward Shishkin <edward.shishkin@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-
- 14 Oct, 2009 5 commits
-
-
james toy authored
This is a multi-part message in MIME format. --------------010200050204000200080203 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Laurent Riffard wrote: > Hi Edward, > Hello Laurent. > This patch is buggy, isn't it ? > Yes, sorry, my fault.. I have sent the fixup already to the list yesterday.. Resending for you and Akpm. Andrew, please apply. Thanks. Edward. > I've got 2 reiser4 FS in my /etc/fstab: > > /dev/vglinux1/lvkernel-r4 /home/laurent/kernel reiser4 defaults,noatime,nodiratime,tmgr.atom_max_size=2048 0 0 > /dev/disk/by-uuid/b8dbe880-b664-49aa-8050-bddc91fd5e49 /mnt/diske reiser4 noauto,users,noatime,nodiratime 0 0 > > The first FS can't be mounted: > > [ 235.078342] reiser4[mount(4205)]: parse_options (fs/reiser4/init_super.c:253)[nikita-2307]: > [ 235.078345] WARNING: Unrecognized option: "tmgr.atom_max_size=2048" > --------------010200050204000200080203 Content-Type: text/plain; name="reiser4-reduce-frame-size-fix.patch" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="reiser4-reduce-frame-size-fix.patch" . Fix up the bug in reiser4_init_super_data(): The pointer "p" to opt_desc structure is not incremented. Pass "&p" instead of "p" to push_sb_field_opts(), which is supposed to increment the pointer. . Modify macros PUSH_OPT, OPT_ARRAY_CHECK to accept arguments. Signed-off-by Edward Shsihkin <edward.shishkin@gmail.com>
-
Edward Shishkin authored
Add a new function push_sb_field_opts(). Signed-off-by Edward Shsihkin <edward.shishkin@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-
Edward Shishkin authored
```-----------020703030905060904070706 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit ``` -----------020703030905060904070706 Content-Type: text/plain; name="reiser4-fix-compile-warnings.patch" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="reiser4-fix-compile-warnings.patch" Fix compile warnings. Prepared by: Brandon Berhent <cheater1034@gmail.com> Signed-off-by: Edward Shishkin <edward.shishkin@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-
Edward Shishkin authored
Reiser4 steps to the journal code of other journalling file systems: EXT3 complaints: "called recursively, non-PF_MEMALLOC" Call Trace: [<c0535873>] ext3_write_inode+0x1e/0x3a [<c04b16bc>] __writeback_single_inode+0x193/0x2ad [<c0508d86>] ? flush_some_atom+0x427/0x44d [<c04b1bb5>] ? generic_sync_sb_inodes+0x27c/0x338 [<c04b1b68>] generic_sync_sb_inodes+0x22f/0x338 [<c04b1c8e>] sync_sb_inodes+0x1d/0x20 [<c04b1e1e>] writeback_inodes+0x79/0xb9 [<c047c76a>] balance_dirty_pages_ratelimited_nr+0x119/0x21d [<c0504803>] reiser4_exit_context+0x5f/0xf6 [<c051e5a3>] reiser4_write_careful+0x3ba/0x3cc [<c049bc3c>] ? do_sync_read+0xab/0xe9 [<c0613dae>] ? selinux_file_permission+0x44/0x48 [<c060fea6>] ? security_file_permission+0xf/0x11 [<c051e1e9>] ? reiser4_write_careful+0x0/0x3cc [<c049c494>] vfs_write+0x84/0xdf [<c049c588>] sys_write+0x3b/0x60 [<c0403178>] sysenter_do_call+0x12/0x2d Solution: Drop current->journal_info before calling balance_dirty_pages_ratelimited(). 2. Update comments in plugin_header.h Signed-off-by: Edward Shishkin <edward.shishkin@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-
Edward Shishkin authored
. Cleanups. Signed-off-by: Edward Shishkin <edward.shishkin@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-
- 05 Sep, 2009 1 commit
-
-
Andrew Morton authored
Cc: Edward Shishkin <edward.shishkin@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-
- 30 Jun, 2009 1 commit
-
-
Andrew Morton authored
Cc: Edward Shishkin <edward.shishkin@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-
- 24 Aug, 2009 1 commit
-
-
Jiri Slaby authored
Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Edward Shishkin <edward.shishkin@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-
- 18 Feb, 2009 1 commit
-
-
Edward Shishkin authored
__set_page_dirty_nobuffers() instead of intenal reiser4_set_page_dirty(). Signed-off-by: Edward Shishkin<edward.shishkin@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-
- 17 Feb, 2009 1 commit
-
-
Edward Shishkin authored
Signed-off-by: Edward Shishkin<edward.shishkin@gmail.com> Acked-by: Jan Kara <jack@suse.cz> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-
- 31 Dec, 2008 1 commit
-
-
Edward Shishkin authored
. Make quilt, checkpatch happy: remove comment with "joke not for everyone". Signed-off-by: Edward Shishkin<edward.shishkin@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-
- 09 Feb, 2009 1 commit
-
-
KOSAKI Motohiro authored
Signed-off-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com> Cc: Nick Piggin <npiggin@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-
- 27 Nov, 2008 2 commits
-
-
Andrew Morton authored
#27: FILE: fs/reiser4/plugin/item/extent_file_ops.c:1063: +^I^I^I page_off + to_page,$ ERROR: code indent should use tabs where possible #28: FILE: fs/reiser4/plugin/item/extent_file_ops.c:1064: +^I^I^I PAGE_CACHE_SIZE);$ total: 2 errors, 0 warnings, 11 lines checked ./patches/reiser4-remove-simple_prepare_write-usage.patch has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. Please run checkpatch prior to sending patches Cc: Edward Shishkin <edward.shishkin@gmail.com> Cc: Laurent Riffard <laurent.riffard@free.fr> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-
Laurent Riffard authored
It's broken because reiser4_write_extent is calling simple_prepare_write() and commit 4e02ed4b scheduled it for unexporting. Signed-off-by: Laurent Riffard <laurent.riffard@free.fr> Acked-by: Edward Shishkin <edward.shishkin@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-
- 31 Dec, 2008 2 commits
-
-
Edward Shishkin authored
copies. Signed-off-by: Edward Shishkin<edward.shishkin@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-
Edward Shishkin authored
. add support of loop devices over cryptcompress files. Signed-off-by: Edward Shishkin <edward.shishkin@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-
- 13 Jul, 2009 1 commit
-
-
Vladimir Saveliev authored
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 reiserfs-list@namesys.com, 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. [michal.k.k.piotrowski@gmail.com: kill #include "linux/config.h"] [akpm@linux-foundation.org: reiser4_drop_page: don't call remove_from_page_cache] [bunk@stusta.de: fs/reiser4/: possible cleanups] Signed-off-by: Vladimir Saveliev <vs@namesys.com> Signed-off-by: Hans Reiser <reiser@namesys.com> Signed-off-by: Edward Shishkin <edward@namesys.com> DESC reiser4: fix for drop-unused-semaphores.patch EDESC 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 <edward@namesys.com> Cc Jonathan Briggs <jbriggs@esoft.com> DESC reiser4-slab-allocators-remove-slab_debug_initial-flag EDESC Cc: Christoph Lameter <cl@linux-foundation.org>.com> DESC reiser4: use simple_prepare_write to zero page data EDESC 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 <nate.diller@gmail.com> Cc: Vladimir Saveliev <vs@namesys.com> Cc: Edward Shishkin <edward@namesys.com> DESC reiser4-fix EDESC DESC reiser4: use zero_user_page EDESC Use zero_user_page() instead of open-coding it. Signed-off-by: Nate Diller <nate.diller@gmail.com> Cc: Vladimir Saveliev <vs@namesys.com> Cc: Edward Shishkin <edward@namesys.com> DESC reiser4: remove typedefs EDESC . Reduce number of typedefs from 289 to 248 . Remove unused file plugin/file/invert.c . Update comments DESC reiser4: fix write_extent EDESC Prepared-by Ignatich <ignatich@gmail.com> 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 <edward@namesys.com> DESC reiser4 make sync_inodes non-void EDESC Make reiser4_sync_inodes non-void Signed-off-by: Edward Shishkin <edward@namesys.com> DESC Reiser4: Drop 'size' argument from bio_endio and bi_end_io EDESC Reiser4: Drop 'size' argument from bio_endio and bi_end_io This patch pushes into Reiser4 the changes introduced by commit 6712ecf8: 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 <laurent.riffard@free.fr> Acked-by: Jens Axboe <jens.axboe@oracle.com> Acked-by: Edward Shishkin <edward@namesys.com> DESC mm: clean up and kernelify shrinker registration EDESC 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 <rusty@rustcorp.com.au> Cc: Vladimir Saveliev <vs@namesys.com> Acked-by: Edward Shishkin <edward@namesys.com> DESC reiser4: fix NULL dereference in __mnt_is_readonly in ftruncate() EDESC Signed-off-by: Dave Hansen <haveblue@us.ibm.com> Cc: Edward Shishkin <edward@namesys.com> Cc: "Vladimir V. Saveliev" <vs@namesys.com> DESC reiser4: fix extent2tail EDESC 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 <edward@namesys.com> DESC reiser4: fix read_tail EDESC Update hint when reading tails Signed-off-by: Edward Shishkin <edward@namesys.com> DESC reiser4: fix unix-file readpages filler EDESC 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 <edward@namesys.com> DESC reiser4: fix readpage_unix_file EDESC . 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 <edward@namesys.com> Cc: Zan Lynx <zlynx@acm.org> Cc: "Vladimir V. Saveliev" <vs@namesys.com> DESC reiser4: fix for new aops patches EDESC Cc: Vladimir Saveliev <vs@namesys.com> Cc: Edward Shishkin <edward@namesys.com> DESC reiser4: do not allocate struct file on stack EDESC Do not allocate struct file on stack, pass the persistent one instead. Signed-off-by: Edward Shishkin <edward@namesys.com> Tested-by: Zan Lynx <zlynx@acm.org> Cc: "Vladimir V. Saveliev" <vs@namesys.com> DESC git-block-vs-reiser4 EDESC Hope this is right. Hope you know what you're doing ;) Cc: Vladimir Saveliev <vs@namesys.com> Cc: Edward Shishkin <edward@namesys.com> Cc: Jens Axboe <jens.axboe@oracle.com> DESC reiser4: cryptcompress misc fixups EDESC . 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 <edward@namesys.com> Cc: "Vladimir V. Saveliev" <vs@namesys.com> DESC reiser4: cryptcompress misc fixups-2 EDESC Check a file plugin id before manipulating with plugin-specific counter. Signed-off-by: Edward Shishkin <edward@namesys.com> Cc: "Vladimir V. Saveliev" <vs@namesys.com> DESC fs/reiser4/plugin/: make 3 functions static EDESC 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 <bunk@kernel.org> Cc: Edward Shishkin <edward@namesys.com> Cc: "Vladimir V. Saveliev" <vs@namesys.com> DESC reiser4: change error code base EDESC Change REISER4_ERROR_CODE_BASE to 10000 to not overlap real errnos Signed-off-by: Edward Shishkin <edward@namesys.com> Cc: "Vladimir V. Saveliev" <vs@namesys.com> DESC reiser4: use lzo library functions EDESC . 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 <edward@namesys.com> Cc: "Vladimir V. Saveliev" <vs@namesys.com> DESC fs/reiser4/plugin/file/cryptcompress.c: kmalloc + memset conversion to kzalloc EDESC 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 <m.kozlowski@tuxland.pl> Cc: Edward Shishkin <edward@namesys.com> Cc: "Vladimir V. Saveliev" <vs@namesys.com> DESC reiser4: kmalloc + memset conversion to kzalloc EDESC Signed-off-by: Mariusz Kozlowski <m.kozlowski@tuxland.pl> Cc: Edward Shishkin <edward@namesys.com> Cc: "Vladimir V. Saveliev" <vs@namesys.com> DESC fs/reiser4/init_super.c: kmalloc + memset conversion to kzalloc EDESC fs/reiser4/init_super.c | 19283 -> 19246 (-37 bytes) fs/reiser4/init_super.o | 155348 -> 155152 (-196 bytes) Signed-off-by: Mariusz Kozlowski <m.kozlowski@tuxland.pl> Cc: Edward Shishkin <edward@namesys.com> Cc: "Vladimir V. Saveliev" <vs@namesys.com> DESC fs/reiser4/plugin/inode_ops_rename.c: kmalloc + memset conversion to kzalloc EDESC 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 <m.kozlowski@tuxland.pl> Cc: Edward Shishkin <edward@namesys.com> Cc: "Vladimir V. Saveliev" <vs@namesys.com> DESC fs/reiser4/ktxnmgrd.c: kmalloc + memset conversion to kzalloc EDESC fs/reiser4/ktxnmgrd.c | 5314 -> 5277 (-37 bytes) fs/reiser4/ktxnmgrd.o | 131624 -> 131496 (-128 bytes) Signed-off-by: Mariusz Kozlowski <m.kozlowski@tuxland.pl> Cc: Edward Shishkin <edward@namesys.com> Cc: "Vladimir V. Saveliev" <vs@namesys.com> DESC Use helpers to obtain task pid in printks EDESC 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 <xemul@openvz.org> DESC Subject: [PATCH 1/2] remove asm/bitops.h includes EDESC 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 <bunk@kernel.org> Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
-
- 25 Sep, 2009 5 commits
-
-
james toy authored
-
Andrew Morton authored
Reported-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-
Hans Reiser authored
add_to_page_cache_lru to be EXPORT_SYMBOL-ed. [bunk@stusta.de: unexport {,__}remove_from_page_cache] Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-
Artem Bityutskiy authored
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 <Artem.Bityutskiy@nokia.com> Cc: Edward Shishkin <edward.shishkin@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-
Edward Shishkin authored
"captured" by some atom. However, outside reiser4 context dirty page can not be captured in some cases, as it is accompanied with specific work (jnode creation, etc). Reiser4 recognizes such "anonymous" pages (i.e. pages that were dirtied outside of reiser4) by the tag PAGECACHE_TAG_DIRTY. Pages dirtied inside reiser4 context are not tagged at all: we don't need this. Indeed, once page is dirtied and captured, it is attached to a jnode (a special header to keep a track of transactions). reiser4_set_page_dirty_internal() was the internal reiser4 function that set dirty bit without tagging the page. Having such internal function led to real problems (incorrect task io accounting, etc. because of not updating this internal "friend"). Solution: The following patch adds a core library function that sets a dirty bit without tagging the page. Signed-off-by: Edward Shishkin<edward.shishkin@gmail.com> Cc: Nick Piggin <nickpiggin@yahoo.com.au> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-
- 04 Jun, 2009 1 commit
-
-
Andrew Morton authored
Cc: David S. Miller <davem@davemloft.net> Cc: Florian Fainelli <florian@openwrt.org> Cc: Julius Volz <juliusv@google.com> Cc: Sergei Shtylyov <sshtylyov@ru.mvista.com> Cc: Simon Horman <horms@verge.net.au> Cc: Takashi Iwai <tiwai@suse.de> Cc: Patrick McHardy <kaber@trash.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-
- 24 Aug, 2009 1 commit
-
-
Florian Fainelli authored
lib/gcd.c, the latter also implementing the a < b case. Signed-off-by: Florian Fainelli <florian@openwrt.org> Cc: Sergei Shtylyov <sshtylyov@ru.mvista.com> Cc: Takashi Iwai <tiwai@suse.de> Acked-by: Simon Horman <horms@verge.net.au> Cc: Julius Volz <juliusv@google.com> Cc: David S. Miller <davem@davemloft.net> Cc: Patrick McHardy <kaber@trash.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-