Messages in this thread | | | Date | Wed, 13 Dec 2006 08:49:10 -0500 | From | Peter Staubach <> | Subject | Re: Status of buffered write path (deadlock fixes) |
| |
Trond Myklebust wrote: > On Wed, 2006-12-13 at 12:56 +1100, Nick Piggin wrote: > >> Note that these pages should be *really* rare. Definitely even for normal >> filesystems I think RMW would use too much bandwidth if it were required >> for any significant number of writes. >> > > If file "foo" exists on the server, and contains data, then something > like > > fd = open("foo", O_WRONLY); > write(fd, "1", 1); > > should never need to trigger a read. That's a fairly common workload > when you think about it (happens all the time in apps that do random > write).
I have to admit that I've only been paying attention with one eye, but why doesn't this require a read? If "foo" is non-zero in size, then how does the client determine how much data in the buffer to write to the server?
Isn't RMW required for any i/o which is either not buffer aligned or a multiple of the buffer size?
Thanx...
ps - 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/
| |