On Tue, 5 Sep 2000, Alexander Viro wrote:
> WTF? <thinks> Erm... Linus, I suspect that we are losing the thing on the
> very simple effect: readpage() gets buffer_heads, all right, but then
> we lose the lock. That's your window for losing the buffer_head ring of
> that page.
Note that it's not even a small window: we get an up-to-date page, but
readpage() can have happened hours, days, years before. The buffer-head
ring _has_ been there at some earlier time, but there's nothing that
guarantees that it still is there.
Fixing this is not hard, happily. I'll do it. The only issue is whether to
just copy one of the existing functions and make changes, or try to share
code and have helper functions. The loop over the page doing the
get_block() is certainly something that all of the functions for
reading/writing need to do, and I suspect that I really should split
things up a bit and share more code than we do now.
If you WANT to do it, holler. I'm not glutton for punishment, but it
doesn't look that bad.
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to firstname.lastname@example.org
Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Thu Sep 07 2000 - 21:00:24 EST