lkml.org 
[lkml]   [2005]   [Apr]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: OOM problems on 2.6.12-rc1 with many fsx tests
    From
    Date
    Hi,

    On Mon, 2005-04-04 at 02:35, Andrew Morton wrote:

    > Without the below patch it's possible to make ext3 leak at around a
    > megabyte per minute by arranging for the fs to run a commit every 50
    > milliseconds, btw.

    Ouch!
    > (Stephen, please review...)

    Doing so now.

    > The patch teaches journal_unmap_buffer() about buffers which are on the
    > committing transaction's t_locked_list. These buffers have been written and
    > I/O has completed.

    Agreed. The key here is that the buffer is locked before
    journal_unmap_buffer() is called, so we can indeed rely on it being
    safely on disk.

    > We can take them off the transaction and undirty them
    > within the context of journal_invalidatepage()->journal_unmap_buffer().

    Right - the committing transaction can't be doing any more writes, and
    the current transaction has explicitly told us to throw away its own
    writes if we get here. Unfiling the buffer should be safe.

    > + if (jh->b_jlist == BJ_Locked) {
    > + /*
    > + * The buffer is on the committing transaction's locked
    > + * list. We have the buffer locked, so I/O has
    > + * completed. So we can nail the buffer now.
    > + */
    > + may_free = __dispose_buffer(jh, transaction);
    > + goto zap_buffer;
    > + }

    ACK.

    --Stephen

    -
    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: 2005-04-06 13:31    [W:0.022 / U:1.212 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site