lkml.org 
[lkml]   [2006]   [Sep]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [RFC][PATCH] set_page_buffer_dirty should skip unmapped buffers
      Hi,

    > On Fri, 2006-09-01 at 10:18 -0700, Andrew Morton wrote:
    > > > > > Kernel BUG at fs/buffer.c:2791
    > > > > > invalid opcode: 0000 [1] SMP
    > > > > >
    > > > > > Its complaining about BUG_ON(!buffer_mapped(bh)).
    >
    > Here is the change that seems to cause the problem. Jana Kara
    > introduced a new mode "SWRITE" for ll_rw_block() - where it
    > waits for buffer to be unlocked (WRITE will skip locked
    > buffers) + jbd journal_commit_transaction() has been changed
    > to make use of SWRITE.
    >
    > http://marc.theaimsgroup.com/?l=linux-fsdevel&m=112109788702895&w=2
    >
    > Theoritically same race (between journal_commit_transaction() and
    > journal_unmap_buffer()+set_page_dirty()) could exist before his changes
    > - which should trigger bug in submit_bh(). But I can't seem to hit
    > it without his changes. My guess is ll_rw_block() is always skipping
    > those cleaned up buffers, before page gets dirtied again ..
    I think that the change to ll_rw_block() just widens the window much
    more...

    > Andrew, what should we do ? Do you suggest handling this in jbd
    > itself (like this patch) ?
    Actually that part of commit code needs rewrite anyway (and after that
    rewrite you get rid of ll_rw_block()) because of other problems - the
    code assumes that whenever buffer is locked, it is being written to disk
    which is not true... I have some preliminary patches for that but they
    are not very nice and so far I didn't have enough time to find a nice
    solution.

    Honza

    --
    Jan Kara <jack@suse.cz>
    SuSE CR Labs
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2006-09-06 14:49    [W:0.020 / U:88.844 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site