• Edward Shishkin's avatar
    1. Fix up the problem: · 1f67a998
    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: default avatarEdward Shishkin <edward.shishkin@gmail.com>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    1f67a998
file.c 69.7 KB