Messages in this thread |  | | Date | Thu, 26 Apr 2001 22:11:09 +0200 | From | Andrea Arcangeli <> | Subject | Re: [PATCH] SMP race in ext2 - metadata corruption. |
| |
On Thu, Apr 26, 2001 at 03:55:19PM -0400, Alexander Viro wrote: > > > On Thu, 26 Apr 2001, Andrea Arcangeli wrote: > > > On Thu, Apr 26, 2001 at 03:34:00PM -0400, Alexander Viro wrote: > > > Same scenario, but with read-in-progress started before we do getblk(). BTW, > > > > how can the read in progress see a branch that we didn't spliced yet? We > > fd = open("/dev/hda1", O_RDONLY); > read(fd, buf, sizeof(buf));
You misunderstood the context of what I said, I perfectly know the race you are talking about, I was answering Linus's question "the wait_on_buffer isn't even necessary to protect ext2 against ext2". You are talking about the other race that is "ext2" against "block_dev", and I obviously agree on that one since the first place as I immediatly answered you "correct".
What I'm saying above is that even without the wait_on_buffer ext2 can screwup itself because the splice happens after the buffer are just all uptodate so any "reader" (I mean any reader through ext2 not through block_dev) will never try to do a bread on that blocks before they're just zeroed and uptodate.
Andrea - 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/
|  |