On Mon, Nov 24, 2008 at 4:56 PM, Jörn Engel <joern@xxxxxxxxx> wrote: > On Sun, 23 November 2008 21:14:47 +0100, Francis Moreau wrote: >> Matthew Wilcox <matthew@xxxxxx> writes: >> > On Sun, Nov 23, 2008 at 01:14:52PM +0100, Francis Moreau wrote: >> > >> >> Are there any cases where a page can be partially uptodate ? >> > >> > Consider a filesystem with 1k blocks and a system with a page size of 4k. >> > You have a buffer_head for each of the four blocks that are being kept >> > in the page, and you want to track their dirty state independently. >> >> Sorry but I'm confused since you're taking about the dirty state >> (tracked by BH_Dirty bit) and I was taking about the uptodate state >> (tracked by BH_Uptodate bit). > > Think page cache, except that the granularity is not pages but 1k > blocks. If your filesystem wants to read an indirect block, 1k is read > into the cache, the other 3k (or 63k) of the page remain as they were. > So if I understand you correctly, we can update a page cache partially only when the filesystems needs to read its metadata. But not when reading a page of data. That's pretty what Matthew answered I think but I'm confused about the dirty bit of the buffer header he mentioned. Thanks -- Francis -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html