[lc-checkins] CVS: linux/mm filemap.c,1.33,1.34 memory.c,1.33,1.34 page_alloc.c,1.22,1.23 swap_state
Status: Beta
Brought to you by:
nitin_sf
|
From: Rodrigo S. de C. <rc...@us...> - 2002-07-16 18:41:58
|
Update of /cvsroot/linuxcompressed/linux/mm
In directory usw-pr-cvs1:/tmp/cvs-serv28423/mm
Modified Files:
filemap.c memory.c page_alloc.c swap_state.c swapfile.c
vmscan.c
Log Message:
Cleanups
o remove support for pages with buffers
o virtual swap code (mainly when freeing an entry or allocating a page to
service a page fault)
Other
o Added help for CONFIG_COMP_DOUBLE_PAGE into Configure.help
Index: filemap.c
===================================================================
RCS file: /cvsroot/linuxcompressed/linux/mm/filemap.c,v
retrieving revision 1.33
retrieving revision 1.34
diff -C2 -r1.33 -r1.34
*** filemap.c 15 Jul 2002 20:52:23 -0000 1.33
--- filemap.c 16 Jul 2002 18:41:55 -0000 1.34
***************
*** 163,173 ****
mark_inode_dirty_pages(mapping->host);
#ifdef CONFIG_COMP_CACHE
! if (PageTestandClearCompCache(page)) {
! if (PageMappedCompCache(page)) {
! steal_page_from_comp_cache(page, NULL);
! return;
! }
invalidate_comp_cache(mapping, page->index);
- }
#endif
}
--- 163,168 ----
mark_inode_dirty_pages(mapping->host);
#ifdef CONFIG_COMP_CACHE
! if (PageTestandClearCompCache(page))
invalidate_comp_cache(mapping, page->index);
#endif
}
***************
*** 253,264 ****
/*
- * Let's steal the page from comp cache to be safely removed
- * from page cache below. Actually, this page will also be
- * used by compressed cache, that's why it's passed as second
- * parameter to the function
- */
- steal_page_from_comp_cache(page, page);
-
- /*
* We remove the page from the page cache _after_ we have
* destroyed all buffer-cache references to it. Otherwise some
--- 248,251 ----
***************
*** 1009,1013 ****
if (page) {
page_cache_get(page);
- steal_page_from_comp_cache(page, NULL);
if (TryLockPage(page)) {
spin_unlock(&pagecache_lock);
--- 996,999 ----
***************
*** 1099,1106 ****
lru_cache_add(page);
#ifdef CONFIG_COMP_PAGE_CACHE
! if (!read_comp_cache(mapping, index, page) && TryLockPage(page)) {
! ClearPageUptodate(page);
BUG();
- }
#endif
}
--- 1085,1090 ----
lru_cache_add(page);
#ifdef CONFIG_COMP_PAGE_CACHE
! if (!read_comp_cache(mapping, index, page) && TryLockPage(page))
BUG();
#endif
}
***************
*** 1513,1518 ****
found_page:
page_cache_get(page);
- steal_page_from_comp_cache(page, NULL);
-
spin_unlock(&pagecache_lock);
--- 1497,1500 ----
***************
*** 2064,2068 ****
if (!page)
goto no_cached_page;
- steal_page_from_comp_cache(page, NULL);
/*
--- 2046,2049 ----
***************
*** 2945,2952 ****
page_cache_release(cached_page);
#ifdef CONFIG_COMP_PAGE_CACHE
! if (page) {
! steal_page_from_comp_cache(page, NULL);
flush_comp_cache(page);
- }
#endif
return page;
--- 2926,2931 ----
page_cache_release(cached_page);
#ifdef CONFIG_COMP_PAGE_CACHE
! if (page)
flush_comp_cache(page);
#endif
return page;
Index: memory.c
===================================================================
RCS file: /cvsroot/linuxcompressed/linux/mm/memory.c,v
retrieving revision 1.33
retrieving revision 1.34
diff -C2 -r1.33 -r1.34
*** memory.c 5 Jul 2002 15:21:49 -0000 1.33
--- memory.c 16 Jul 2002 18:41:55 -0000 1.34
***************
*** 1139,1143 ****
--- 1139,1145 ----
ret = 2;
}
+ get_vswap(entry);
page = read_swap_cache_async(entry);
+ put_vswap(entry);
if (!page) {
/*
Index: page_alloc.c
===================================================================
RCS file: /cvsroot/linuxcompressed/linux/mm/page_alloc.c,v
retrieving revision 1.22
retrieving revision 1.23
diff -C2 -r1.22 -r1.23
*** page_alloc.c 15 Jul 2002 20:52:23 -0000 1.22
--- page_alloc.c 16 Jul 2002 18:41:55 -0000 1.23
***************
*** 92,97 ****
if (PageSwapCache(page))
BUG();
- if (PageMappedCompCache(page))
- BUG();
if (PageLocked(page))
BUG();
--- 92,95 ----
Index: swap_state.c
===================================================================
RCS file: /cvsroot/linuxcompressed/linux/mm/swap_state.c,v
retrieving revision 1.36
retrieving revision 1.37
diff -C2 -r1.36 -r1.37
*** swap_state.c 15 Jul 2002 20:52:23 -0000 1.36
--- swap_state.c 16 Jul 2002 18:41:55 -0000 1.37
***************
*** 179,186 ****
*/
INC_CACHE_INFO(find_total);
! if (found) {
INC_CACHE_INFO(find_success);
- steal_page_from_comp_cache(found, NULL);
- }
return found;
}
--- 179,184 ----
*/
INC_CACHE_INFO(find_total);
! if (found)
INC_CACHE_INFO(find_success);
return found;
}
***************
*** 205,212 ****
*/
found_page = find_get_page(&swapper_space, entry.val);
! if (found_page) {
! steal_page_from_comp_cache(found_page, new_page);
break;
- }
/*
--- 203,208 ----
*/
found_page = find_get_page(&swapper_space, entry.val);
! if (found_page)
break;
/*
***************
*** 214,220 ****
*/
if (!new_page) {
- set_vswap_allocating(entry);
new_page = alloc_page(GFP_HIGHUSER);
- clear_vswap_allocating(entry);
if (!new_page)
break; /* Out of memory */
--- 210,214 ----
***************
*** 223,230 ****
if (readahead) {
found_page = find_get_page(&swapper_space, entry.val);
! if (found_page) {
! steal_page_from_comp_cache(found_page, new_page);
break;
- }
if (in_comp_cache(&swapper_space, entry.val))
return new_page;
--- 217,222 ----
if (readahead) {
found_page = find_get_page(&swapper_space, entry.val);
! if (found_page)
break;
if (in_comp_cache(&swapper_space, entry.val))
return new_page;
Index: swapfile.c
===================================================================
RCS file: /cvsroot/linuxcompressed/linux/mm/swapfile.c,v
retrieving revision 1.30
retrieving revision 1.31
diff -C2 -r1.30 -r1.31
*** swapfile.c 11 Jun 2002 13:20:49 -0000 1.30
--- swapfile.c 16 Jul 2002 18:41:55 -0000 1.31
***************
*** 384,388 ****
/* Only cache user (+us), or swap space full? Free it! */
if (page_count(page) - !!page->buffers == 2 || vm_swap_full()) {
- steal_page_from_comp_cache(page, NULL);
delete_from_swap_cache(page);
SetPageDirty(page);
--- 384,387 ----
Index: vmscan.c
===================================================================
RCS file: /cvsroot/linuxcompressed/linux/mm/vmscan.c,v
retrieving revision 1.40
retrieving revision 1.41
diff -C2 -r1.40 -r1.41
*** vmscan.c 11 Jul 2002 19:08:11 -0000 1.40
--- vmscan.c 16 Jul 2002 18:41:55 -0000 1.41
***************
*** 443,447 ****
page_cache_get(page);
! if (comp_cache_try_to_release_page(&page, gfp_mask, priority)) {
if (!page->mapping) {
/*
--- 443,447 ----
page_cache_get(page);
! if (try_to_release_page(page, gfp_mask)) {
if (!page->mapping) {
/*
***************
*** 486,490 ****
* this is the non-racy check for busy page.
*/
! if (!page->mapping || !is_page_cache_freeable(page) || PageMappedCompCache(page)) {
spin_unlock(&pagecache_lock);
UnlockPage(page);
--- 486,490 ----
* this is the non-racy check for busy page.
*/
! if (!page->mapping || !is_page_cache_freeable(page)) {
spin_unlock(&pagecache_lock);
UnlockPage(page);
|