On Sat, 16 Dec 2000, Chris Mason wrote:
> 
> In other words, after calling reiserfs_get_block, the buffer might be
> mapped and uptodate, with no i/o required in block_read_full_page
> 
> The following patch to block_read_full_page fixes things for me, and seems
> like a good idea in general.  It might be better to apply something
> similar to submit_bh instead...comments?

Making the change to submit_bh() would make it look more like the old
ll_rw_block() in this regard, but at the same time I really don't like the
old ll_rw_block() interface that knew about semantics..

Your patch looks fine, although I'd personally prefer this one even more:

        fs/buffer.c patch cut-and-paste:
        +++ fs/buffer.c Sat Dec 16 11:02:44 2000
        @@ -1700,6 +1693,9 @@
                                        set_bit(BH_Uptodate, &bh->b_state);
                                        continue;
                                }
        +                       /* get_block() might have updated the buffer 
synchronously */
        +                       if (buffer_uptodate(bh))
        +                               continue;
                        }
         
                        arr[nr] = bh;

which makes it explicit about how we could have suddenly gotten an
up-to-date buffer. Does that work for you?

                Linus

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
Please read the FAQ at http://www.tux.org/lkml/

Reply via email to