* Code that does page outs @ 2003-10-06 6:32 Eugene Teo 2003-10-06 7:02 ` Paul Jackson 0 siblings, 1 reply; 3+ messages in thread From: Eugene Teo @ 2003-10-06 6:32 UTC (permalink / raw) To: linux-mm I am looking for possible areas in the kernel code where page outs occurs. I have looked at shrink_cache(), and swap_out_pmd() which calls try_to_swap_out(). Are there other areas that i missed out? I am looking at the areas where page outs will occur so that I can keep track of 1) number of page outs occurred at an arbitrary time. 2) what causes the page outs. Anticipating a reply... Eugene -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"aart@kvack.org"> aart@kvack.org </a> ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Code that does page outs 2003-10-06 6:32 Code that does page outs Eugene Teo @ 2003-10-06 7:02 ` Paul Jackson 2003-10-06 8:35 ` Eugene Teo 0 siblings, 1 reply; 3+ messages in thread From: Paul Jackson @ 2003-10-06 7:02 UTC (permalink / raw) To: Eugene Teo; +Cc: eugene.teo, linux-mm > I am looking for possible areas in the kernel code where ... May I recommend to you the site: Cross-Referencing Linux http://lxr.linux.no For example, start with an "identifier search" on one of the symbols you identified, try_to_swap_out: http://lxr.linux.no/ident?i=try_to_swap_out This page will show where it is defined, and what calls it. Examine the code that defines try_to_swap_out(). Observe the critical between lines 133 and 148 of this file, vmscan.c. This is where it gets a free swap entry, get_swap_page(), and assigns the current page to that entry, add_to_swap_cache(). I would expect that any other piece of code that wants to swap is going to use those same routines, get_swap_page(), and add_to_swap_cache(). Though examining these two routines in detail and what they call in turn would help to verify that expectation. Then continue using lxr.linux.no to see what else, if anything, calls this pair of routines: get_swap_page(), and add_to_swap_cache(). This will lead you to any other paths, if any, to swapping a page. -- I won't rest till it's the best ... Programmer, Linux Scalability Paul Jackson <pj@sgi.com> 1.650.933.1373 -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"aart@kvack.org"> aart@kvack.org </a> ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Code that does page outs 2003-10-06 7:02 ` Paul Jackson @ 2003-10-06 8:35 ` Eugene Teo 0 siblings, 0 replies; 3+ messages in thread From: Eugene Teo @ 2003-10-06 8:35 UTC (permalink / raw) To: linux-mm Thanks Paul. Actually, I have identified, and read the code starting from try_to_swap_out, then swap_out_pmd, then swap_out_pgd, then swap_out_vma, then swap_out_mm, then swap_out, which returns the number of pages swapped out. I have also read shrink_cache and also took note of the number of pages swapped out. I am just wondering if I have missed out any portion of the mm that can lead to page being swap out. Anyhow, thank you for your tip for I have been using this website too, along with my other materials. <quote sender="Paul Jackson"> > > I am looking for possible areas in the kernel code where ... > > May I recommend to you the site: > > Cross-Referencing Linux > http://lxr.linux.no > > For example, start with an "identifier search" on one of the symbols you > identified, try_to_swap_out: > > http://lxr.linux.no/ident?i=try_to_swap_out > > This page will show where it is defined, and what calls it. Examine the > code that defines try_to_swap_out(). Observe the critical between lines > 133 and 148 of this file, vmscan.c. This is where it gets a free swap > entry, get_swap_page(), and assigns the current page to that entry, > add_to_swap_cache(). > > I would expect that any other piece of code that wants to swap is going > to use those same routines, get_swap_page(), and add_to_swap_cache(). > Though examining these two routines in detail and what they call in turn > would help to verify that expectation. > > Then continue using lxr.linux.no to see what else, if anything, calls > this pair of routines: get_swap_page(), and add_to_swap_cache(). > > This will lead you to any other paths, if any, to swapping a page. > > -- > I won't rest till it's the best ... > Programmer, Linux Scalability > Paul Jackson <pj@sgi.com> 1.650.933.1373 > -- > To unsubscribe, send a message with 'unsubscribe linux-mm' in > the body to majordomo@kvack.org. For more info on Linux MM, > see: http://www.linux-mm.org/ . > Don't email: <a href=mailto:"aart@kvack.org"> aart@kvack.org </a> > -- Eugene TEO <eugeneteo@despammed.com> <http://www.anomalistic.org/> 1024D/14A0DDE5 print D851 4574 E357 469C D308 A01E 7321 A38A 14A0 DDE5 main(i) { putchar(182623909 >> (i-1) * 5&31|!!(i<7)<<6) && main(++i); } -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"aart@kvack.org"> aart@kvack.org </a> ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2003-10-06 8:35 UTC | newest] Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2003-10-06 6:32 Code that does page outs Eugene Teo 2003-10-06 7:02 ` Paul Jackson 2003-10-06 8:35 ` Eugene Teo
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox