Hi Chandra, > > > On Thu, May 19, 2005 at 10:43:25AM +0900, Hirokazu Takahashi wrote: > > > > Hello, > > > > > > > > It just looks like that once kswapd moves pages between the active lists > > > > and the inactive lists, the pages happen to belong to the class > > > > to which kswapd belong. > > > > > > In refill_inactive_zone()(where pages are moved from active to inactive > > > list), ckrm_zone(where the page came from) is where the inactive pages > > > are > > > moved to. > > > > Ah, I understood. > > You have changed these functions not to call add_page_to_active_list() or > > add_page_to_inactive_list() anymore. > > > > Still, there may remain problems that mark_page_accessed() calls > > add_page_to_active_list() to move pages between classes. > > I guess this isn't good manner since some functions which call > > mark_page_accessed(), like unmap_mapping_range_vma() or get_user_pages(), > > may refer pages of the other classes. > > You mean these functions are not called in the context of the task that > is in the stack ?
No, in some cases though it doesn't seem to be serious. You may take a look at unmap_mapping_range_tree() as an example. It traverses mapping->i_mmap to find all related vma's to be unmapped. And get_user_pages() has the parameter that indicates which process space should be accessed. Thanks, Hirokazu Takahashi. ------------------------------------------------------- This SF.Net email is sponsored by Oracle Space Sweepstakes Want to be the first software developer in space? Enter now for the Oracle Space Sweepstakes! http://ads.osdn.com/?ad_id=7412&alloc_id=16344&op=click _______________________________________________ ckrm-tech mailing list https://lists.sourceforge.net/lists/listinfo/ckrm-tech
