Re: page cache question

From: Nick Piggin
Date: Mon Feb 27 2006 - 04:01:04 EST


Xin Zhao wrote:
Sorry if this question is dumb.

Linux uses address_space to identify pages in the page cache. An
address space is often associated with a memory object such as inode.
That seems to associate the cached page with that inode. My question
is: if a file is closed and the inode is destroyed, will the cached
page be removed from page cache immediately? If so, does that mean

Yes. The inode's struct address_space contains the radix tree which
indexes the pagecache pages.

the file system has to load data from disk again if a user promptly
open and read the same file again? If not, how does linux determine
when to evict a cached page? using LRU?


Yes they would have to be read again. However in general the inode is
not destroyed after the file is closed -- inodes are cached too.

--
SUSE Labs, Novell Inc.
Send instant messages to your online friends http://au.messenger.yahoo.com -
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/