lkml.org 
[lkml]   [2008]   [Jul]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: latest -git: BUG at fs/jfs/namei.c:512 assert(ip->i_nlink)
    On Fri, Jul 18, 2008 at 7:15 PM, Dave Kleikamp
    <shaggy@linux.vnet.ibm.com> wrote:
    > On Fri, 2008-07-18 at 10:10 +0200, Vegard Nossum wrote:
    >
    >> But whether it truly helped or not, I don't know. I got something different now:
    >>
    >> jfs_unlink: dtDelete returned -116
    >> jfs_unlink: dtDelete returned -116
    >> ------------[ cut here ]------------
    >> kernel BUG at fs/inode.c:262!
    >
    > BUG_ON(inode->i_data.nrpages);
    >
    >> invalid opcode: 0000 [#1] PREEMPT SMP DEBUG_PAGEALLOC
    >> Pid: 387, comm: jfsCommit Not tainted (2.6.26-03415-gdf3030b #45)
    >> EIP: 0060:[<c01b96f9>] EFLAGS: 00010206 CPU: 0
    >> EIP is at clear_inode+0x149/0x160
    >> EAX: 00000005 EBX: f56e283c ECX: f7242fd0 EDX: 00000000
    >> ESI: f56e2568 EDI: 00000000 EBP: f79f9f0c ESP: f79f9f04
    >> DS: 007b ES: 007b FS: 00d8 GS: 0000 SS: 0068
    >> Process jfsCommit (pid: 387, ti=f79f8000 task=f7242fd0 task.ti=f79f8000)
    >> Stack: 00000001 f56e283c f79f9f24 c02de258 c08f7ba0 f79f9f24 c02de220 f56e283c
    >> f79f9f34 c01b9ba1 f56e283c 00000000 f79f9f44 c01b9d67 f56e283c 00000000
    >> f79f9f50 c01b8be7 f56e283c f79f9f9c c02fd5b5 f88261bc f79f9f70 c0159173
    >
    >>
    >> ...but it might just be a different error altogether.
    >
    > I think it is. Your test corrupt more than just di_nlink, right? There
    > is a test in jfs_delete_inode() for JFS_IP(inode)->fileset ==
    > FILESYSTEM_I. If the test fails, we don't call truncate_inode_pages().
    > Nowhere do we validate that fileset = FILESYSTEM_I when we read the
    > inode from disk.
    >
    > I'm pondering whether it would be okay to remove the silly test in
    > jfs_delete_inode(), or whether I need to validate the field when we read
    > in the inode.
    >
    > Hmm. The fileset is written to the journal, so it really should be
    > validated.
    >
    > Here's another patch
    >
    > JFS: validate di_fileset when reading inode from disk.

    Thanks. On top of the previous one, I presume?


    Vegard

    --
    "The animistic metaphor of the bug that maliciously sneaked in while
    the programmer was not looking is intellectually dishonest as it
    disguises that the error is the programmer's own creation."
    -- E. W. Dijkstra, EWD1036


    \
     
     \ /
      Last update: 2008-07-18 19:21    [W:0.024 / U:60.088 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site