Messages in this thread |  | | Date | Tue, 5 Sep 2000 18:25:04 -0700 (PDT) | From | Linus Torvalds <> | Subject | Re: Still ext2-corruption in test8-pre5 (incl. OOPS) |
| |
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.
Linus
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/
|  |