* freeing pagecache
@ 2002-09-29 12:00 David Chow
2002-09-29 13:38 ` Matthew Wilcox
0 siblings, 1 reply; 3+ messages in thread
From: David Chow @ 2002-09-29 12:00 UTC (permalink / raw)
To: linux-fsdevel
Hi all,
This is probabaly a question for the VFS or VM. If I some pages are
associated with an inode (pagec->mapping->host == the_inode) . When
running out of memory, how does the vm freeing up the pagecache? OK, if
I am running out of memory, is there any chance for the vm freeing up
the pages and leaving the inode and dentry in the dcache or it is
trigerred by the shring_dcache and result in freeing up all the pages.
In case if the pages are locked, how does the VM handle this case?
Anyway, it is probably a question of the path of freeing up page
cache... The reason I am asking the question is that if I am safe to
make use of an unlocked mapped pagecahed page. Thanks for comments and
answers.
David
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: freeing pagecache
2002-09-29 12:00 freeing pagecache David Chow
@ 2002-09-29 13:38 ` Matthew Wilcox
2002-09-29 15:12 ` David Chow
0 siblings, 1 reply; 3+ messages in thread
From: Matthew Wilcox @ 2002-09-29 13:38 UTC (permalink / raw)
To: David Chow; +Cc: linux-fsdevel
On Sun, Sep 29, 2002 at 08:00:36PM +0800, David Chow wrote:
> cache... The reason I am asking the question is that if I am safe to
> make use of an unlocked mapped pagecahed page. Thanks for comments and
> answers.
You don't need to lock it, just bump its page count. include/linux/mm.h:
* Also, many kernel routines increase the page count before a critical
* routine so they can be sure the page doesn't go away from under them.
*/
#define get_page(p) atomic_inc(&(p)->count)
#define put_page(p) __free_page(p)
--
Revolutions do not require corporate support.
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: freeing pagecache
2002-09-29 13:38 ` Matthew Wilcox
@ 2002-09-29 15:12 ` David Chow
0 siblings, 0 replies; 3+ messages in thread
From: David Chow @ 2002-09-29 15:12 UTC (permalink / raw)
To: Matthew Wilcox; +Cc: linux-fsdevel
Matthew Wilcox wrote:
>On Sun, Sep 29, 2002 at 08:00:36PM +0800, David Chow wrote:
>
>
>>cache... The reason I am asking the question is that if I am safe to
>>make use of an unlocked mapped pagecahed page. Thanks for comments and
>>answers.
>>
>>
>
>You don't need to lock it, just bump its page count. include/linux/mm.h:
>
> * Also, many kernel routines increase the page count before a critical
> * routine so they can be sure the page doesn't go away from under them.
> */
>#define get_page(p) atomic_inc(&(p)->count)
>#define put_page(p) __free_page(p)
>
>
>
I've read about the struct page, I thought it is some kind of lru
algorithm used by kswapd, that measn pagecache is just like dcache which
has usage counts. There are a couple listhead, is there any listhead
that are not used for a pagecached page? If there are something that I
can make use, I can simply use the listhead for my list... but I am not
sure are there any potential hazards. Thanks for helps, comments are
welcome.
David
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2002-09-29 15:12 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-09-29 12:00 freeing pagecache David Chow
2002-09-29 13:38 ` Matthew Wilcox
2002-09-29 15:12 ` David Chow
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).