[lkml]   [2006]   [May]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Subjectre: [PATCH] Change ll_rw_block() calls in JBD
> We must be sure that the current data in buffer are sent to disk.
> Hence we have to call ll_rw_block() with SWRITE.

Let's consider the following case:

while (commit_transaction->t_sync_datalist) {

// Assume a "bh" got locked before starting this loop

if (buffer_locked(bh)) {
__journal_file_buffer(jh, commit_transaction, BJ_Locked);
} else ...
while (commit_transaction->t_locked_list) {

// Assume our "bh" is not locked any more
// Nothing has happened to this "bh", someone just wanted
// to look at it in a safe way

if (buffer_jbd(bh) && jh->b_jlist == BJ_Locked) {
} else ...

I.e. having an already locked "bh", it is missed out from the log.


Zoltan Menyhart

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

 \ /
  Last update: 2006-05-18 10:28    [W:0.110 / U:0.292 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site