lkml.org 
[lkml]   [2006]   [May]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH] Change ll_rw_block() calls in JBD
    Jan Kara wrote:

    >>>+ if (!buffer_jbd(bh) || jh->b_jlist != BJ_SyncData) {
    >>
    >>Who (else) can take away the journal head, remove our "jh" from the
    >>synch. data list?
    >
    > For two of the above comments: Under memory pressure data buffers can
    > be written out earlier and then released by __journal_try_to_free_buffer()
    > as they are not dirty any more. The above checks protect us against this.

    Assume "bh" has been set free in the mean time.
    Assume it is now used for another transaction (maybe for another file system).

    The first part of the test should verify not only if "bh" is used for _any_
    journal head but if it is exactly for our current one:

    if (buffer_jbd(bh) != jh || ...

    Thanks,

    Zoltan


    -
    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-05-19 14:38    [W:2.635 / U:0.036 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site